Я использую канал django в моем текущем проекте. Из одного из своих приложений django я отправляю уведомление на уровень канала, чтобы веб-сокет мог транслировать сообщение. Но проблема в том, что потребитель не получает мое сообщение.
Использует приложение django для отправки уведомления на канал:
from asgiref.sync import AsyncToSync
from channels.layers import get_channel_layer
import json
def async_send(group_name, text):
channel_layer = get_channel_layer()
AsyncToSync(channel_layer.group_send)(
group_name,
{
'type': 'notify',
'text': json.dumps(text)
}
)
Мой потребительский файл:
from channels.generic.websocket import AsyncWebsocketConsumer
class InformationConsumer(AsyncWebsocketConsumer):
async def connect(self):
self.channel_layer.group_add(str(self.scope['user']), self.channel_name)
await self.accept()
async def notify(self, event):
await self.send(
{
"message": event['text'],
},
)
print(event['text'])
Я должен получить вывод события ['text'], но ничего не получает: (