WebUIContactMessageActivatedEventArgs Classe

Définition

Fournit des données lorsqu’une application est activée pour envoyer un message à un contact.

public ref class WebUIContactMessageActivatedEventArgs sealed : IActivatedEventArgs, IContactMessageActivatedEventArgs, IActivatedEventArgsDeferral
/// [Windows.Foundation.Metadata.ContractVersion(Windows.ApplicationModel.Activation.ContactActivatedEventsContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
class WebUIContactMessageActivatedEventArgs final : IActivatedEventArgs, IContactMessageActivatedEventArgs, IActivatedEventArgsDeferral
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.ApplicationModel.Activation.ContactActivatedEventsContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
public sealed class WebUIContactMessageActivatedEventArgs : IActivatedEventArgs, IContactMessageActivatedEventArgs, IActivatedEventArgsDeferral
Public NotInheritable Class WebUIContactMessageActivatedEventArgs
Implements IActivatedEventArgs, IActivatedEventArgsDeferral, IContactMessageActivatedEventArgs
Héritage
Object Platform::Object IInspectable WebUIContactMessageActivatedEventArgs
Attributs
Implémente

Configuration requise pour Windows

Famille d’appareils
Windows Desktop Extension SDK (introduit dans 10.0.10240.0)
API contract
Windows.ApplicationModel.Activation.ContactActivatedEventsContract (introduit dans v1.0)

Exemples

JavaScript

function activated(eventObject) {
    if (eventObject.detail.kind === Windows.ApplicationModel.Activation.ActivationKind.contact) {
        if (eventObject.detail.verb === Windows.ApplicationModel.Contacts.ContactLaunchActionVerbs.message) {

     //get contact display info
            var contactName = eventObject.detail.contact.displayName;
            var contactThumbnail = eventObject.detail.contact.thumbnail;

            if (eventObject.detail.serviceId === "telephone") {
                var phoneNumber = eventObject.detail.serviceUserId;
  //add messaging logic for PSTN numbers
            }
     else if (eventObject.detail.serviceId === "skype.com") {
                var userId = eventObject.detail.serviceUserId;
  //add messaging logic for Skype Ids
            }
        }
    }
}

Remarques

Cet objet est accessible lorsque vous implémentez un gestionnaire d’événements pour les événements WinJS.Application.Onactivated ou Windows.UI.WebUI.WebUIApplication.activate lorsqueActivationKind est contact.

Notes

Cette classe n’est pas agile, ce qui signifie que vous devez prendre en compte son modèle de thread et son comportement de marshaling. Pour plus d’informations, consultez Threading and Marshaling (C++/CX) .

Windows 8.1 permet aux utilisateurs d’envoyer des messages à leurs contacts à partir de la carte de visite ou de l’expérience Windows Search. En implémentant le contrat d’activation des messages de contact, Windows peut lancer votre application pour envoyer des messages à l’utilisateur.

Pour recevoir des activations de messages, votre application doit s’inscrire à la catégorie d’extension « windows.contact » dans son manifeste. Sous cette extension, vous devez inclure un élément « LaunchAction » avec l’attribut « Verb » égal à « message ». Vous pouvez ensuite spécifier l’élément « ServiceId » pour spécifier le type de messagerie que vous prenez en charge. Par exemple, si votre application gère les messages texte standard, vous pouvez spécifier un « ServiceId » de « téléphone ». Si votre application gère la messagerie via un service web, comme Skype, vous pouvez spécifier le nom de domaine de ce service, par exemple « skype.com ».

Si plusieurs applications se sont inscrites pour ce contrat, l’utilisateur peut choisir l’une d’elles par défaut pour la gestion des messages.

Voici un exemple d’inscription de manifeste :

<m2:Extension Category="windows.contact" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest">
  <m2:Contact>
    <m2:ContactLaunchActions>
      <m2:LaunchAction Verb="message" DesiredView="useLess">
        <m2:ServiceId>telephone</m2:ServiceId>
      </m2:LaunchAction>
      <m2:LaunchAction Verb="message" DesiredView="useLess">
        <m2:ServiceId>skype.com</m2:ServiceId>
      </m2:LaunchAction>
    </m2:ContactLaunchActions>
  </m2:Contact>
</m2:Extension>

Une fois que vous vous êtes inscrit dans votre manifeste, votre application peut être activée pour le contrat de message de contact. Lorsque votre application est activée, vous pouvez utiliser les informations d’événement pour identifier l’activation du message et extraire les paramètres qui vous aident à terminer le scénario de messagerie pour l’utilisateur.

Voici un exemple de code dont vous avez besoin pour gérer les activations de messages de contact pour les numéros RTC et les ID Skype :

Propriétés

ActivatedOperation

Obtient l’opération activée par l’application.

Contact

Obtient le contact pour le message.

Kind

Obtient le type d’activation.

PreviousExecutionState

Obtient l’état d’exécution de l’application avant son activation.

ServiceId

Obtient l’identificateur du service utilisé pour le message.

ServiceUserId

Obtient l’identificateur utilisateur du service utilisé pour le message.

SplashScreen

Obtient l’objet d’écran de démarrage, qui fournit des informations sur la transition de l’écran de démarrage à l’application activée.

Verb

Obtient l’action à effectuer.

S’applique à

Voir aussi