Я хочу создать приложение для приватного чата

Я пытаюсь создать приватное приложение для чата, используя django channels. Я создал приложение чата, следуя документации django channels. Но мне нужна система, подобная этой-

Если пользователь, вошедший в систему, выберет другого пользователя, они могут общаться друг с другом в приватном чате.

Вот код, который я пробовал. Я совсем новичок в каналах django. Так что код взят из документации

Вот мои взгляды

from django.shortcuts import render

# Create your views here.

def get_home_page_url(request, *args, **kwargs):
    args = {}
    return render(request, 'chat/index.html', args)


def get_room_url(request, room_name, *args, **kwargs):
    return render(request, 'chat/room.html', {
        'room_name': room_name
    })

Вот routing.py

from django.urls import re_path

from . import consumers

websocket_urlpatterns = [
    re_path(r'ws/chat/(?P<room_name>\w+)/$', consumers.ChatConsumer.as_asgi()),
]

Вот мой models.py

class PrivateChatRoom(models.Model):
    user1 = models.ForeignKey(User, on_delete=models.CASCADE, related_name="user1")
    user2 = models.ForeignKey(User, on_delete=models.CASCADE, related_name="user2")

    is_active = models.BooleanField(default=True)
    
   
class RoomChatMessage(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    room = models.ForeignKey(PrivateChatRoom, on_delete=models.CASCADE)
    timestamp = models.DateTimeField(auto_now_add=True)
    content = models.TextField(unique=False, blank=True)

Я пытаюсь реализовать эти модели для чата в реальном времени, но я не знаю, какую логику я должен использовать. У меня нет опыта в django channels и sockets.

** Нужна срочная помощь **

Вернуться на верх