inbox/services/presence.py

14 lines
402 B
Python
Raw Normal View History

2023-10-04 17:14:06 +00:00
import json
2023-10-14 12:59:43 +00:00
2023-10-14 14:55:51 +00:00
from services.rediscache import redis
from validators.chat import Message
2023-10-04 17:14:06 +00:00
2023-10-14 06:38:12 +00:00
async def notify_message(message: Message, chat_id: str):
2023-10-04 17:14:06 +00:00
channel_name = f"chat:{chat_id}"
2023-10-16 14:07:01 +00:00
data = {"payload": message, "kind": "new_message"}
2023-10-04 17:14:06 +00:00
try:
2023-10-04 21:20:43 +00:00
await redis.publish(channel_name, json.dumps(data))
2023-10-04 17:14:06 +00:00
except Exception as e:
print(f"Failed to publish to channel {channel_name}: {e}")