BotAdapter class
Définit le comportement principal d’un adaptateur de bot qui peut connecter un bot à un point de terminaison de service.
Remarques
L’adaptateur de bot encapsule le processus d’authentification et envoie les activités au service Bot Connector et en reçoit de celui-ci. Lorsque votre bot reçoit une activité, l’adaptateur crée un objet de contexte de tour, le transmet à la logique de votre application de bot et renvoie des réponses au canal de l’utilisateur.
L’adaptateur traite et dirige les activités entrantes par le biais du pipeline d’intergiciels de bot vers votre logique de bot, puis recule à nouveau. Comme chaque activité entre et sort du bot, chaque middleware peut effectuer une inspection ou une action sur l’activité, avant comme après l’exécution de la logique de bot. Utilisez la méthode use pour ajouter des objets middleware à la collection d’intergiciels de votre adaptateur.
Pour plus d’informations, consultez les articles sur le fonctionnement des bots et les intergiciels.
Propriétés
Bot |
|
Connector |
|
OAuth |
|
on |
Obtient ou définit un gestionnaire d’erreurs qui peut intercepter des exceptions dans l’intergiciel ou l’application. Définit un gestionnaire d’erreurs qui peut intercepter des exceptions dans l’intergiciel ou l’application. |
Méthodes
continue |
Reprend de façon asynchrone une conversation avec un utilisateur, peut-être après un certain temps. |
continue |
Reprend de façon asynchrone une conversation avec un utilisateur, peut-être après un certain temps. |
continue |
Reprend de façon asynchrone une conversation avec un utilisateur, peut-être après un certain temps. |
continue |
Reprend de façon asynchrone une conversation avec un utilisateur, peut-être après un certain temps. |
create |
Crée une conversation sur le canal spécifié. |
delete |
Supprime de façon asynchrone une activité existante. Cette interface prend en charge le framework et n’est pas destinée à être appelée directement pour votre code. Utilisez TurnContext.deleteActivity pour supprimer une activité de votre code de bot. |
send |
Envoie de façon asynchrone un ensemble d’activités sortantes à un serveur de canal. Cette méthode prend en charge l’infrastructure et n’est pas destinée à être appelée directement pour votre code. Utilisez la méthode sendActivity ou sendActivities du contexte de tour à partir de votre code de bot. |
update |
Remplace de manière asynchrone une activité précédente par une version mise à jour. Cette interface prend en charge le framework et n’est pas destinée à être appelée directement pour votre code. Utilisez TurnContext.updateActivity pour mettre à jour une activité à partir du code de votre bot. |
use((context: Turn |
Ajoute un intergiciel (middleware) au pipeline de l’adaptateur. |
Détails de la propriété
BotIdentityKey
BotIdentityKey: symbol
Valeur de propriété
symbol
ConnectorClientKey
ConnectorClientKey: symbol
Valeur de propriété
symbol
OAuthScopeKey
OAuthScopeKey: symbol
Valeur de propriété
symbol
onTurnError
Obtient ou définit un gestionnaire d’erreurs qui peut intercepter des exceptions dans l’intergiciel ou l’application. Définit un gestionnaire d’erreurs qui peut intercepter des exceptions dans l’intergiciel ou l’application.
(context: TurnContext, error: Error) => Promise<void> onTurnError
Valeur de propriété
(context: TurnContext, error: Error) => Promise<void>
Promesse représentant l’opération asynchrone.
Remarques
Le gestionnaire d’erreurs est appelé avec les paramètres suivants :
Nom | Type | Description |
---|---|---|
context |
TurnContext | Objet de contexte pour le tour. |
error |
Error |
Erreur Node.js levée. |
Détails de la méthode
continueConversation(Partial<ConversationReference>, (revocableContext: TurnContext) => Promise<void>)
Reprend de façon asynchrone une conversation avec un utilisateur, peut-être après un certain temps.
function continueConversation(reference: Partial<ConversationReference>, logic: (revocableContext: TurnContext) => Promise<void>): Promise<void>
Paramètres
- reference
-
Partial<ConversationReference>
Référence à la conversation à poursuivre.
- logic
-
(revocableContext: TurnContext) => Promise<void>
Méthode asynchrone à appeler après l’exécution de l’intergiciel de l’adaptateur.
Retours
Promise<void>
Remarques
Il s’agit souvent d’une notification proactive. Le bot peut envoyer de manière proactive un message à une conversation ou à un utilisateur sans attendre un message entrant. Par exemple, un bot peut utiliser cette méthode pour envoyer des notifications ou des coupons à un utilisateur.
continueConversationAsync(ClaimsIdentity, Partial<ConversationReference>, (context: TurnContext) => Promise<void>)
Reprend de façon asynchrone une conversation avec un utilisateur, peut-être après un certain temps.
function continueConversationAsync(claimsIdentity: ClaimsIdentity, reference: Partial<ConversationReference>, logic: (context: TurnContext) => Promise<void>): Promise<void>
Paramètres
- claimsIdentity
-
ClaimsIdentity
ClaimsIdentity pour la conversation.
- reference
-
Partial<ConversationReference>
ConversationReference partielle à la conversation à poursuivre.
- logic
-
(context: TurnContext) => Promise<void>
Méthode asynchrone à appeler après l’exécution de l’intergiciel de l’adaptateur.
Retours
Promise<void>
promesse représentant l’opération asynchrone
continueConversationAsync(ClaimsIdentity, Partial<ConversationReference>, string, (context: TurnContext) => Promise<void>)
Reprend de façon asynchrone une conversation avec un utilisateur, peut-être après un certain temps.
function continueConversationAsync(claimsIdentity: ClaimsIdentity, reference: Partial<ConversationReference>, audience: string, logic: (context: TurnContext) => Promise<void>): Promise<void>
Paramètres
- claimsIdentity
-
ClaimsIdentity
ClaimsIdentity pour la conversation.
- reference
-
Partial<ConversationReference>
ConversationReference partielle à la conversation à poursuivre.
- audience
-
string
Valeur qui signifie le destinataire du message proactif.
- logic
-
(context: TurnContext) => Promise<void>
Méthode asynchrone à appeler après l’exécution de l’intergiciel de l’adaptateur.
Retours
Promise<void>
promesse représentant l’opération asynchrone
continueConversationAsync(string, Partial<ConversationReference>, (context: TurnContext) => Promise<void>)
Reprend de façon asynchrone une conversation avec un utilisateur, peut-être après un certain temps.
function continueConversationAsync(botAppId: string, reference: Partial<ConversationReference>, logic: (context: TurnContext) => Promise<void>): Promise<void>
Paramètres
- botAppId
-
string
ID d’application du bot. Ce paramètre est ignoré dans les adaptateurs à locataire unique (console, test, etc.), mais il est essentiel pour le BotFrameworkAdapter qui prend en charge les multilocataires.
- reference
-
Partial<ConversationReference>
ConversationReference partielle à la conversation à poursuivre.
- logic
-
(context: TurnContext) => Promise<void>
Méthode asynchrone à appeler après l’exécution de l’intergiciel de l’adaptateur.
Retours
Promise<void>
promesse représentant l’opération asynchrone
createConversationAsync(string, string, string, string, ConversationParameters, (context: TurnContext) => Promise<void>)
Crée une conversation sur le canal spécifié.
function createConversationAsync(_botAppId: string, _channelId: string, _serviceUrl: string, _audience: string, _conversationParameters: ConversationParameters, _logic: (context: TurnContext) => Promise<void>): Promise<void>
Paramètres
- _botAppId
-
string
ID d’application du bot.
- _channelId
-
string
ID du canal.
- _serviceUrl
-
string
ID du canal.
- _audience
-
string
Audience du connecteur.
- _conversationParameters
-
ConversationParameters
Informations de conversation à utiliser pour créer la conversation
- _logic
-
(context: TurnContext) => Promise<void>
Méthode à appeler pour le tour de bot résultant.
Retours
Promise<void>
Promesse qui représente l’opération asynchrone
Remarques
Pour démarrer une conversation, votre bot doit connaître ses informations de compte et les informations de compte de l’utilisateur sur ce canal. La plupart des _channels prennent uniquement en charge le lancement d’une conversation par message direct (non de groupe).
L’adaptateur tente de créer une conversation sur le canal, puis envoie une conversationUpdate
activité via son pipeline d’intergiciel (middleware) à la méthode logique.
Si la conversation est établie avec les utilisateurs spécifiés, l’ID de la conversation de l’activité contient l’ID de la nouvelle conversation.
deleteActivity(TurnContext, Partial<ConversationReference>)
Supprime de façon asynchrone une activité existante. Cette interface prend en charge le framework et n’est pas destinée à être appelée directement pour votre code. Utilisez TurnContext.deleteActivity pour supprimer une activité de votre code de bot.
function deleteActivity(context: TurnContext, reference: Partial<ConversationReference>): Promise<void>
Paramètres
- context
- TurnContext
Objet de contexte pour le tour.
- reference
-
Partial<ConversationReference>
Informations de référence de conversation pour l’activité à supprimer.
Retours
Promise<void>
Remarques
Tous les canaux ne prennent pas en charge cette opération. Pour les canaux qui ne le font pas, cet appel peut lever une exception.
sendActivities(TurnContext, Partial<Activity>[])
Envoie de façon asynchrone un ensemble d’activités sortantes à un serveur de canal. Cette méthode prend en charge l’infrastructure et n’est pas destinée à être appelée directement pour votre code. Utilisez la méthode sendActivity ou sendActivities du contexte de tour à partir de votre code de bot.
function sendActivities(context: TurnContext, activities: Partial<Activity>[]): Promise<ResourceResponse[]>
Paramètres
- context
- TurnContext
Objet de contexte pour le tour.
- activities
-
Partial<Activity>[]
Activités à envoyer.
Retours
Promise<ResourceResponse[]>
Tableau de ResourceResponse
Remarques
Les activités sont envoyées les unes après les autres dans l’ordre dans lequel elles sont reçues. Un objet response est retourné pour chaque activité envoyée. Pour message
les activités, il contient l’ID du message remis.
updateActivity(TurnContext, Partial<Activity>)
Remplace de manière asynchrone une activité précédente par une version mise à jour. Cette interface prend en charge le framework et n’est pas destinée à être appelée directement pour votre code. Utilisez TurnContext.updateActivity pour mettre à jour une activité à partir du code de votre bot.
function updateActivity(context: TurnContext, activity: Partial<Activity>): Promise<ResourceResponse | void>
Paramètres
- context
- TurnContext
Objet de contexte pour le tour.
- activity
-
Partial<Activity>
Version mise à jour de l’activité à remplacer.
Retours
Promise<ResourceResponse | void>
Remarques
Tous les canaux ne prennent pas en charge cette opération. Pour les canaux qui ne le font pas, cet appel peut lever une exception.
use((context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[])
Ajoute un intergiciel (middleware) au pipeline de l’adaptateur.
function use(middlewares: (context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[]): this
Paramètres
- middlewares
-
(context: TurnContext, next: () => Promise<void>) => Promise<void> | Middleware[]
Gestionnaires d’intergiciels ou d’intergiciels à ajouter.
Retours
this
Objet adaptateur mis à jour.
Remarques
L’intergiciel est ajouté à l’adaptateur au moment de l’initialisation. À chaque tour, l’adaptateur appelle son intergiciel dans l’ordre dans lequel vous l’avez ajouté.