Я использую сервер django вместе с сервером orbited / stomp, чтобы написать что-то вроде чата. Предположим, что некоторые пользователи подключены к орбите. Когда один из них отключается от орбиты, как я могу уведомить остальных? Я имею в виду, что я попробовал следующий код (javascript на стороне клиента - может быть, это уже неправильно, сервер должен сделать push, верно?):
function end()
{
stomp.send('user killed', '/channel');
}
вместе с
stomp.onclose = end;
но это не работает вообще. Тогда я использовал
window.onbeforeunload = end;
но опять же без видимого эффекта. Я также заменил end()
другой функцией, которая просто делает запись ajax на сервер django. Но затем stomp.onclose
снова ничего не делает и window.onbeforeunload
дает мне сломанную трубу.
Таким образом, это были попытки реализовать идею «клиент оставляет сообщение перед тем, как выйти». Но это не удалось.
Я даже не уверен, правильно ли я это делаю. Есть ли способ уведомить орбитальных / топающих пользователей об уходе пользователя? Все идеи будут оценены.
РЕДАКТИРОВАТЬ: Может быть, есть другой путь. Я читал, что возможно настроить орбитальный сервер для выполнения обратного вызова http в приложение с ключом пользователя, когда чье-то соединение закрывается. К сожалению, не было никакого объяснения, как это сделать. Кто-нибудь знает ответ?