diff --git a/chats/apps/api/v1/external/rooms/serializers.py b/chats/apps/api/v1/external/rooms/serializers.py index 75f8a553..62a33a33 100644 --- a/chats/apps/api/v1/external/rooms/serializers.py +++ b/chats/apps/api/v1/external/rooms/serializers.py @@ -187,6 +187,7 @@ def create(self, validated_data): room = Room.objects.create( **validated_data, + project_uuid=str(project.uuid), contact=contact, queue=queue, protocol=protocol, diff --git a/chats/apps/rooms/migrations/0013_room_project_uuid_room_rooms_room_project_890f5f_idx.py b/chats/apps/rooms/migrations/0013_room_project_uuid_room_rooms_room_project_890f5f_idx.py new file mode 100644 index 00000000..4f0673b1 --- /dev/null +++ b/chats/apps/rooms/migrations/0013_room_project_uuid_room_rooms_room_project_890f5f_idx.py @@ -0,0 +1,26 @@ +# Generated by Django 4.1.2 on 2024-09-30 19:43 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("rooms", "0012_room_service_chat"), + ] + + operations = [ + migrations.AddField( + model_name="room", + name="project_uuid", + field=models.TextField( + blank=True, default="", null=True, verbose_name="project_uuid" + ), + ), + migrations.AddIndex( + model_name="room", + index=models.Index( + fields=["project_uuid"], name="rooms_room_project_890f5f_idx" + ), + ), + ] diff --git a/chats/apps/rooms/models.py b/chats/apps/rooms/models.py index b3c110b1..cf40f191 100644 --- a/chats/apps/rooms/models.py +++ b/chats/apps/rooms/models.py @@ -51,6 +51,10 @@ def __init__(self, *args, **kwargs): ) urn = models.TextField(_("urn"), null=True, blank=True, default="") + project_uuid = models.TextField( + _("project_uuid"), null=True, blank=True, default="" + ) + callback_url = models.TextField(_("Callback URL"), null=True, blank=True) ended_at = models.DateTimeField( @@ -86,6 +90,9 @@ class Meta: name="unique_contact_queue_is_activetrue_room", ) ] + indexes = [ + models.Index(fields=["project_uuid"]), + ] def save(self, *args, **kwargs) -> None: if self.__original_is_active is False: