mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 03:56:23 -05:00 
			
		
		
		
	fixed up the docker
This commit is contained in:
		| @@ -1,31 +1,17 @@ | ||||
| import json | ||||
| import os | ||||
|  | ||||
| from asgiref.sync import async_to_sync | ||||
| from channels.auth import AuthMiddlewareStack | ||||
| from channels.generic.websocket import WebsocketConsumer | ||||
| from channels.routing import ProtocolTypeRouter, URLRouter | ||||
| from django.core.asgi import get_asgi_application | ||||
| from django.urls import re_path | ||||
| # Fetch Django ASGI application early to ensure AppRegistry is populated | ||||
| # before importing consumers and AuthMiddlewareStack that may import ORM | ||||
| # models. | ||||
|  | ||||
| os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'paperless.settings') | ||||
| os.environ.setdefault("DJANGO_SETTINGS_MODULE", "paperless.settings") | ||||
| django_asgi_app = get_asgi_application() | ||||
|  | ||||
| from channels.auth import AuthMiddlewareStack | ||||
| from channels.routing import ProtocolTypeRouter, URLRouter | ||||
|  | ||||
| class StatusConsumer(WebsocketConsumer): | ||||
|     def connect(self): | ||||
|         self.accept() | ||||
|         async_to_sync(self.channel_layer.group_add)('status_updates', self.channel_name) | ||||
|  | ||||
|     def disconnect(self, close_code): | ||||
|         async_to_sync(self.channel_layer.group_discard)('status_updates', self.channel_name) | ||||
|  | ||||
|     def status_update(self, event): | ||||
|         self.send(json.dumps(event['data'])) | ||||
|  | ||||
|  | ||||
| websocket_urlpatterns = [ | ||||
|     re_path(r'ws/status/$', StatusConsumer.as_asgi()), | ||||
| ] | ||||
| from paperless.urls import websocket_urlpatterns | ||||
|  | ||||
| application = ProtocolTypeRouter({ | ||||
|     "http": get_asgi_application(), | ||||
|   | ||||
							
								
								
									
										16
									
								
								src/paperless/consumers.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								src/paperless/consumers.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| import json | ||||
|  | ||||
| from asgiref.sync import async_to_sync | ||||
| from channels.generic.websocket import WebsocketConsumer | ||||
|  | ||||
|  | ||||
| class StatusConsumer(WebsocketConsumer): | ||||
|     def connect(self): | ||||
|         self.accept() | ||||
|         async_to_sync(self.channel_layer.group_add)('status_updates', self.channel_name) | ||||
|  | ||||
|     def disconnect(self, close_code): | ||||
|         async_to_sync(self.channel_layer.group_discard)('status_updates', self.channel_name) | ||||
|  | ||||
|     def status_update(self, event): | ||||
|         self.send(json.dumps(event['data'])) | ||||
| @@ -307,7 +307,7 @@ CHANNEL_LAYERS = { | ||||
|     "default": { | ||||
|         "BACKEND": "channels_redis.core.RedisChannelLayer", | ||||
|         "CONFIG": { | ||||
|             "hosts": [("127.0.0.1", 6379)], | ||||
|             "hosts": [("broker", 6379)], | ||||
|         }, | ||||
|     }, | ||||
| } | ||||
|   | ||||
| @@ -1,11 +1,12 @@ | ||||
| from django.conf.urls import include, url | ||||
| from django.contrib import admin | ||||
| from django.urls import path | ||||
| from django.urls import path, re_path | ||||
| from django.views.decorators.csrf import csrf_exempt | ||||
| from django.views.generic import RedirectView | ||||
| from rest_framework.authtoken import views | ||||
| from rest_framework.routers import DefaultRouter | ||||
|  | ||||
| from paperless.consumers import StatusConsumer | ||||
| from paperless.views import FaviconView | ||||
| from documents.views import ( | ||||
|     CorrespondentViewSet, | ||||
| @@ -65,6 +66,11 @@ urlpatterns = [ | ||||
|  | ||||
| ] | ||||
|  | ||||
|  | ||||
| websocket_urlpatterns = [ | ||||
|     re_path(r'ws/status/$', StatusConsumer.as_asgi()), | ||||
| ] | ||||
|  | ||||
| # Text in each page's <h1> (and above login form). | ||||
| admin.site.site_header = 'Paperless' | ||||
| # Text at the end of each page's <title>. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Jonas Winkler
					Jonas Winkler