Invia e leggi i messaggi

Questo articolo mostra come inviare messaggi a una stanza e leggere la sua cronologia con l'SDK client. Dal tuo server puoi anche leggere, modificare ed eliminare i messaggi con l'API REST.

Gli snippet dell'SDK client presuppongono che si disponga già di un client connesso. Vedi come iniziare per imparare a connettersi.

Iscriviti ai messaggi

Gestisci l'evento message per ricevere messaggi in tempo reale. Attiva nuovi messaggi nelle stanze a cui appartiene l'utente, inclusi quelli inviati.

client.on("message", (event) => {
  const message = event.message;
  console.log(`[${event.roomId}] ${message.createdBy}: ${message.content.text}`);
});

Il gestore consegna solo i messaggi che arrivano dopo che ti abboni, quindi registrali prima di inviarli. Non riproduce i messaggi precedenti; Per caricarli, leggi la cronologia dei messaggi.

Inviare un messaggio

Invia un SMS a una chat room con sendToRoom. Restituisce l'ID del nuovo messaggio. La dimensione massima del contenuto del messaggio è di 64KB.

const result = await client.sendToRoom(room.roomId, "Hello, team!");
console.log(`Sent message ${result.messageId}`);

Leggi la cronologia dei messaggi

Leggi i messaggi precedenti di una stanza con listRoomMessages. Restituisce un iteratore asincrono che scorre la cronologia della stanza per conto dell'utente.

for await (const message of client.listRoomMessages(room.roomId)) {
  console.log(`${message.createdBy}: ${message.content.text}`);
}

Per controllare il paging da solo, ad esempio per caricare più messaggi mentre l'utente scorre, usa byPage. Ogni pagina è un insieme di messaggi.

const pages = client.listRoomMessages(room.roomId).byPage({ maxPageSize: 50 });
for await (const page of pages) {
  for (const message of page) {
    console.log(`${message.createdBy}: ${message.content.text}`);
  }
}

Per leggere un intervallo, passa startId o endId. Entrambi sono ID di messaggio.

const messages = client.listRoomMessages(room.roomId, { startId: "<message-id>" });

Gestisci i messaggi dal tuo server

Il tuo server può lavorare con la cronologia dei messaggi tramite l'API Chat REST, per moderazione, audit e altri compiti backend. Può leggere, modificare ed eliminare i messaggi.

Note

I messaggi appartengono a una conversazione (ogni stanza ne ha uno di default), quindi gli endpoint dei messaggi prendono un ID della conversazione invece di un ID della stanza. Recupera la conversazione predefinita di una stanza dalla proprietà defaultConversation, restituita quando recuperi la stanza tramite l'API REST.

Per endpoint, formati di richiesta e autenticazione, vedi Chat SDK e REST API.

Passaggi successivi