Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
As anotações de contactos descrevem as ações de comunicação que uma aplicação suporta para um contacto, como visualizar um perfil, enviar mensagens ou ligar. Este artigo mostra como declarar essas capacidades e como o Windows abre o contacto relevante na sua aplicação.
Antes de começares, contribui com os teus contactos para o Windows.
Declarar operações de comunicação suportadas
As aplicações podem declarar as capacidades de comunicação suportadas para um contacto usando a propriedade SupportedOperations em ContactAnnotation.
A SupportedOperations propriedade especifica os tipos de ações de comunicação que a aplicação suporta para interagir com um contacto. Estas operações são definidas pela enumeração ContactAnnotationOperations .
Como ContactAnnotationOperations é uma enumeração de flags, múltiplas operações podem ser combinadas usando o operador binário OR (|). Isto permite que as aplicações indiquem todas as capacidades de comunicação suportadas para um contacto numa única anotação. Para mais informações sobre esta propriedade, consulte a referência da API para ContactAnnotation.SupportedOperations.
O exemplo seguinte mostra como declarar as operações de comunicação suportadas para um contacto.
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 ao Windows que a aplicação suporta a visualização do perfil de contacto, o envio de mensagens, a realização de chamadas áudio ou vídeo e o acesso a atualizações do feed social do contacto especificado.
As aplicações devem definir as operações suportadas para representar com precisão as capacidades de interação e comunicação disponíveis para o contacto dentro da aplicação.
Processar a ativação da comunicação
Quando os utilizadores selecionam uma ação de comunicação a partir de uma superfície do Windows, o Windows inicia a sua aplicação usando um protocolo URI registado e passa o RemoteId do contacto para a aplicação.
Os seguintes esquemas de URI correspondem aos valores ContactAnnotationOperations.
| Operation | Esquema de URI |
SupportedOperations bandeira |
|---|---|---|
| Call | ms-voip-call: |
AudioCall |
| Vídeos | ms-voip-video: |
VideoCall |
| Message | ms-ipmessaging: |
Message |
| Profile | ms-contact-profile: |
ContactProfile |
Por exemplo, se uma aplicação declarar AudioCall | VideoCall, o Windows pode ativar a aplicação com um URI como:
ms-voip-video:<RemoteId>
<RemoteId> é o mesmo RemoteId valor que guardaste no ContactAnnotation. Utilize-o para localizar o utilizador ou conversa correspondente na sua aplicação e iniciar a experiência solicitada.
Regista esquemas URI apenas para operações que a tua aplicação suporta. O Windows só apresenta uma ação de comunicação quando o registo do protocolo correspondente está disponível.
Registar os esquemas de URI
Declare cada esquema URI no manifesto do pacote como uma extensão windows.protocol. O exemplo seguinte regista protocolos para visualização de perfis, mensagens, chamadas áudio e videochamadas.
<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