You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 lines
955 B
JavaScript

// WebSocket connection for new statuses
const ws_theme = window.location.protocol === "https:" ? "wss" : "ws";
const newStatusesSocketUrl = `${ws_theme}://${window.location.host}/ws/new-statuses/`;
const newStatusesSocket = new WebSocket(newStatusesSocketUrl);
newStatusesSocket.onopen = () => {
console.log('WebSocket connection to new statuses established');
};
newStatusesSocket.onmessage = function(e) {
const data = JSON.parse(e.data);
if (data.event_type === 'new_status') {
const activityDiv = document.getElementById('activitiesContainer');
console.log(activityDiv);
activityDiv.insertAdjacentHTML('afterbegin', data.html);
}
};
newStatusesSocket.onclose = () => {
console.log('WebSocket connection to new statuses closed');
};
newStatusesSocket.onerror = (error) => {
console.log('WebSocket error:', error);
};