Как мы можем использовать функцию consumer sent в функции менеджера модели django?
Я пытаюсь отправить сообщение каждый раз, когда создается новая задача. Проблема в том, что в терминале и в любом другом месте не появляется ошибка, но сообщение, которое должно быть отправлено, не отправляется. Функция менеджера модели не может достичь функции потребителя sent
...
class TaskManager(models.Manager):
async def send_now(self,data):
........
room_name = await create_roomname_threadID(mydata["project_key"],username)
print("room_name :",room_name)
channel_layer = get_channel_layer()
async_to_sync(channel_layer.group_send)(
room_name, {
'type': 'sent',
'object': object
})
asgi
from notifications.sockets import routing
"websocket": AuthMiddlewareStack(
URLRouter(
routing.websocket_urlpatterns,
)
),
маршруты
websocket_urlpatterns = [
path('ws/project/<str:project_key>/<str:username>/', consumers.ProjectConsumer.as_asgi()),
]
потребитель
.....
# Receive message from room group
async def sent(self, event):
sender = event['object']["sender"]
receiver = event['object']["receiver"]
message = event['object']["message"]
print("hey hey hey ")
# Send message to WebSocket
await self.send(text_data=json.dumps({
'sender':sender,
'receiver':receiver,
'message':message,
}))