import os from channels.routing import ProtocolTypeRouter, URLRouter from channels.security.websocket import AllowedHostsOriginValidator from channels.auth import AuthMiddlewareStack from django.core.asgi import get_asgi_application import api.routing from django.urls import re_path from config.auth_middleware import JwtAuthMiddlewareStack os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings') # Initialize Django ASGI application early to ensure the AppRegistry # is populated before importing code that may import ORM models. django_asgi_app = get_asgi_application() application = ProtocolTypeRouter({ "http": django_asgi_app, 'websocket': JwtAuthMiddlewareStack( URLRouter(api.routing.websocket_urlpatterns) ), })