発散解像度 -divergence resolution-
Signed-off-by: Shin'ya Minazuki <shinyoukai@laidback.moe>
This commit is contained in:
parent
1ff613dee6
commit
01bb65f8da
457 changed files with 929 additions and 602 deletions
26
api/funkwhale_api/common/channels.py
Normal file
26
api/funkwhale_api/common/channels.py
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
import json
|
||||
import logging
|
||||
|
||||
from asgiref.sync import async_to_sync
|
||||
from channels.layers import get_channel_layer
|
||||
from django.core.serializers.json import DjangoJSONEncoder
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
channel_layer = get_channel_layer()
|
||||
group_add = async_to_sync(channel_layer.group_add)
|
||||
group_discard = async_to_sync(channel_layer.group_discard)
|
||||
|
||||
|
||||
def group_send(group, event):
|
||||
# we serialize the payload ourselves and deserialize it to ensure it
|
||||
# works with msgpack. This is dirty, but we'll find a better solution
|
||||
# later
|
||||
s = json.dumps(event, cls=DjangoJSONEncoder)
|
||||
event = json.loads(s)
|
||||
logger.debug(
|
||||
"[channels] Dispatching %s to group %s: %s",
|
||||
event["type"],
|
||||
group,
|
||||
{"type": event["data"]["type"]},
|
||||
)
|
||||
async_to_sync(channel_layer.group_send)(group, event)
|
||||
Loading…
Add table
Add a link
Reference in a new issue