valar 0.0.11__tar.gz → 0.0.12__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of valar might be problematic. Click here for more details.
- {valar-0.0.11/src/valar.egg-info → valar-0.0.12}/PKG-INFO +1 -1
- {valar-0.0.11 → valar-0.0.12}/setup.py +1 -1
- {valar-0.0.11 → valar-0.0.12}/src/valar/__init__.py +10 -6
- {valar-0.0.11 → valar-0.0.12}/src/valar/channels/__init__.py +11 -17
- {valar-0.0.11 → valar-0.0.12}/src/valar/channels/views.py +10 -7
- {valar-0.0.11 → valar-0.0.12/src/valar.egg-info}/PKG-INFO +1 -1
- {valar-0.0.11 → valar-0.0.12}/LICENSE +0 -0
- {valar-0.0.11 → valar-0.0.12}/README.md +0 -0
- {valar-0.0.11 → valar-0.0.12}/setup.cfg +0 -0
- {valar-0.0.11 → valar-0.0.12}/src/valar/dao/__init__.py +0 -0
- {valar-0.0.11 → valar-0.0.12}/src/valar/dao/migrations/0001_initial.py +0 -0
- {valar-0.0.11 → valar-0.0.12}/src/valar/dao/migrations/__init__.py +0 -0
- {valar-0.0.11 → valar-0.0.12}/src/valar/dao/models.py +0 -0
- {valar-0.0.11 → valar-0.0.12}/src/valar/dao/views.py +0 -0
- {valar-0.0.11 → valar-0.0.12}/src/valar.egg-info/SOURCES.txt +0 -0
- {valar-0.0.11 → valar-0.0.12}/src/valar.egg-info/dependency_links.txt +0 -0
- {valar-0.0.11 → valar-0.0.12}/src/valar.egg-info/requires.txt +0 -0
- {valar-0.0.11 → valar-0.0.12}/src/valar.egg-info/top_level.txt +0 -0
|
@@ -11,11 +11,15 @@ class ValarResponse(JsonResponse):
|
|
|
11
11
|
class Middleware(MiddlewareMixin):
|
|
12
12
|
@staticmethod
|
|
13
13
|
def process_response(request: HttpRequest, response: ValarResponse):
|
|
14
|
-
message, code = response.message, response.code
|
|
15
|
-
user_id = request.session.get('USER_ID')
|
|
16
14
|
headers = response.headers
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
headers['
|
|
15
|
+
if type(response)==ValarResponse:
|
|
16
|
+
message, code = response.message, response.code
|
|
17
|
+
headers['valar_message'] = message
|
|
18
|
+
headers['valar_code'] = code
|
|
19
|
+
auth = request.headers.get('AUTH')
|
|
20
|
+
if auth:
|
|
21
|
+
headers['auth'] = auth
|
|
22
|
+
uid = request.session.get('UID')
|
|
23
|
+
if uid:
|
|
24
|
+
headers['uid'] = uid
|
|
21
25
|
return response
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
from datetime import datetime
|
|
2
2
|
|
|
3
|
+
from asgiref.sync import async_to_sync
|
|
3
4
|
from channels.layers import get_channel_layer
|
|
4
5
|
|
|
5
|
-
from channels.generic.websocket import AsyncJsonWebsocketConsumer
|
|
6
|
+
from channels.generic.websocket import AsyncJsonWebsocketConsumer, JsonWebsocketConsumer
|
|
6
7
|
from django.conf import settings
|
|
7
8
|
|
|
8
9
|
try:
|
|
@@ -30,22 +31,22 @@ class ValarSocketSender:
|
|
|
30
31
|
}
|
|
31
32
|
|
|
32
33
|
|
|
33
|
-
|
|
34
|
+
def to_users(self, data, *users):
|
|
34
35
|
body = self.__convert_body('user.emit', data, users=users)
|
|
35
|
-
|
|
36
|
+
async_to_sync(self.send)(GROUP, body)
|
|
36
37
|
|
|
37
|
-
|
|
38
|
+
def to_clients(self,data, *clients):
|
|
38
39
|
body = self.__convert_body('client.emit', data, clients=clients)
|
|
39
|
-
|
|
40
|
+
async_to_sync(self.send)(GROUP, body)
|
|
40
41
|
|
|
41
|
-
|
|
42
|
+
|
|
43
|
+
def broadcast(self, data):
|
|
42
44
|
body = self.__convert_body('broadcast.emit', data)
|
|
43
|
-
|
|
45
|
+
async_to_sync(self.send)(GROUP, body)
|
|
44
46
|
|
|
45
|
-
|
|
47
|
+
def register(self):
|
|
46
48
|
body = self.__convert_body('register.emit', None,[self.client], [self.uid])
|
|
47
|
-
|
|
48
|
-
|
|
49
|
+
async_to_sync(self.send)(GROUP, body)
|
|
49
50
|
|
|
50
51
|
class ValarConsumer(AsyncJsonWebsocketConsumer):
|
|
51
52
|
|
|
@@ -92,10 +93,3 @@ class ValarConsumer(AsyncJsonWebsocketConsumer):
|
|
|
92
93
|
|
|
93
94
|
|
|
94
95
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
@@ -8,20 +8,23 @@ from .. import ValarResponse
|
|
|
8
8
|
from ..channels import ValarSocketSender
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
11
|
async def handel_channel(request, handler):
|
|
15
12
|
client = request.headers.get('CLIENT')
|
|
13
|
+
auth = request.headers.get('AUTH')
|
|
16
14
|
uid = request.session.get('UID')
|
|
15
|
+
if auth and not uid:
|
|
16
|
+
return ValarResponse(False)
|
|
17
17
|
data = json.loads(request.body)
|
|
18
|
-
|
|
18
|
+
try:
|
|
19
|
+
method = get_valar_channel_handler(handler)
|
|
20
|
+
except ImproperlyConfigured:
|
|
21
|
+
return ValarResponse(False, message="Invalid channel handler %r" % handler, code='error')
|
|
19
22
|
sender = ValarSocketSender(handler, client, uid)
|
|
20
23
|
if uid and client:
|
|
21
24
|
await sender.register()
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
return ValarResponse(
|
|
25
|
+
thread = asyncio.to_thread(method,data, sender)
|
|
26
|
+
asyncio.create_task(thread)
|
|
27
|
+
return ValarResponse(True)
|
|
25
28
|
|
|
26
29
|
|
|
27
30
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|