I am trying to create socket in django. I installed asgi_redis as per this link. When I ran the command python manage.py runserver, I am getting below error.
>python manage.py runserver
CommandError: You have not set ASGI_APPLICATION, which is needed to run the server.
As I havent started the redis, above error might be because of this. I am bit confused , do I need to install Redis separately or just need to start the redis as I have already installed the asgi_redis?
project/settings.py file entry for redis.
CHANNEL_LAYERS = {
'default': {
'BACKEND': 'asgi_redis.RedisChannelLayer',
'CONFIG': {
'hosts': [('localhost', 6379)],
},
'ROUTING': 'example_channels.routing.channel_routing',
}
}
You should write routing configuration for your WebSocket server. Create a file mysite/routing.py
in the same folder of the settings.py
file and include the following code:
# mysite/routing.py
from channels.routing import ProtocolTypeRouter
application = ProtocolTypeRouter({
# (your routes here)
})
You also might forgot to point Channels at the root routing configuration. Edit the mysite/settings.py file and add the following to the bottom of it:
ASGI_APPLICATION = 'mysite.routing.application'
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With