Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Note
L’API REST n’est pas équivalente au Kit de développement logiciel (SDK). L’API REST est fournie pour autoriser la communication REST standard, mais la méthode préférée d’interaction avec Bot Framework est le Kit de développement logiciel (SDK).
Dans Bot Framework, le service Bot Connector permet à votre bot d’échanger des messages avec des utilisateurs sur des canaux configurés dans le portail Bot Framework. Le service utilise REST et JSON standard sur HTTPS.
Base de l'URI
Lorsqu’un utilisateur envoie un message à votre bot, la requête entrante contient un objet d’activité avec une serviceUrl propriété qui spécifie le point de terminaison auquel votre bot doit envoyer sa réponse. Pour accéder au service Bot Connector, utilisez la serviceUrl valeur comme URI de base pour les demandes d’API.
Quand vous n’avez pas encore d’URL de service pour le canal, utilisez https://smba.trafficmanager.net/teams/ l’URL du service. Pour plus d’informations, consultez comment créer une conversation et un message proactif dans Teams.
Par exemple, supposons que votre bot reçoit l’activité suivante lorsque l’utilisateur envoie un message au bot.
{
"type": "message",
"id": "bf3cc9a2f5de...",
"timestamp": "2016-10-19T20:17:52.2891902Z",
"serviceUrl": "https://smba.trafficmanager.net/teams/",
"channelId": "channel's name/id",
"from": {
"id": "1234abcd",
"name": "user's name"
},
"conversation": {
"id": "abcd1234",
"name": "conversation's name"
},
"recipient": {
"id": "12345678",
"name": "bot's name"
},
"text": "Haircut on Saturday"
}
La serviceUrl propriété dans le message de l’utilisateur indique que le bot doit envoyer sa réponse au point de terminaison https://smba.trafficmanager.net/teams/. L’URL du service sera l’URI de base pour toutes les demandes suivantes que le bot émet dans le contexte de cette conversation. Si votre bot doit envoyer un message proactif à l’utilisateur, veillez à enregistrer la valeur de serviceUrl.
L’exemple suivant montre la demande que le bot émet pour répondre au message de l’utilisateur.
POST https://smba.trafficmanager.net/teams/v3/conversations/abcd1234/activities/bf3cc9a2f5de...
Authorization: Bearer eyJhbGciOiJIUzI1Ni...
Content-Type: application/json
{
"type": "message",
"from": {
"id": "12345678",
"name": "bot's name"
},
"conversation": {
"id": "abcd1234",
"name": "conversation's name"
},
"recipient": {
"id": "1234abcd",
"name": "user's name"
},
"text": "I have several times available on Saturday!",
"replyToId": "bf3cc9a2f5de..."
}
En-têtes
En-têtes de requête
Outre les en-têtes de requête HTTP standard, chaque demande d’API que vous émettez doit inclure un Authorization en-tête qui spécifie un jeton d’accès pour authentifier votre bot. Spécifiez l’en-tête Authorization au format suivant :
Authorization: Bearer ACCESS_TOKEN
Pour plus d’informations sur l’obtention d’un jeton d’accès pour votre bot, consultez Authentifier les demandes de votre bot auprès du service Bot Connector.
En-têtes de réponse
En plus des en-têtes de réponse HTTP standard, chaque réponse contient un X-Correlating-OperationId en-tête. La valeur de cet en-tête est un ID qui correspond à l’entrée du journal Bot Framework, qui contient des détails sur la demande. Lorsque vous recevez une réponse d’erreur, vous devez capturer la valeur de cet en-tête. Si vous n’êtes pas en mesure de résoudre le problème indépendamment, incluez cette valeur dans les informations que vous fournissez à l’équipe du support technique lorsque vous signalez le problème.
Codes d’état HTTP
Le code d’état HTTP retourné avec chaque réponse indique le résultat de la requête correspondante.
Note
Le tableau suivant décrit les codes d’état HTTP les plus courants. Certaines erreurs sont générées par le canal. Pour plus d’informations, vous devrez peut-être lire la documentation du développeur du canal.
| Code d’état HTTP | Meaning |
|---|---|
| 200 | La demande a abouti. |
| 201 | La demande a abouti. |
| 202 | La demande a été acceptée pour traitement. |
| 204 | La demande a réussi, mais aucun contenu n’a été retourné. |
| 400 | La demande a été incorrecte ou incorrecte. |
| 401 | Le bot n’est pas encore authentifié. |
| 403 | Le bot n’est pas autorisé à effectuer l’opération demandée. |
| 404 | La ressource demandée n’a pas été trouvée. |
| 405 | Le canal ne prend pas en charge l’opération demandée. |
| 500 | Une erreur de serveur interne s’est produite. |
| 503 | Le service est temporairement indisponible. |
Errors
Toute réponse qui spécifie un code d’état HTTP dans la plage 4xx ou 5xx inclut un objet ErrorResponse dans le corps de la réponse qui fournit des informations sur l’erreur. Si vous recevez une réponse d’erreur dans la plage 4xx, inspectez l’objet ErrorResponse pour identifier la cause de l’erreur et résoudre votre problème avant de renvoyer la requête.
Opérations de conversation
Utilisez ces opérations pour créer des conversations, envoyer des messages (activités) et gérer le contenu des conversations.
Important
Tous les canaux ne prennent pas en charge tous les points de terminaison. Toutefois, tous les canaux doivent prendre en charge la réponse au point de terminaison d’activité .
Par exemple, seuls Direct Line et Chat Web prennent en charge le point de terminaison obtenir des conversations.
| Operation | Description |
|---|---|
| Créer une conversation | Crée une nouvelle conversation. |
| Supprimer l’activité | Supprime une activité existante. |
| Supprimer un membre de conversation | Supprime un membre d’une conversation. |
| Obtenir des membres d’activité | Obtient les membres de l’activité spécifiée dans la conversation spécifiée. |
| Obtenir un membre de conversation | Obtient des détails sur un membre d’une conversation. |
| Obtenir des membres de conversation | Obtient les membres de la conversation spécifiée. |
| Obtenir des membres paginés de conversation | Obtient les membres de la conversation spécifiée une page à la fois. |
| Obtenir des conversations | Obtient la liste des conversations auxquelles le bot a participé. |
| Répondre à l’activité | Envoie une activité (message) à la conversation spécifiée, en tant que réponse à l’activité spécifiée. |
| Envoyer l’historique des conversations | Charge une transcription des activités passées dans la conversation. |
| Envoyer à la conversation | Envoie une activité (message) à la fin de la conversation spécifiée. |
| Activité de mise à jour | Met à jour une activité existante. |
| Charger la pièce jointe sur le canal | Charge une pièce jointe directement dans le stockage d’objets blob d’un canal. |
Créer une conversation
Crée une nouvelle conversation.
POST /v3/conversations
| Contenu | Description |
|---|---|
| Corps de la demande | Objet ConversationParameters |
| Retour | Objet ConversationResourceResponse |
Supprimer l’activité
Certains canaux vous permettent de supprimer une activité existante. Si elle réussit, cette opération supprime l’activité spécifiée de la conversation spécifiée.
DELETE /v3/conversations/{conversationId}/activities/{activityId}
| Contenu | Description |
|---|---|
| Corps de la demande | n/a |
| Retour | Code d’état HTTP qui indique le résultat de l’opération. Rien n’est spécifié dans le corps de la réponse. |
Supprimer un membre de conversation
Supprime un membre d’une conversation. Si ce membre était le dernier membre de la conversation, la conversation sera également supprimée.
DELETE /v3/conversations/{conversationId}/members/{memberId}
| Contenu | Description |
|---|---|
| Corps de la demande | n/a |
| Retour | Code d’état HTTP qui indique le résultat de l’opération. Rien n’est spécifié dans le corps de la réponse. |
Obtenir des membres d’activité
Obtient les membres de l’activité spécifiée dans la conversation spécifiée.
GET /v3/conversations/{conversationId}/activities/{activityId}/members
| Contenu | Description |
|---|---|
| Corps de la demande | n/a |
| Retour | Tableau d’objets ChannelAccount |
Obtenir des conversations
Obtient la liste des conversations auxquelles le bot a participé.
GET /v3/conversations?continuationToken={continuationToken}
| Contenu | Description |
|---|---|
| Corps de la demande | n/a |
| Retour | Objet ConversationsResult |
Obtenir un membre de conversation
Obtient des détails sur un membre spécifique d’une conversation spécifique.
GET /v3/conversations/{conversationId}/members/{memberId}
| Contenu | Description |
|---|---|
| Corps de la demande | n/a |
| Retour | Objet ChannelAccount pour le membre. |
Obtenir les membres de la conversation
Obtient les membres de la conversation spécifiée.
GET /v3/conversations/{conversationId}/members
| Contenu | Description |
|---|---|
| Corps de la demande | n/a |
| Retour | Tableau d’objets ChannelAccount pour les membres de la conversation. |
Obtenir des membres paginés de conversation
Obtient les membres de la conversation spécifiée une page à la fois.
GET /v3/conversations/{conversationId}/pagedmembers?pageSize={pageSize}&continuationToken={continuationToken}
| Contenu | Description |
|---|---|
| Corps de la demande | n/a |
| Retour | Objet PagedMembersResult |
Répondre à l’activité
Envoie une activité (message) à la conversation spécifiée, en tant que réponse à l’activité spécifiée. L’activité est ajoutée en tant que réponse à une autre activité, si le canal le prend en charge. Si le canal ne prend pas en charge les réponses imbriquées, cette opération se comporte comme Envoyer à la conversation.
POST /v3/conversations/{conversationId}/activities/{activityId}
| Contenu | Description |
|---|---|
| Corps de la demande | Objet Activity |
| Retour | Objet ResourceResponse |
Envoyer l’historique des conversations
Charge une transcription des activités passées dans la conversation afin que le client puisse les afficher.
POST /v3/conversations/{conversationId}/activities/history
| Contenu | Description |
|---|---|
| Corps de la demande | Objet Transcript . |
| Retour | Objet ResourceResponse . |
Envoyer à la conversation
Envoie une activité (message) à la conversation spécifiée. L’activité est ajoutée à la fin de la conversation en fonction de l’horodatage ou de la sémantique du canal. Pour répondre à un message spécifique au sein de la conversation, utilisez plutôt Répondre à l’activité .
POST /v3/conversations/{conversationId}/activities
| Contenu | Description |
|---|---|
| Corps de la demande | Objet Activity |
| Retour | Objet ResourceResponse |
Activité de mise à jour
Certains canaux vous permettent de modifier une activité existante pour refléter le nouvel état d’une conversation de bot. Par exemple, vous pouvez supprimer des boutons d’un message dans la conversation une fois que l’utilisateur a cliqué sur l’un des boutons. Si elle réussit, cette opération met à jour l’activité spécifiée dans la conversation spécifiée.
PUT /v3/conversations/{conversationId}/activities/{activityId}
| Contenu | Description |
|---|---|
| Corps de la demande | Objet Activity |
| Retour | Objet ResourceResponse |
Charger la pièce jointe sur le canal
Charge une pièce jointe pour la conversation spécifiée directement dans le stockage d’objets blob d’un canal. Cela vous permet de stocker des données dans un magasin conforme.
POST /v3/conversations/{conversationId}/attachments
| Contenu | Description |
|---|---|
| Corps de la demande | Objet AttachmentData . |
| Retour | Objet ResourceResponse . La propriété ID spécifie l’ID de pièce jointe qui peut être utilisé avec l’opération Obtenir les informations de pièce jointe et l’opération Obtenir la pièce jointe . |
Opérations de pièce jointe
Utilisez ces opérations pour récupérer des informations sur une pièce jointe ainsi que les données binaires du fichier lui-même.
| Operation | Description |
|---|---|
| Obtenir des informations sur les pièces jointes | Obtient des informations sur la pièce jointe spécifiée, notamment le nom de fichier, le type de fichier et les vues disponibles (par exemple, original ou miniature). |
| Obtenir une pièce jointe | Obtient la vue spécifiée de la pièce jointe spécifiée en tant que contenu binaire. |
Obtenir des informations sur la pièce jointe
Obtient des informations sur la pièce jointe spécifiée, notamment le nom de fichier, le type et les vues disponibles (par exemple, original ou miniature).
GET /v3/attachments/{attachmentId}
| Contenu | Description |
|---|---|
| Corps de la demande | n/a |
| Retour | Objet AttachmentInfo |
Obtenir une pièce jointe
Obtient la vue spécifiée de la pièce jointe spécifiée en tant que contenu binaire.
GET /v3/attachments/{attachmentId}/views/{viewId}
| Contenu | Description |
|---|---|
| Corps de la demande | n/a |
| Retour | Contenu binaire qui représente la vue spécifiée de la pièce jointe spécifiée |
Opérations d’état (déconseillées)
Le service Microsoft Bot Framework State a été mis hors service le 30 mars 2018. Auparavant, les bots basés sur Azure AI Bot Service ou le kit de développement logiciel (SDK) Bot Builder avaient une connexion par défaut à ce service hébergé par Microsoft pour stocker les données Bot State. Les bots doivent être mis à jour pour utiliser leur propre stockage d’état.
| Operation | Description |
|---|---|
Set User Data |
Stocke les données d’état d’un utilisateur spécifique sur un canal. |
Set Conversation Data |
Stocke les données d’état d’une conversation spécifique sur un canal. |
Set Private Conversation Data |
Stocke les données d’état d’un utilisateur spécifique dans le contexte d’une conversation spécifique sur un canal. |
Get User Data |
Récupère les données d’état qui ont été précédemment stockées pour un utilisateur spécifique dans toutes les conversations sur un canal. |
Get Conversation Data |
Récupère les données d’état précédemment stockées pour une conversation spécifique sur un canal. |
Get Private Conversation Data |
Récupère les données d’état précédemment stockées pour un utilisateur spécifique dans le contexte d’une conversation spécifique sur un canal. |
Delete State For User |
Supprime les données d’état précédemment stockées pour un utilisateur. |
Schema
Le schéma Bot Framework définit les objets et leurs propriétés que votre bot peut utiliser pour communiquer avec un utilisateur.
| Object | Description |
|---|---|
| Objet d’activité | Définit un message échangé entre le bot et l’utilisateur. |
| AnimationCard (objet) | Définit une carte qui peut lire des GIF animées ou des vidéos courtes. |
| Objet Attachment | Définit des informations supplémentaires à inclure dans le message. Une pièce jointe peut être un fichier multimédia (par exemple, audio, vidéo, image, fichier) ou une carte riche. |
| Objet AttachmentData | Décrit des données de pièce jointe. |
| Objet AttachmentInfo | Décrit une pièce jointe. |
| Objet AttachmentView | Définit un objet qui représente une vue disponible pour une pièce jointe. |
| AudioCard (objet) | Définit une carte qui peut lire un fichier audio. |
| Objet CardAction | Définit une action à effectuer. |
| Objet CardImage | Définit une image à afficher sur une carte. |
| Objet ChannelAccount | Définit un bot ou un compte d’utilisateur sur le canal. |
| Objet ConversationAccount | Définit une conversation dans un canal. |
| Objet ConversationMembers | Définit les membres d’une conversation. |
| Objet ConversationParameters | Définir des paramètres pour la création d’une conversation |
| Objet ConversationReference | Définit un point particulier dans une conversation. |
| Objet ConversationResourceResponse | Définit une réponse à créer une conversation. |
| Objet ConversationsResult | Définit le résultat d’un appel pour obtenir des conversations. |
| Objet Entity | Définit un objet d’entité. |
| Error (objet) | Définit une erreur. |
| ErrorResponse (objet) | Définit une réponse d’API HTTP. |
| Objet fact | Définit une paire clé-valeur qui contient un fait. |
| Objet GeoCoordinates | Définit un emplacement géographique à l’aide des coordonnées WSG84 (World Geodetic System). |
| HeroCard (objet) | Définit une carte avec une grande image, un titre, un texte et des boutons d’action. |
| InnerHttpError (objet) | Objet représentant une erreur HTTP interne. |
| Objet MediaEventValue | Paramètre supplémentaire pour les événements multimédias. |
| Objet MediaUrl | Définit l’URL vers la source d’un fichier multimédia. |
| Objet Mention | Définit un utilisateur ou un bot mentionné dans la conversation. |
| MessageReaction (objet) | Définit une réaction à un message. |
| PagedMembersResult (objet) | Page des membres retournés par Obtenir les membres paginés de conversation. |
| Place (objet) | Définit un endroit mentionné dans la conversation. |
| Objet ReceiptCard | Définit une carte qui contient un reçu pour un achat. |
| Objet ReceiptItem | Définit un élément de ligne dans un reçu. |
| ResourceResponse (objet) | Définit une ressource. |
| SemanticAction (objet) | Définit une référence à une action programmatique. |
| Objet SignInCard | Définit une carte qui permet à un utilisateur de se connecter à un service. |
| Objet SuggestedActions | Définit les options à partir desquelles un utilisateur peut choisir. |
| TextHighlight (objet) | Fait référence à une sous-chaîne de contenu dans un autre champ. |
| Objet ThumbnailCard | Définit une carte avec une image miniature, un titre, un texte et des boutons d’action. |
| Objet ThumbnailUrl | Définit l’URL vers la source d’une image. |
| Objet Transcript | Collection d’activités à charger à l’aide de l’historique des conversations d’envoi. |
| Objet VideoCard | Définit une carte qui peut lire des vidéos. |
Objet d’activité
Définit un message échangé entre le bot et l’utilisateur.
| Propriété | Type | Description |
|---|---|---|
| action | String | Action à appliquer ou appliquée. Utilisez la propriété de type pour déterminer le contexte de l’action. Par exemple, si le type est contactRelationUpdate, la valeur de la propriété d’action est ajoutée si l’utilisateur a ajouté votre bot à sa liste de contacts, ou supprimer s’il a supprimé votre bot de sa liste de contacts. |
| attachmentLayout | String | Disposition des pièces jointes de carte enrichie que le message inclut. Une de ces valeurs : carrousel, liste. Pour plus d’informations sur les pièces jointes de carte enrichie, consultez Ajouter des pièces jointes à des cartes enrichies aux messages. |
| Pièces jointes | Pièce jointe[] | Tableau d’objets Attachment qui définit des informations supplémentaires à inclure dans le message. Chaque pièce jointe peut être un fichier (par exemple, audio, vidéo, image) ou une carte riche. |
| callerId | String | Chaîne contenant une IRI identifiant l’appelant d’un bot. Ce champ n’est pas destiné à être transmis via le réseau, mais est plutôt rempli par des bots et des clients basés sur des données vérifiables par chiffrement qui affirment l’identité des appelants (par exemple, des jetons). |
| channelData | Object | Objet contenant du contenu spécifique au canal. Certains canaux fournissent des fonctionnalités qui nécessitent des informations supplémentaires qui ne peuvent pas être représentées à l’aide du schéma de pièce jointe. Dans ce cas, définissez cette propriété sur le contenu spécifique au canal tel que défini dans la documentation du canal. Pour plus d’informations, consultez Implémenter des fonctionnalités spécifiques au canal. |
| channelId | String | Un identifiant qui identifie de manière unique le canal. Défini par le canal. |
| code | String | Code indiquant pourquoi la conversation s’est terminée. |
| conversation | ConversationAccount | Objet ConversationAccount qui définit la conversation à laquelle appartient l’activité. |
| deliveryMode | String | Indicateur de remise pour signaler au destinataire d’autres chemins de remise de l’activité. Une de ces valeurs : normale, notification. |
| entités | object[] | Tableau d’objets qui représente les entités mentionnées dans le message. Les objets de ce tableau peuvent être n’importe quel objet Schema.org . Par exemple, le tableau peut inclure des objets Mention qui identifient une personne qui a été mentionnée dans la conversation et placer des objets qui identifient un lieu mentionné dans la conversation. |
| expiration | String | Heure à laquelle l’activité doit être considérée comme « expirée » et ne doit pas être présentée au destinataire. |
| from | ChannelAccount | Objet ChannelAccount qui spécifie l’expéditeur du message. |
| historyDisclosed | Boolean | Indicateur qui indique si l’historique est divulgué ou non. La valeur par défaut est False. |
| id | String | ID qui identifie de façon unique l’activité sur le canal. |
| importance | String | Définit l’importance d’une activité. L’une de ces valeurs : faible, normal, élevé. |
| inputHint | String | Valeur qui indique si votre bot accepte, attend ou ignore l’entrée de l’utilisateur une fois le message remis au client. L’une de ces valeurs : acceptInput, expectingInput, ignoreingInput. |
| label | String | Étiquette descriptive de l’activité. |
| listenFor | Chaîne[] | Liste des expressions et références que les systèmes d’priming vocale et linguistique doivent écouter. |
| locale | String | Paramètres régionaux de la langue à utiliser pour afficher du texte dans le message, au format <language>-<country>. Le canal utilise cette propriété pour indiquer la langue de l’utilisateur, afin que votre bot puisse spécifier des chaînes d’affichage dans cette langue. La valeur par défaut est en-US. |
| localTimestamp | String | Date et heure auxquelles le message a été envoyé dans le fuseau horaire local, exprimé au format ISO-8601 . |
| localTimezone | String | Contient le nom du fuseau horaire local du message, exprimé au format de base de données de fuseau horaire IANA. Par exemple, l’Amérique/Los_Angeles. |
| membersAdded | ChannelAccount[] | Tableau d’objets ChannelAccount qui représente la liste des utilisateurs qui ont rejoint la conversation. Présentez uniquement si le type d’activité est « conversationUpdate » et que les utilisateurs ont rejoint la conversation. |
| membersRemoved | ChannelAccount[] | Tableau d’objets ChannelAccount qui représente la liste des utilisateurs qui ont quitté la conversation. Présentez uniquement si le type d’activité est « conversationUpdate » et que les utilisateurs ont quitté la conversation. |
| nom | String | Nom de l’opération à appeler ou nom de l’événement. |
| réactionsAdded | MessageReaction[] | Collection de réactions ajoutées à la conversation. |
| reactionsRemoved | MessageReaction[] | Collection de réactions supprimées de la conversation. |
| recipient | ChannelAccount | Objet ChannelAccount qui spécifie le destinataire du message. |
| relatesTo | ConversationReference | Objet ConversationReference qui définit un point particulier dans une conversation. |
| replyToId | String | ID du message auquel ce message répond. Pour répondre à un message envoyé par l’utilisateur, définissez cette propriété sur l’ID du message de l’utilisateur. Tous les canaux ne prennent pas en charge les réponses threaded. Dans ces cas, le canal ignore cette propriété et utilise la sémantique chronologique ordonnée (timestamp) pour ajouter le message à la conversation. |
| semanticAction | SemanticAction | Objet SemanticAction qui représente une référence à une action programmatique. |
| serviceUrl | String | URL qui spécifie le point de terminaison de service du canal. Défini par le canal. |
| parler | String | Texte à prononcer par votre bot sur un canal avec reconnaissance vocale. Pour contrôler différentes caractéristiques de la voix, de la vitesse, du volume, de la prononciation et du pitch de votre bot, spécifiez cette propriété au format SSML (Speech Synthesis Markup Language). |
| suggestionsActions | SuggestionsActions | Objet SuggestedActions qui définit les options à partir desquelles l’utilisateur peut choisir. |
| summary | String | Résumé des informations contenues dans le message. Par exemple, pour un message envoyé sur un canal de messagerie, cette propriété peut spécifier les 50 premiers caractères du message électronique. |
| text | String | Texte du message envoyé de l’utilisateur au bot ou au bot à l’utilisateur. Consultez la documentation du canal pour connaître les limites imposées au contenu de cette propriété. |
| textFormat | String | Format du texte du message. L’une de ces valeurs : markdown, plain, xml. Pour plus d’informations sur le format texte, consultez Créer des messages. |
| textHighlights | TextHighlight[] | Collection de fragments de texte à mettre en surbrillance lorsque l’activité contient une valeur replyToId . |
| timestamp | String | Date et heure auxquelles le message a été envoyé dans le fuseau horaire UTC, exprimé au format ISO-8601 . |
| topicName | String | Rubrique de la conversation à laquelle appartient l’activité. |
| type | String | Type d’activité. L’une de ces valeurs : message, contactRelationUpdate, conversationUpdate, saisie, endOfConversation, événement, invoke, deleteUserData, messageUpdate, messageDelete, installationUpdate, messageReaction, suggestion, trace, transfert. Pour plus d’informations sur les types d’activités, consultez la spécification du protocole d’activité. |
| valeur | Object | Valeur sans limite. |
| valueType | String | Type de l’objet valeur de l’activité. |
AnimationCard (objet)
Définit une carte qui peut lire des GIF animées ou des vidéos courtes.
| Propriété | Type | Description |
|---|---|---|
| aspect | Boolean | Proportions de l’espace réservé miniature/média. Les valeurs autorisées sont « 16:9 » et « 4:3 ». |
| autoloop | Boolean | Indicateur qui indique s’il faut relire la liste des gif animés lorsque le dernier se termine. Définissez cette propriété sur true pour relire automatiquement l’animation ; sinon, false. La valeur par défaut est true. |
| démarrage automatique | Boolean | Indicateur qui indique s’il faut lire automatiquement l’animation lorsque la carte est affichée. Définissez cette propriété sur true pour lire automatiquement l’animation ; sinon, false. La valeur par défaut est true. |
| boutons | CardAction[] | Tableau d’objets CardAction qui permettent à l’utilisateur d’effectuer une ou plusieurs actions. Le canal détermine le nombre de boutons que vous pouvez spécifier. |
| duration | String | Longueur du contenu multimédia, au format de durée ISO 8601. |
| image | ThumbnailUrl | Objet ThumbnailUrl qui spécifie l’image à afficher sur la carte. |
| media | MediaUrl[] | Tableau d’objets MediaUrl . Lorsque ce champ contient plusieurs URL, chaque URL est un autre format du même contenu. |
| partageable | Boolean | Indicateur qui indique si l’animation peut être partagée avec d’autres personnes. Définissez cette propriété sur true si l’animation peut être partagée ; sinon, false. La valeur par défaut est true. |
| sous-titre | String | Sous-titre à afficher sous le titre de la carte. |
| text | String | Description ou invite à afficher sous le titre ou le sous-titre de la carte. |
| titre | String | Titre de la carte. |
| valeur | Object | Paramètre supplémentaire pour cette carte. |
Objet Attachment
Définit des informations supplémentaires à inclure dans le message. Une pièce jointe peut être un fichier (par exemple, une image, un audio ou une vidéo) ou une carte riche.
| Propriété | Type | Description |
|---|---|---|
| contenu | Object | Contenu de la pièce jointe. Si la pièce jointe est une carte enrichie, définissez cette propriété sur l’objet de carte riche. Cette propriété et la propriété contentUrl s’excluent mutuellement. |
| contentType | String | Type de média du contenu dans la pièce jointe. Pour les fichiers multimédias, définissez cette propriété sur des types multimédias connus tels que image/png, audio/wav et vidéo/mp4. Pour les cartes enrichies, définissez cette propriété sur l’un de ces types spécifiques au fournisseur :
|
| contentUrl | String | URL du contenu de la pièce jointe. Par exemple, si la pièce jointe est une image, vous pouvez définir contentUrl sur l’URL qui représente l’emplacement de l’image. Les protocoles pris en charge sont : HTTP, HTTPS, Fichier et Données. |
| nom | String | Nom de la pièce jointe. |
| thumbnailUrl | String | URL d’une image miniature que le canal peut utiliser s’il prend en charge l’utilisation d’une autre forme de contenu ou contentUrl plus petite. Par exemple, si vous définissez contentType sur application/word et définissez contentUrl sur l’emplacement du document Word, vous pouvez inclure une image miniature qui représente le document. Le canal pourrait afficher l’image miniature au lieu du document. Lorsque l’utilisateur clique sur l’image, le canal ouvre le document. |
Objet AttachmentData
Décrit les données d’une pièce jointe.
| Propriété | Type | Description |
|---|---|---|
| nom | String | Nom de la pièce jointe. |
| originalBase64 | String | Contenu de pièce jointe. |
| thumbnailBase64 | String | Contenu miniature de pièce jointe. |
| type | String | Type de contenu de la pièce jointe. |
Objet AttachmentInfo
Métadonnées d’une pièce jointe.
| Propriété | Type | Description |
|---|---|---|
| nom | String | Nom de la pièce jointe. |
| type | String | Type de contenu de la pièce jointe. |
| views | AttachmentView[] | Tableau d’objets AttachmentView qui représentent les vues disponibles pour la pièce jointe. |
Objet AttachmentView
Définit un objet qui représente une vue disponible pour une pièce jointe.
| Propriété | Type | Description |
|---|---|---|
| taille | Number | Taille du fichier. |
| viewId | String | ID d’affichage. |
AudioCard (objet)
Définit une carte qui peut lire un fichier audio.
| Propriété | Type | Description |
|---|---|---|
| aspect | String | Proportions de la miniature spécifiée dans la propriété d’image . Les valeurs valides sont 16:9 et 4:3. |
| autoloop | Boolean | Indicateur qui indique s’il faut relire la liste des fichiers audio lorsque le dernier se termine. Définissez cette propriété sur true pour relire automatiquement les fichiers audio ; sinon, false. La valeur par défaut est true. |
| démarrage automatique | Boolean | Indicateur qui indique s’il faut lire automatiquement l’audio lorsque la carte est affichée. Définissez cette propriété sur true pour lire automatiquement l’audio ; sinon, false. La valeur par défaut est true. |
| boutons | CardAction[] | Tableau d’objets CardAction qui permettent à l’utilisateur d’effectuer une ou plusieurs actions. Le canal détermine le nombre de boutons que vous pouvez spécifier. |
| duration | String | Longueur du contenu multimédia, au format de durée ISO 8601. |
| image | ThumbnailUrl | Objet ThumbnailUrl qui spécifie l’image à afficher sur la carte. |
| media | MediaUrl[] | Tableau d’objets MediaUrl . Lorsque ce champ contient plusieurs URL, chaque URL est un autre format du même contenu. |
| partageable | Boolean | Indicateur qui indique si les fichiers audio peuvent être partagés avec d’autres personnes. Définissez cette propriété sur true si l’audio peut être partagé ; sinon, false. La valeur par défaut est true. |
| sous-titre | String | Sous-titre à afficher sous le titre de la carte. |
| text | String | Description ou invite à afficher sous le titre ou le sous-titre de la carte. |
| titre | String | Titre de la carte. |
| valeur | Object | Paramètre supplémentaire pour cette carte. |
Objet CardAction
Définit une action cliquable avec un bouton.
| Propriété | Type | Description |
|---|---|---|
| channelData | String | Données spécifiques au canal associées à cette action. |
| displayText | String | Texte à afficher dans le flux de conversation si le bouton est cliqué. |
| image | String | URL d’image qui s’affiche sur le bouton, en regard de l’étiquette de texte. |
| text | String | Texte de l’action. |
| titre | String | Description de texte qui s’affiche sur le bouton. |
| type | String | Type d’action à effectuer. Pour obtenir la liste des valeurs valides, consultez Ajouter des pièces jointes de carte enrichie aux messages. |
| valeur | Object | Paramètre supplémentaire pour l’action. Le comportement de cette propriété varie en fonction du type d’action. Pour plus d’informations, consultez Ajouter des pièces jointes de carte enrichie aux messages. |
Objet CardImage
Définit une image à afficher sur une carte.
| Propriété | Type | Description |
|---|---|---|
| Alt | String | Description de l’image. Vous devez inclure la description pour prendre en charge l’accessibilité. |
| appuyez sur | CardAction | Objet CardAction qui spécifie l’action à effectuer si l’utilisateur appuie ou clique sur l’image. |
| url | String | URL vers la source de l’image ou le binaire base64 de l’image (par exemple, data:image/png;base64,iVBORw0KGgo...). |
Objet ChannelAccount
Définit un bot ou un compte d’utilisateur sur le canal.
| Propriété | Type | Description |
|---|---|---|
| aadObjectId | String | ID d'objet de ce compte dans Microsoft Entra ID. |
| id | String | ID unique pour l’utilisateur ou le bot sur ce canal. |
| nom | String | Nom convivial du bot ou de l’utilisateur. |
| rôle | String | Rôle de l’entité derrière le compte. Utilisateur ou bot. |
Objet ConversationAccount
Définit une conversation dans un canal.
| Propriété | Type | Description |
|---|---|---|
| aadObjectId | String | ID d'objet de ce compte dans Microsoft Entra ID. |
| conversationType | String | Indique le type de la conversation dans les canaux qui distinguent les types de conversation (par exemple, groupe ou personnel). |
| id | String | ID qui identifie la conversation. L’ID est unique par canal. Si le canal démarre la conversation, il définit cet ID ; sinon, le bot définit cette propriété sur l’ID qu’il récupère dans la réponse lors du démarrage de la conversation (voir Créer une conversation). |
| isGroup | Boolean | Indicateur pour indiquer si la conversation contient plus de deux participants au moment où l’activité a été générée. Défini sur true s’il s’agit d’une conversation de groupe ; sinon, false. La valeur par défaut est false. |
| nom | String | Nom complet qui peut être utilisé pour identifier la conversation. |
| rôle | String | Rôle de l’entité derrière le compte. Utilisateur ou bot. |
| tenantId | String | ID de locataire de cette conversation. |
Objet ConversationMembers
Définit les membres d’une conversation.
| Propriété | Type | Description |
|---|---|---|
| id | String | ID de conversation. |
| membres | ChannelAccount[] | Liste des membres de cette conversation. |
Objet ConversationParameters
Définit des paramètres pour la création d’une conversation.
| Propriété | Type | Description |
|---|---|---|
| activité | Activité | Message initial à envoyer à la conversation lors de sa création. |
| Bot | ChannelAccount | Informations de compte de canal nécessaires pour acheminer un message vers le bot. |
| channelData | Object | Charge utile spécifique au canal pour la création de la conversation. |
| isGroup | Boolean | Indique s’il s’agit d’une conversation de groupe. |
| membres | ChannelAccount[] | Informations de compte de canal nécessaires pour acheminer un message vers chaque utilisateur. |
| tenantId | String | ID de locataire dans lequel la conversation doit être créée. |
| topicName | String | Sujet de la conversation. Cette propriété est utilisée uniquement si un canal le prend en charge. |
Objet ConversationReference
Définit un point particulier dans une conversation.
| Propriété | Type | Description |
|---|---|---|
| activityId | String | ID qui identifie de manière unique l’activité référencée par cet objet. |
| Bot | ChannelAccount | Objet ChannelAccount qui identifie le bot dans la conversation référencée par cet objet. |
| channelId | String | ID qui identifie de manière unique le canal dans la conversation référencée par cet objet. |
| conversation | ConversationAccount | Objet ConversationAccount qui définit la conversation référencée par cet objet. |
| serviceUrl | String | URL qui spécifie le point de terminaison de service du canal dans la conversation référencée par cet objet. |
| user | ChannelAccount | Objet ChannelAccount qui identifie l’utilisateur dans la conversation référencée par cet objet. |
Objet ConversationResourceResponse
Définit une réponse à créer une conversation.
| Propriété | Type | Description |
|---|---|---|
| activityId | String | ID de l’activité, s’il est envoyé. |
| id | String | ID de la ressource. |
| serviceUrl | String | Point de terminaison de service où des opérations concernant la conversation peuvent être effectuées. |
Objet ConversationsResult
Définit le résultat de Get Conversations.
| Propriété | Type | Description |
|---|---|---|
| conversations | ConversationMembers[] | Membres de chacune des conversations. |
| continuationToken | String | Jeton de continuation qui peut être utilisé dans les appels suivants pour obtenir des conversations. |
Objet Entity
Objet de métadonnées relatif à une activité.
| Propriété | Type | Description |
|---|---|---|
| type | String | Type de cette entité (RFC 3987 IRI). |
objet d’erreur
Objet représentant des informations d’erreur.
| Propriété | Type | Description |
|---|---|---|
| code | String | Code d’erreur. |
| innerHttpError | InnerHttpError | Objet représentant l’erreur HTTP interne. |
| Message | String | Description de l’erreur. |
ErrorResponse (objet)
Définit une réponse d’API HTTP.
| Propriété | Type | Description |
|---|---|---|
| error | Error | Objet Error qui contient des informations sur l’erreur. |
Objet fact
Définit une paire clé-valeur qui contient un fait.
| Propriété | Type | Description |
|---|---|---|
| key | String | Nom du fait. Par exemple, archivage. La clé est utilisée comme étiquette lors de l’affichage de la valeur du fait. |
| valeur | String | Valeur du fait. Par exemple, le 10 octobre 2016. |
Objet GeoCoordinates
Définit un emplacement géographique à l’aide des coordonnées WSG84 (World Geodetic System).
| Propriété | Type | Description |
|---|---|---|
| élévation | Number | Élévation de l’emplacement. |
| latitude | Number | Latitude de l’emplacement. |
| longitude | Number | Longitude de l’emplacement. |
| nom | String | Nom de l’emplacement. |
| type | String | Type de cet objet. Toujours défini sur GeoCoordinates. |
HeroCard (objet)
Définit une carte avec une grande image, un titre, un texte et des boutons d’action.
| Propriété | Type | Description |
|---|---|---|
| boutons | CardAction[] | Tableau d’objets CardAction qui permettent à l’utilisateur d’effectuer une ou plusieurs actions. Le canal détermine le nombre de boutons que vous pouvez spécifier. |
| images | CardImage[] | Tableau d’objets CardImage qui spécifie l’image à afficher sur la carte. Une carte Héros ne contient qu’une seule image. |
| sous-titre | String | Sous-titre à afficher sous le titre de la carte. |
| appuyez sur | CardAction | Objet CardAction qui spécifie l’action à effectuer si l’utilisateur appuie ou clique sur la carte. Il peut s’agir de la même action que l’un des boutons ou d’une autre action. |
| text | String | Description ou invite à afficher sous le titre ou le sous-titre de la carte. |
| titre | String | Titre de la carte. |
InnerHttpError (objet)
Objet représentant une erreur HTTP interne.
| Propriété | Type | Description |
|---|---|---|
| statusCode | Number | Code d’état HTTP de la requête ayant échoué. |
| body | Object | Corps de la demande ayant échoué. |
Objet MediaEventValue
Paramètre supplémentaire pour les événements multimédias.
| Propriété | Type | Description |
|---|---|---|
| cardValue | Object | Paramètre de rappel spécifié dans le champ valeur de la carte multimédia provenant de cet événement. |
Objet MediaUrl
Définit l’URL vers la source d’un fichier multimédia.
| Propriété | Type | Description |
|---|---|---|
| profile | String | Conseil qui décrit le contenu du média. |
| url | String | URL vers la source du fichier multimédia. |
Objet Mention
Définit un utilisateur ou un bot mentionné dans la conversation.
| Propriété | Type | Description |
|---|---|---|
| mentionné | ChannelAccount | Objet ChannelAccount qui spécifie l’utilisateur ou le bot mentionné. Certains canaux, tels que Slack, attribuent des noms par conversation. Il est donc possible que le nom mentionné par votre bot (dans la propriété du destinataire du message) soit différent du handle que vous avez spécifié lors de l’inscription de votre bot. Toutefois, les ID de compte pour les deux seraient identiques. |
| text | String | L’utilisateur ou le bot comme mentionné dans la conversation. Par exemple, si le message est « @ColorBot choisir une nouvelle couleur », cette propriété est définie sur @ColorBot. Tous les canaux ne définissent pas cette propriété. |
| type | String | Type de cet objet. Toujours défini sur Mention. |
MessageReaction (objet)
Définit une réaction à un message.
| Propriété | Type | Description |
|---|---|---|
| type | String | Type de réaction. Comme ou plusOne. |
PagedMembersResult (objet)
Page des membres retournés par Obtenir les membres paginés de conversation.
| Propriété | Type | Description |
|---|---|---|
| continuationToken | String | Jeton de continuation qui peut être utilisé dans les appels suivants pour obtenir des membres paginés de conversation. |
| membres | ChannelAccount[] | Tableau de membres de conversation. |
Place (objet)
Définit un endroit mentionné dans la conversation.
| Propriété | Type | Description |
|---|---|---|
| adresse | Object | Adresse d’un lieu. Cette propriété peut être une chaîne ou un objet complexe de type PostalAddress. |
| geo | Géocoordinates | Objet GeoCoordinates qui spécifie les coordonnées géographiques de l’endroit. |
| hasMap | Object | Mappez à l’endroit. Cette propriété peut être une chaîne (URL) ou un objet complexe de type Map. |
| nom | String | Nom de l’endroit. |
| type | String | Type de cet objet. Toujours défini sur Place. |
Objet ReceiptCard
Définit une carte qui contient un reçu pour un achat.
| Propriété | Type | Description |
|---|---|---|
| boutons | CardAction[] | Tableau d’objets CardAction qui permettent à l’utilisateur d’effectuer une ou plusieurs actions. Le canal détermine le nombre de boutons que vous pouvez spécifier. |
| Faits | Fait[] | Tableau d’objets fact qui spécifient des informations sur l’achat. Par exemple, la liste des faits pour un reçu de séjour de l’hôtel peut inclure la date d’archivage et la date d’archivage. Le canal détermine le nombre de faits que vous pouvez spécifier. |
| Éléments | ReceiptItem[] | Tableau d’objets ReceiptItem qui spécifient les éléments achetés |
| appuyez sur | CardAction | Objet CardAction qui spécifie l’action à effectuer si l’utilisateur appuie ou clique sur la carte. Il peut s’agir de la même action que l’un des boutons ou d’une autre action. |
| Taxe | String | Chaîne au format monétaire qui spécifie le montant de la taxe appliquée à l’achat. |
| titre | String | Titre affiché en haut du reçu. |
| total | String | Chaîne au format monétaire qui spécifie le prix d’achat total, y compris toutes les taxes applicables. |
| tva | String | Chaîne au format monétaire qui spécifie le montant de la taxe sur la valeur ajoutée (TVA) appliquée au prix d’achat. |
Objet ReceiptItem
Définit un élément de ligne dans un reçu.
| Propriété | Type | Description |
|---|---|---|
| image | CardImage | Objet CardImage qui spécifie l’image miniature à afficher en regard de l’élément de ligne. |
| Prix | String | Chaîne au format monétaire qui spécifie le prix total de toutes les unités achetées. |
| quantité | String | Chaîne numérique qui spécifie le nombre d’unités achetées. |
| sous-titre | String | Sous-titre à afficher sous le titre de l’élément de ligne. |
| appuyez sur | CardAction | Objet CardAction qui spécifie l’action à effectuer si l’utilisateur appuie ou clique sur l’élément de ligne. |
| text | String | Description de l’élément de ligne. |
| titre | String | Titre de l’élément de ligne. |
ResourceResponse (objet)
Définit une réponse qui contient un ID de ressource.
| Propriété | Type | Description |
|---|---|---|
| id | String | ID qui identifie de façon unique la ressource. |
SemanticAction (objet)
Définit une référence à une action programmatique.
| Propriété | Type | Description |
|---|---|---|
| entités | Object | Objet où la valeur de chaque propriété est un objet Entity . |
| id | String | ID de cette action. |
| état | String | État de cette action. Valeurs autorisées : start, continue, done. |
Objet SignInCard
Définit une carte qui permet à un utilisateur de se connecter à un service.
| Propriété | Type | Description |
|---|---|---|
| boutons | CardAction[] | Tableau d’objets CardAction qui permettent à l’utilisateur de se connecter à un service. Le canal détermine le nombre de boutons que vous pouvez spécifier. |
| text | String | Description ou invite à inclure sur la carte de connexion. |
Objet SuggestedActions
Définit les options à partir desquelles un utilisateur peut choisir.
| Propriété | Type | Description |
|---|---|---|
| Actions | CardAction[] | Tableau d’objets CardAction qui définissent les actions suggérées. |
| to | Chaîne[] | Tableau de chaînes qui contient les ID des destinataires auxquels les actions suggérées doivent être affichées. |
TextHighlight (objet)
Fait référence à une sous-chaîne de contenu dans un autre champ.
| Propriété | Type | Description |
|---|---|---|
| occurrence | Number | Occurrence du champ de texte dans le texte référencé, s’il existe plusieurs. |
| text | String | Définit l’extrait de texte à mettre en surbrillance. |
Objet ThumbnailCard
Définit une carte avec une image miniature, un titre, un texte et des boutons d’action.
| Propriété | Type | Description |
|---|---|---|
| boutons | CardAction[] | Tableau d’objets CardAction qui permettent à l’utilisateur d’effectuer une ou plusieurs actions. Le canal détermine le nombre de boutons que vous pouvez spécifier. |
| images | CardImage[] | Tableau d’objets CardImage qui spécifient des images miniatures à afficher sur la carte. Le canal détermine le nombre d’images miniatures que vous pouvez spécifier. |
| sous-titre | String | Sous-titre à afficher sous le titre de la carte. |
| appuyez sur | CardAction | Objet CardAction qui spécifie l’action à effectuer si l’utilisateur appuie ou clique sur la carte. Il peut s’agir de la même action que l’un des boutons ou d’une autre action. |
| text | String | Description ou invite à afficher sous le titre ou le sous-titre de la carte. |
| titre | String | Titre de la carte. |
Objet ThumbnailUrl
Définit l’URL vers la source d’une image.
| Propriété | Type | Description |
|---|---|---|
| Alt | String | Description de l’image. Vous devez inclure la description pour prendre en charge l’accessibilité. |
| url | String | URL vers la source de l’image ou le binaire base64 de l’image (par exemple, data:image/png;base64,iVBORw0KGgo...). |
Objet Transcript
Collection d’activités à charger à l’aide de l’historique des conversations d’envoi.
| Propriété | Type | Description |
|---|---|---|
| activités | tableau | Tableau d’objets Activity . Ils doivent chacun avoir un ID unique et un horodatage. |
Objet VideoCard
Définit une carte qui peut lire des vidéos.
| Propriété | Type | Description |
|---|---|---|
| aspect | String | Proportions de la vidéo. 16:9 ou 4:3. |
| autoloop | Boolean | Indicateur qui indique s’il faut relire la liste des vidéos lorsque la dernière se termine. Définissez cette propriété sur true pour relire automatiquement les vidéos ; sinon, false. La valeur par défaut est true. |
| démarrage automatique | Boolean | Indicateur qui indique s’il faut lire automatiquement les vidéos lorsque la carte est affichée. Définissez cette propriété sur true pour lire automatiquement les vidéos ; sinon, false. La valeur par défaut est true. |
| boutons | CardAction[] | Tableau d’objets CardAction qui permettent à l’utilisateur d’effectuer une ou plusieurs actions. Le canal détermine le nombre de boutons que vous pouvez spécifier. |
| duration | String | Longueur du contenu multimédia, au format de durée ISO 8601. |
| image | ThumbnailUrl | Objet ThumbnailUrl qui spécifie l’image à afficher sur la carte. |
| media | MediaUrl[] | Tableau de MediaUrl. Lorsque ce champ contient plusieurs URL, chaque URL est un autre format du même contenu. |
| partageable | Boolean | Indicateur qui indique si les vidéos peuvent être partagées avec d’autres personnes. Définissez cette propriété sur true si les vidéos peuvent être partagées ; sinon, false. La valeur par défaut est true. |
| sous-titre | String | Sous-titre à afficher sous le titre de la carte. |
| text | String | Description ou invite à afficher sous le titre ou le sous-titre de la carte. |
| titre | String | Titre de la carte. |
| valeur | Object | Paramètre supplémentaire pour cette carte |