Condividi tramite


IConnector interface

Implementato dai plug-in del connettore per UniversalBot.

Metodi

delete(IAddress, (err: Error) => void)

(Facoltativo) metodo che può essere chiamato per eliminare un messaggio inviato in precedenza usando send().

onEvent((events: IEvent[], callback?: (err: Error) => void) => void)

Chiamato da UniversalBot al momento della registrazione per registrare un gestore per la ricezione di eventi in ingresso da un canale.

onInvoke((event: IEvent, callback?: (err: Error, body: any, status?: number) => void) => void)

(Facoltativo) Chiamato da UniversalBot al momento della registrazione per registrare un gestore per la ricezione di eventi invoke in ingresso. Gli eventi invoke sono eventi speciali che devono restituire un corpo inline come parte della risposta alla richiesta ricevuta.

send(IMessage[], (err: Error, addresses?: IAddress[]) => void)

Invia messaggi in uscita a un utente. Questo metodo verrà infine chiamato ogni volta che si chiama UniversalBot.send() o Session.send(). È possibile chiamare manualmente questo metodo usando session.connector.send() come modo pratico per ottenere l'indirizzo del messaggio inviato. È quindi possibile archiviare questo indirizzo e usarlo in un secondo momento per aggiornare o eliminare il messaggio. L'unica cosa da tenere presente è che se si chiama manualmente session.connector.send() si bypasserà qualsiasi middleware che il messaggio in uscita normalmente verrebbe eseguito. La chiamata session.send(msg).sendBatch(function (err, addresses) { }) esegue la stessa operazione, ma garantisce che il messaggio in uscita venga inviato tramite middleware.

startConversation(IAddress, (err: Error, address?: IAddress) => void)

Chiamato quando un UniversalBot vuole avviare una nuova conversazione proattiva con un utente. Il connettore deve restituire un indirizzo con un campo IAddress.conversation correttamente formattato. Questo viene in genere chiamato quando chiami UniversalBot.beginDialog(), ma verrà chiamato anche ogni volta che IAddress.conversation è Null per l'invio di un messaggio.

update(IMessage, (err: Error, address?: IAddress) => void)

(Facoltativo) metodo che può essere chiamato per sostituire un messaggio inviato in precedenza usando send().

Dettagli metodo

delete(IAddress, (err: Error) => void)

(Facoltativo) metodo che può essere chiamato per eliminare un messaggio inviato in precedenza usando send().

function delete(address: IAddress, callback: (err: Error) => void)

Parametri

address
IAddress

Indirizzo del messaggio da eliminare.

callback

(err: Error) => void

Funzione da richiamare al termine dell'operazione.

onEvent((events: IEvent[], callback?: (err: Error) => void) => void)

Chiamato da UniversalBot al momento della registrazione per registrare un gestore per la ricezione di eventi in ingresso da un canale.

function onEvent(handler: (events: IEvent[], callback?: (err: Error) => void) => void)

Parametri

handler

(events: IEvent[], callback?: (err: Error) => void) => void

Funzione che deve essere chiamata ogni volta che viene ricevuto un evento che non è di tipo "invoke".

onInvoke((event: IEvent, callback?: (err: Error, body: any, status?: number) => void) => void)

(Facoltativo) Chiamato da UniversalBot al momento della registrazione per registrare un gestore per la ricezione di eventi invoke in ingresso. Gli eventi invoke sono eventi speciali che devono restituire un corpo inline come parte della risposta alla richiesta ricevuta.

function onInvoke(handler: (event: IEvent, callback?: (err: Error, body: any, status?: number) => void) => void)

Parametri

handler

(event: IEvent, callback?: (err: Error, body: any, status?: number) => void) => void

Funzione che deve essere chiamata ogni volta che viene ricevuto un evento "invoke".

send(IMessage[], (err: Error, addresses?: IAddress[]) => void)

Invia messaggi in uscita a un utente. Questo metodo verrà infine chiamato ogni volta che si chiama UniversalBot.send() o Session.send(). È possibile chiamare manualmente questo metodo usando session.connector.send() come modo pratico per ottenere l'indirizzo del messaggio inviato. È quindi possibile archiviare questo indirizzo e usarlo in un secondo momento per aggiornare o eliminare il messaggio. L'unica cosa da tenere presente è che se si chiama manualmente session.connector.send() si bypasserà qualsiasi middleware che il messaggio in uscita normalmente verrebbe eseguito. La chiamata session.send(msg).sendBatch(function (err, addresses) { }) esegue la stessa operazione, ma garantisce che il messaggio in uscita venga inviato tramite middleware.

function send(messages: IMessage[], callback: (err: Error, addresses?: IAddress[]) => void)

Parametri

messages

IMessage[]

Matrice di messaggi da inviare all'utente.

callback

(err: Error, addresses?: IAddress[]) => void

Funzione da richiamare al termine dell'operazione.

startConversation(IAddress, (err: Error, address?: IAddress) => void)

Chiamato quando un UniversalBot vuole avviare una nuova conversazione proattiva con un utente. Il connettore deve restituire un indirizzo con un campo IAddress.conversation correttamente formattato. Questo viene in genere chiamato quando chiami UniversalBot.beginDialog(), ma verrà chiamato anche ogni volta che IAddress.conversation è Null per l'invio di un messaggio.

function startConversation(address: IAddress, callback: (err: Error, address?: IAddress) => void)

Parametri

address
IAddress

Indirizzo dell'utente per cui avviare la conversazione. Il campo IAddress.conversation deve essere Null.

callback

(err: Error, address?: IAddress) => void

Funzione da richiamare al termine dell'operazione.

update(IMessage, (err: Error, address?: IAddress) => void)

(Facoltativo) metodo che può essere chiamato per sostituire un messaggio inviato in precedenza usando send().

function update(message: IMessage, callback: (err: Error, address?: IAddress) => void)

Parametri

message
IMessage

Messaggio con cui sovrascrivere un messaggio esistente. Il campo message.address deve contenere un indirizzo restituito da una chiamata precedente a send().

callback

(err: Error, address?: IAddress) => void

Funzione da richiamare al termine dell'operazione.