Как отправить сообщение, используя каналы, клиенту веб-сокета, когда событие происходит на стороне сервера? - PullRequest
0 голосов
/ 08 мая 2019

Я создаю RTS-приложение, используя каналы django, celery и (пытаюсь). Сельдерей постоянно слушает последовательный порт, и когда он получает что-то важное , он должен иметь возможность автоматически отправлять сообщение клиенту, после чего реакция вступит во владение. Проблема в том, что я новичок во всем этом. Я пытался передать какую-то случайную информацию клиенту и распечатать ее на консоли, но ничего не получилось.

То, что я сделал, поставило периодическую задачу в сельдерее, которая использовала бы класс потребителя для отправки некоторых данных. Для меня понятно, почему это не сработало: я понятия не имею, как это сделать. Все руководства, которые я нашел, показывают, как создать приложение чата ... Я не знаю, но это довольно ограниченное представление об этом.

Также может быть полезно: еще не включены слои каналов.

Пожалуйста, обратите внимание, что он все еще очень прототипный. Задача заключается в следующем. Я знаю, что это неправильно. Проигнорируйте импорт, у них есть значение только еще.

# Create your tasks here
from __future__ import absolute_import, unicode_literals
from .serialconnection import SerialConnection
from celery import shared_task
from .consumers import AlertConsumer

from .models import Alert, Module


@shared_task
def test_websocket():
    AlertConsumer.send_json(content={"text": 'teste'})

Я хочу иметь возможность отправлять сообщение клиенту и регистрировать его на консоли. Прямо сейчас я даже не могу отослать посылку. Есть ли особый или особый способ реализации этого?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...