WebUIContactMessageActivatedEventArgs Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides data when an app is activated to message a 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
- Inheritance
- Attributes
- Implements
Windows requirements
Device family |
Windows Desktop Extension SDK (introduced in 10.0.10240.0)
|
API contract |
Windows.ApplicationModel.Activation.ContactActivatedEventsContract (introduced in v1.0)
|
Examples
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
}
}
}
}
Remarks
This object is accessed when you implement an event handler for the WinJS.Application.Onactivated or the Windows.UI.WebUI.WebUIApplication.activated events when ActivationKind is contact.
Note
This class is not agile, which means that you need to consider its threading model and marshaling behavior. For more info, see Threading and Marshaling (C++/CX).
Windows 8.1 allows users to message their contacts from the Contact Card or Windows Search experience. By implementing the contact message activation contract, Windows can launch your app to send messages for the user.
To receive message activations, your app must register for the "windows.contact" extension category in its manifest. Under this extension, you must include a "LaunchAction" element with the "Verb" attribute equal to "message." You can then specify the "ServiceId" element to specify the type of messaging you support. For example, if your app handles standard text messages, you can specify a "ServiceId" of "telephone." If your app handles messaging over a web based service, like Skype, you can specify the domain name of that service, for example "skype.com."
If multiple apps have registered for this contract, the user can choose one of them as their default for handling messages.
Here is an example for manifest registration:
<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>
After you register in your manifest, your app can be activated for the contact message contract. When your app is activated, you can use the event information to identify the message activation and extract the parameters that help you complete the messaging scenario for the user.
Here is an example of the code you need to handle contact message activations for PSTN numbers and Skype Ids:
Properties
ActivatedOperation |
Gets the app activated operation. |
Contact |
Gets the contact for the message. |
Kind |
Gets the activation type. |
PreviousExecutionState |
Gets the execution state of the app before it was activated. |
ServiceId |
Gets the identifier of the service used for the message. |
ServiceUserId |
Gets the user identifier of the service used for the message. |
SplashScreen |
Gets the splash screen object, which provides information about the transition from the splash screen to the activated app. |
Verb |
Gets the action to be performed. |