Mesajlaşma
Sohbet özelliği, sohbet dizilerine ve sohbet dizilerindeki mesajlara göre düzenlenmektedir.
Uç Noktaları
Sohbet Dizilerini Getir
GET
https://cubicl.io/api/v1/chat/threads
ChatThread[]
Mesajları Getir
GET
https://cubicl.io/api/v1/chat/threads/:threadId/messages
Bir sohbet grubundaki mesajları getirir.
Path Parameters
threadId*
string
Sohbet dizisi ID'si
limit
number
search
string
Mesaj içeriğinde aranacak metin
before
string
Mesaj ID'si. Bu mesajdan önce gönderilen son mesajlar geri dönecektir.
after
string
Mesaj ID'si. Bu mesajdan sonra gönderilen mesajlar geri dönecektir.
ChatMessage[]
Mesaj Ekle
POST
https://cubicl.io/api/v1/chat/messages
Mesajlar, sohbet dizilerine veya kullanıcılara gönderilir. İki kullanıcı arasında henüz bir sohbet dizisi yoksa alıcı kullanıcı ID'si ile to
parametresini ayarlamanız gerekir. İlk mesajdan sonra bir ileti dizisi oluşturulacaktır. Mevcut sohbet dizileri için thread
parametresini ayarlamalısınız.
content
veya files
parametrelerinden birisi ayarlanmalıdır.
thread
veya to
parametrelerinden birisi ayarlanmalıdır.
Request Body
thread
string
Sohbet dizisi ID'si
replyTo
string
Mesaj ID'si. Mesaj başka bir mesaja verilen cevapsa.
files
string[]
Dosyaların ID listesi
content
string
Mesaj içeriği
to
string
Kullanıcı ID'si
{
// Yeni oluşturulan mesajın ID'si
message: string,
// Bu istekle yeni bir sohbet dizisi oluşturulursa bu mevcuttur.
// Bir kullanıcı başka bir kullanıcıya ilk kez mesaj gönderdiğinde
// yeni sohbet dizisi oluşturulur.
thread?: ChatThread
}
Veriler
Sohbet Dizileri
Sohbet mesajları bir ileti dizisinde gönderilir. Dizilerin 3 tipi vardır:
personal : 2 kullanıcı arasında gerçekleşir. Bir kullanıcı başka bir kullanıcıya mesaj gönderdiğinde oluşturulur.
group : Her proje için oluşturulur. Tüm proje üyeleri bu dizinin üyesidir.
custom : Kullanıcıların kendileri tarafından bir grup kullanıcı arasında oluşturulur. Bu özel bir sohbet grubudur.
type ChatThread = {
_id: string;
type: 'personal' | 'group' | 'custom';
// 'type' parametresi 'group' olduğunda gereklidir.
group?: string;
// Sohbet dizisi adı. 'type' parametresi 'custom' olduğunda gereklidir.
name?: string;
// Sohbet dizisindeki kullanıcıların ID'leri.
// 'type' parametresi 'personal' veya 'custom' olduğunda gereklidir.
users: string[];
// Sohbet dizisindeki son aktivitenin (mesajın) tarihi
activity: number;
// Mevcut kullanıcının sohbet dizisini görüntülediği tarih.
// Daha önce erişilmediyse 0'dır.
access: number;
lastMessage: ChatMessage | null;
// Son erişimden bu yana gelen yeni mesaj sayısı
newActivityCount: number;
createdAt: number;
}
Sohbet Mesajları
type ChatMessage = {
_id: string;
// Sohbet dizisinin ID'si
thread: string;
// Mesajı gönderen kullanıcının ID'si
from: string;
content: string;
// Mesajdaki dosya ekleri. Veri biçimi için Dosyalar sayfasını kontrol edin.
files: File[];
// Mesajı beğenen kullanıcıların ID'leri
likes: string[];
dislikes: string[];
// Bir mesaj başka bir mesaja verilen cevapsa,
// bu cevaplanan mesaj kimliği olacaktır.
replyTo: string | null;
createdAt: number;
}
Last updated
Was this helpful?