Mesajlaşma
Last updated
Was this helpful?
Last updated
Was this helpful?
Was this helpful?
Sohbet özelliği, sohbet dizilerine ve sohbet dizilerindeki mesajlara göre düzenlenmektedir.
GET
https://cubicl.io/api/v1/chat/threads
ChatThread[]
GET
https://cubicl.io/api/v1/chat/threads/:threadId/messages
Bir sohbet grubundaki mesajları getirir.
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[]
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.
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
}
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;
}
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;
}