Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Anotações de contato descrevem as ações de comunicação que um aplicativo oferece para um contato, como exibir um perfil, enviar mensagens ou fazer chamadas. Este artigo mostra como declarar esses recursos e como Windows abre o contato relevante em seu aplicativo.
Antes de começar, adicione seus contatos ao Windows.
Declarar operações de comunicação suportadas
Os aplicativos podem declarar os recursos de comunicação compatíveis com um contato usando a propriedade SupportedOperations em ContactAnnotation.
A SupportedOperations propriedade especifica os tipos de ações de comunicação compatíveis com o aplicativo para interagir com um contato. Essas operações são definidas pela enumeração ContactAnnotationOperations .
Como ContactAnnotationOperations é uma enumeração de sinalizadores, várias operações podem ser combinadas usando o operador OR binário (|). Isso permite que os aplicativos indiquem todos os recursos de comunicação suportados para um contato em uma única anotação. Para obter mais informações sobre essa propriedade, consulte a referência de API para ContactAnnotation.SupportedOperations.
O exemplo a seguir mostra como declarar as operações de comunicação suportadas para um contato.
var annotation = new ContactAnnotation
{
ContactId = contact.Id,
RemoteId = contact.RemoteId,
SupportedOperations =
ContactAnnotationOperations.ContactProfile |
ContactAnnotationOperations.Message |
ContactAnnotationOperations.AudioCall |
ContactAnnotationOperations.VideoCall |
ContactAnnotationOperations.SocialFeeds
};
await this.contactAnnotationList.TrySaveAnnotationAsync(annotation);
Neste exemplo, a anotação declara para Windows que o aplicativo dá suporte à exibição do perfil de contato, ao envio de mensagens, à realização de chamadas de áudio ou vídeo e ao acesso a atualizações de feed social para o contato especificado.
Os aplicativos devem definir as operações suportadas para representar com precisão os recursos de interação e comunicação disponíveis para o contato dentro do aplicativo.
Tratar ativação de comunicação
Quando os usuários selecionam uma ação de comunicação de uma superfície do Windows, o Windows inicia seu aplicativo usando um protocolo URI registrado e passa o RemoteId do contato para o aplicativo.
Os esquemas de URI a seguir correspondem aos ContactAnnotationOperations valores.
| Operation | Esquema de URI |
SupportedOperations sinalizador |
|---|---|---|
| Call | ms-voip-call: |
AudioCall |
| Vídeo | ms-voip-video: |
VideoCall |
| Message | ms-ipmessaging: |
Message |
| Profile | ms-contact-profile: |
ContactProfile |
Por exemplo, se um aplicativo declarar AudioCall | VideoCall, Windows poderá ativar o aplicativo com um URI como:
ms-voip-video:<RemoteId>
<RemoteId> é o mesmo valor RemoteId que você armazenou no ContactAnnotation. Use isso para localizar o usuário ou a conversa correspondente em seu aplicativo e iniciar a experiência solicitada.
Registre esquemas de URI somente para operações que seu aplicativo suporta. Windows apresenta uma ação de comunicação somente quando o registro de protocolo correspondente está disponível.
Registrar os esquemas de URI
Declare cada esquema de URI no manifesto do pacote como uma extensão windows.protocol. O exemplo a seguir registra os protocolos para exibição de perfil, mensagens, chamadas de áudio e chamadas de vídeo.
<Extensions>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="ms-contact-profile">
<uap:DisplayName>TestProfileApp</uap:DisplayName>
</uap:Protocol>
</uap:Extension>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="ms-ipmessaging">
<uap:DisplayName>TestMsgApp</uap:DisplayName>
</uap:Protocol>
</uap:Extension>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="ms-voip-video">
<uap:DisplayName>TestVideoApp</uap:DisplayName>
</uap:Protocol>
</uap:Extension>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="ms-voip-call">
<uap:DisplayName>TestCallApp</uap:DisplayName>
</uap:Protocol>
</uap:Extension>
</Extensions>
Conteúdo relacionado
Windows developer