Criar abas para conversação
As subentidades conversacionais fornecem uma maneira de permitir que os usuários tenham conversas sobre subentidades em sua guia. Como uma tarefa específica, um paciente e uma oportunidade de vendas, em vez de discutir a guia inteira, também conhecida como entidade. Um canal tradicional ou uma guia configurável permite que o usuário tenha uma conversa sobre uma guia, mas o usuário requer uma conversa mais focada. O requisito para uma conversa mais focada pode surgir, se houver muito conteúdo para ter uma discussão centralizada ou porque o conteúdo mudou ao longo do tempo, tornando a conversa irrelevante para o conteúdo mostrado. As subentidades conversacionais fornecem uma experiência de conversa muito mais focada para guias dinâmicas.
As subentidades conversacionais só têm suporte em canais. Eles podem ser usados a partir de uma guia pessoal ou estática para criar ou continuar conversas em guias que já estão fixadas em um canal. A guia estática será útil se você quiser fornecer um local para um usuário exibir e acessar conversas acontecendo em vários canais.
Pré-requisitos
Para dar suporte a subentidades de conversa, seu aplicativo Web de guia deve ter a capacidade de armazenar um mapeamento entre conversas de subentidades ↔ em um banco de dados de back-end. O conversationId
é fornecido, mas você deve armazená-lo e devolvê-lo ao Teams para que conversationId
os usuários continuem a conversa.
Iniciar uma nova conversa
Para iniciar uma nova conversa, use a openConversation()
função. Iniciar e continuar uma conversa são todos tratados por esse método. As entradas para a função mudam dependendo de qual ação você deseja tomar, na perspectiva do usuário, isso abre o painel de conversa à direita da tela, seja para iniciar uma conversa ou continuar uma conversa.
microsoftTeams.conversations.openConversation(openConversationRequest);
openConversation usa as seguintes entradas para iniciar uma conversa em um canal:
- subEntityId: A ID de sua sub-entidade específica. Por exemplo, task-123.
- entityId: a ID da instância da guia quando ela foi criada. A ID é importante para fazer referência à mesma instância de guia.
- channelId: o canal no qual reside a instância da guia.
Observação
O channelId é opcional para guias de canal. No entanto, é recomendável manter a implementação entre o canal e as guias estáticas da mesma forma.
- título: o título que é mostrado ao usuário no painel de chat.
A maioria desses valores também pode ser recuperada da app.getContext()
API (microsoftTeams.getContext()
no TeamsJS v1). Para obter mais informações, consulte a interface PageInfo.
microsoftTeams.conversations.openConversation({“subEntityId”:”task-1”, “entityId”: “tabInstanceId-1”, “channelId”: ”19:baa6e71f65b948d189bf5c892baa8e5a@thread.skype”, “title”: "Task Title”});
A imagem a seguir mostra o painel de conversa:
Se o usuário iniciar uma conversa, é importante ouvir o retorno de chamada desse evento para recuperar e salvar a conversaId:
microsoftTeams.conversations.openConversation({
...,
onStartConversation: (conversationResponse) => {
// console.log(conversationResponse)
},
});
O conversationResponse
objeto contém informações relacionadas à conversa iniciada. É recomendável que você salve todas as propriedades desse objeto de resposta para uso posterior.
Continuar uma conversa
Depois que uma conversa é iniciada, chamadas subsequentes a openConversation()
serem necessárias, que você também forneça as mesmas entradas que em iniciar uma nova conversa, mas também inclua a conversationId. O painel de conversa é aberto para os usuários com a conversa apropriada em exibição. Os usuários podem ver mensagens novas ou de entrada em tempo real.
A imagem a seguir mostra o painel de conversa com a conversa apropriada:
Aprimorar uma conversa
É importante que sua guia inclua links profundos para sua sub-entidade. Por exemplo, o usuário selecionando o link profundo da guia chiclet na conversa do canal. O comportamento esperado é receber o link profundo, abrir essa sub entidade e, em seguida, abrir o painel de conversa para essa sub entidade.
Para dar suporte a subentidades de conversa da sua guia pessoal ou estática, você não precisa alterar nada em sua implementação. Só oferecemos suporte a conversas iniciais ou contínuas de guias de canal que já estão fixadas. O suporte a guias estáticas permite que você forneça um único local para que seus usuários interajam com todas as suas subentidades. É importante que você salve o , entityId
e channelId
quando sua subEntityId
guia é originalmente criada em um canal para ter as propriedades certas ao abrir o modo de exibição de conversa em uma guia estática.
Fechar uma conversa
Você pode fechar manualmente a exibição de conversa chamando a closeConversation()
função.
microsoftTeams.conversations.closeConversation();
Você também pode ouvir um evento quando os usuários selecionarem Fechar (X) no modo de exibição de conversa.
microsoftTeams.conversations.openConversation({
...,
onCloseConversation: (conversationResponse) => {
// console.log(conversationResponse)
},
});
Exemplo de código
Nome do exemplo | Descrição | .NET | Node.js | Manifesto |
---|---|---|---|---|
Criar guia Conversacional | Aplicativo de exemplo de guia do Microsoft Teams para demonstrar a guia criar conversa. | View | View | View |
Próxima etapa
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de