Referência de canais
APLICA-SE A: SDK v4
Este artigo descreve o suporte de canal para vários recursos do Bot Framework:
- Os tipos de atividade que cada canal pode enviar ou receber.
- Os tipos de cartões que cada canal pode exibir, incluindo Adaptive Cards.
- Ação de cartão e suporte de ação sugerida em cada canal.
- Uma classificação geral dos diferentes tipos de atividades.
Para obter informações detalhadas sobre a estrutura de atividades e cartões no nível do protocolo, consulte a atividade do Bot Framework e os esquemas de cartão.
Adaptive Cards é uma tecnologia separada. Para obter mais informações, consulte adaptivecards.io.
Suporte à atividade por canal
A tabela a seguir indica se um determinado canal pode enviar um determinado tipo de atividade para seu bot. Dentro da tabela, os seguintes termos têm os seguintes significados.
Termo | Significado |
---|---|
Sim | O bot pode receber essa atividade do canal. |
Não | O bot não pode receber essa atividade do canal. |
Não determinado | Atualmente indeterminado. |
Canal | Atualização da relação de contato | Atualização da conversação | Fim da conversa | Evento | Atualização de instalação | Invocar | Mensagem | Reação da mensagem | Atualização da mensagem | Exclusão de mensagem | Typing |
---|---|---|---|---|---|---|---|---|---|---|---|
Alexa | No | No | Sim | Sim | No | No | Sim | No | No | No | Não |
Azure Communication Services | Não | Sim | No | Sim | No | No | Sim | No | Sim | Sim | Sim |
Direct Line | Não | Sim | Sim | Sim | Sim | No | Sim | No | No | No | Sim |
Direct Line Speech | Sim | ||||||||||
No | No | Não | Não determinado | No | No | Sim | No | No | No | Não | |
Não | Sim | No | Sim | No | No | Sim | Sim | No | No | Não | |
GroupMe | Não | Sim | No | Não determinado | No | No | Sim | No | No | No | Não |
LINE | Não | Sim | No | Sim | No | No | Sim | No | No | No | Não |
Microsoft Teams | Não | Sim | No | Não determinado | Não | Sim | Sim | Sim | Sim | Sim | No |
Omnicanal | Sim | ||||||||||
Outlook (pré-visualização) | Sim | ||||||||||
Pesquisa (pré-visualização) | Sim | ||||||||||
Slack | Não | Sim | No | Não determinado | No | No | Sim | No | Sim | Sim | No |
Telegram | Não | Sim | No | Não determinado | No | No | Sim | No | Sim | Não determinado | Não |
Twilio (SMS) | No | No | Não | Não determinado | No | No | Sim | No | No | No | Não |
Web Chat | Não | Sim | Sim | Sim | Sim | No | Sim | No | No | No | Sim |
event
O suporte e invoke
as atividades variam de acordo com o nome da atividade e varia de acordo com o canal.
Suporte de cartão por canal
A tabela a seguir indica se um determinado canal pode renderizar um determinado tipo de cartão. Mesmo que um canal possa renderizar um tipo de cartão, o canal pode não suportar todos os recursos do cartão. Antes de liberar seu bot, teste o comportamento de cada cartão que seu bot pode enviar.
Dentro da tabela, os seguintes termos têm os seguintes significados.
Termo | Significado |
---|---|
Sim | O cartão é suportado neste canal; No entanto, qualquer canal pode suportar apenas um subconjunto de ações do cartão ou pode limitar o número de ações permitidas em cada cartão. |
Não | O cartão não é suportado neste canal. |
Parcial | Suporte parcial. Este canal pode não exibir o cartão se o cartão contiver entradas ou botões. O nível de suporte varia de acordo com o canal. |
Image | O cartão é convertido em imagem. |
Texto | O cartão é convertido em texto não formatado. Os links podem não ser clicáveis, as imagens podem não ser exibidas e a mídia pode não ser reproduzível. O nível de suporte varia de acordo com o canal. |
Canal | Cartão adaptável | Cartão de animação | Placa de áudio | Cartão de herói | Cartão de recibo | Cartão de início de sessão | Cartão de miniaturas | Placa de vídeo |
---|---|---|---|---|---|---|---|---|
Alexa | No | No | No | Sim | No | Sim | No | Não |
Azure Communication Services | Sim* | Sim | Sim | Sim | Sim | Sim | Sim | Sim |
Image | Texto | Texto | Sim | Sim | Sim | Sim | Texto | |
Imagem parcial | Sim | Sim | Sim | Sim | Sim | Sim | Sim | |
GroupMe | Image | Texto | Texto | Texto | Texto | Texto | Texto | Texto |
LINE | Imagem parcial | Sim | Texto | Sim | Sim | Sim | Sim | Texto |
Microsoft Teams | Sim | No | No | Sim | Sim | Sim | Sim | No |
Omnicanal | ||||||||
Outlook (pré-visualização) | ||||||||
Pesquisa (pré-visualização) | ||||||||
Slack | Imagem | Sim | Texto | Texto | Sim | Sim | Texto | Texto |
Telegram | Imagem parcial | Sim | Texto | Sim | Sim | Sim | Sim | Sim |
Twilio (SMS) | Image | Texto | Não | Texto | Texto | Texto | Texto | Não |
Web Chat | Sim | Sim | Sim | Sim | Sim | Sim | Sim | Sim |
Nota
- O canal Direct Line suporta tecnicamente todas as placas, mas cabe ao cliente implementá-las.
- *Para o Chat dos Serviços de Comunicação do Azure, os cartões adaptáveis são suportados apenas nos casos de uso dos Serviços de Comunicação do Azure e não nos casos de uso do Azure Communication Services to Teams.
Suporte à ação do cartão por canal
A tabela a seguir mostra o número máximo de ações sugeridas e ações de cartão que um determinado canal suporta. Um valor de "Nenhum" indica que o tipo de ação não é suportado no canal.
Canal | Ações sugeridas | Ações do cartão |
---|---|---|
Alexa | Nenhuma | Nenhuma |
Azure Communication Services | ||
Direct Line | 100 | 100 |
Direct Line Speech | 100 | 100 |
Nenhuma | Nenhuma | |
11 | 3 | |
GroupMe | Nenhuma | Nenhuma |
LINE | 13 | 99 |
Microsoft Teams | Nenhuma | 3 |
Omnicanal | ||
Outlook (pré-visualização) | ||
Pesquisa (pré-visualização) | ||
Slack | Nenhuma | 100 |
Telegram | 100 | 100 |
Twilio (SMS) | Nenhuma | Nenhuma |
Web Chat | 100 | 100 |
- Para obter mais informações sobre ações de cartão, consulte Processar eventos em cartões avançados no artigo Adicionar mídia a mensagens .
- Para obter mais informações sobre ações sugeridas, consulte como Usar botões para entrada.
Categorias de atividades
As atividades podem ser divididas em categorias separadas. Para obter uma descrição detalhada de cada tipo de atividade e as informações que cada tipo de atividade contém, consulte o esquema de atividade do Bot Framework.
Damos-lhe as boas-vindas
Esta categoria inclui as conversationUpdate
e contactRelationUpdate
atividades.
- Muitos canais enviam atividades de atualização de conversa.
- Muitas vezes, o comportamento de boas-vindas do bot é acionado pela atividade de atualização da conversa. No entanto, produzir um comportamento de boas-vindas confiável pode exigir o uso de conversação ou estado do usuário.
- Alguns canais enviam atividades de atualização da relação de contato.
- Se o bot usar esses canais, talvez seja necessário incluir lógica para essa atividade no comportamento de boas-vindas do bot.
Conversacional
Esta categoria inclui o message
, messageReaction
, e endOfConversation
atividades.
- Todos os canais podem enviar e receber atividades de mensagens.
- Para bots que usam caixas de diálogo, as atividades de mensagem geralmente devem ser passadas para a caixa de diálogo.
- Alguns canais podem enviar e receber atividades de reação de mensagens.
- Dependendo do design do seu bot, você pode passar atividades de reação de mensagem para uma caixa de diálogo.
- As atividades de reação de mensagens fazem referência a mensagens anteriores por ID.
- O fim das atividades de conversação sinaliza o fim de uma conversa da perspetiva do remetente.
- As atividades de fim de conversação são usadas na comunicação bot-to-bot para habilidades.
Gorjeta
Uma reação de mensagem inclui coisas como um polegar para cima em um comentário anterior. Eles podem acontecer fora de ordem, então eles podem ser pensados como semelhantes a botões. Esse tipo de atividade pode ser enviado pelo canal do Teams.
Atualização e exclusão de mensagens
Esta categoria inclui as messageUpdate
e messageDelete
atividades.
- O Teams suporta as atividades de atualização e exclusão de mensagens.
Extensibilidade do aplicativo
Esta categoria inclui as event
e invoke
atividades.
O significado da atividade é definido pelo seu name
campo, que é significativo no âmbito de um canal.
- Um aplicativo que possui o cliente e o servidor pode usar atividades de evento para comunicar informações programáticas entre o cliente e o servidor.
- As atividades de evento, como a maioria dos tipos de atividade, são assíncronas.
- O Direct Line e o Web Chat usam atividades de eventos como um mecanismo de extensibilidade.
- As atividades de invocação são específicas de um aplicativo e não algo que um cliente definiria.
- As atividades de invocação, ao contrário de outros tipos de atividade, são síncronas. (Invocar é atualmente o único tipo de atividade que dispara um comportamento de solicitação-resposta no bot.)
- O Microsoft Teams usa atividades de invocação e define algumas atividades de invocação específicas do Teams.
Autenticação
Para que o prompt OAuth funcione com caixas de diálogo, a TeamsVerification
atividade de chamada deve ser encaminhada para a caixa de diálogo.
Não Categorizado
O installationUpdate
, typing
e handoff
as atividades não se encaixam significativamente nas outras categorias.
- As atividades de atualização de instalação representam uma instalação ou desinstalação de um bot dentro de uma unidade organizacional de um canal.
- As atividades de digitação representam a entrada contínua de um usuário ou de um bot.
- As atividades de Handoff solicitam ou sinalizam uma mudança de foco entre os elementos dentro de um bot. A atividade de handoff é diferente de uma atividade de evento que tem o nome "handoff".
Fora de uso (inclui invocar pagamento específico)
Estes tipos de atividade não estão mais em uso:
deleteUserData
handoff
ping
Address
invocarPaymentRequest
invocar
Informações adicionais
Todos os canais podem enviar e receber message
atividades.
Gorjeta
Ao adicionar suporte para um canal ao seu bot, familiarize-se com os documentos do desenvolvedor do canal. Cada canal tem limitações diferentes em vários aspetos de uma conversa. Algumas das diferenças incluem:
- Quanto tempo o bot tem para lidar com cada solicitação HTTP.
- Se um bot pode enviar uma atividade que não é em resposta a uma atividade específica do usuário.
- Quantas mensagens o bot pode enviar dentro de um determinado período de tempo.
- Como um cartão é renderizado e quais cartões são suportados.