Я использую Django каналы и могу правильно подключиться и отправить сообщение с предоставленным встроенным именем канала. Мне интересно, есть ли способ изменить и зарегистрировать пользовательское имя канала в подключении к веб-сокету. Я попытался изменить его, но channel_layer уже сохранил встроенное имя_канала, и я не могу отправить сообщение.
Это предоставленный тестовый класс
class TestWebSocket(AsyncWebsocketConsumer):
async def connect(self):
self.channel_name = "custom.channelname.UNIQUE"
await self.accept()
async def test_message(self, event):
await self.send(text_data=json.dumps({
'message': event['message']
}))
Вот как я могу отправить сообщение:
async_to_sync(channel_layer.send)('custom.channelname.UNIQUE',
{'type': 'test.message', 'message': 'dfdsdsf'})
Я читаю документацию, и она хранит channel_name
внутри db , но каждый раз, когда я выполняю соединение, это имя будет меняться. Я хочу избежать затопления db с вызовами обновления. Вот почему я пытаюсь заставить свои собственные названия каналов.
Есть способ изменить это или это пустая трата времени?