dark mode and websockets
[kismet-logviewer.git] / logviewer / logviewer / asgi.py
index b989c40..0562ae3 100644 (file)
@@ -9,8 +9,20 @@ https://docs.djangoproject.com/en/4.1/howto/deployment/asgi/
 
 import os
 
+from channels.auth import AuthMiddlewareStack
+from channels.routing import ProtocolTypeRouter, URLRouter
+from channels.security.websocket import AllowedHostsOriginValidator
 from django.core.asgi import get_asgi_application
 
+import eventbus.routing
+
 os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'logviewer.settings')
 
-application = get_asgi_application()
+#application = get_asgi_application()
+
+application = ProtocolTypeRouter({
+    "http": get_asgi_application(),
+    "websocket": AllowedHostsOriginValidator(
+        AuthMiddlewareStack(URLRouter(eventbus.routing.websocket_urlpatterns))
+    ),
+})