Search
Link Search Menu Expand Document
Kony Quantum is now HCL Volt MX. See Revised Terminology. Current Quantum users, see the important note about API naming.

voltmx.iMessageExtensions Namespace

The voltmx.iMessageExtensions Namespace enables you to add support for iMessage app extensions in your iOS app. With iMessage app extensions, users can send content text, stickers, and media files to each other. For more information about what iMessage app extensions are and what you can use them for, please see the Apple developer documentation.

With the voltmx.iMessageExtensions namespace, your iOS apps can leverage the power of the iMessage app to add interactive conversations and file sharing to your app’s functionality.

You add an iMessage extension to your app in the same way that you add any other type of iOS app extension. For more details, refer App Extension for iOS.

Before your iMessage extension can be used, your app must set the callback functions that provide the iMessage extension with its functionality. It does this by invoking the voltmx..iMessageExtension.setExtensionsCallbacks function.

Properties

The voltmx.iMessageExtensions Namespace provides the following properties.

voltmx.iMessageExtensions.view

Holds the current extension view.

Syntax

voltmx.shareExtensions.view

Example

//Sample code  
var myView = voltmx.iMessageExtensions.view;
myView.addSubView(button);

Type

UIView

Read/Write

Read only.

Platform Availability

iOS.

Functions

The voltmx.iMessageExtensions namespace provides the following function.

voltmx.iMessageExtensions.setExtensionsCallbacks

Sets an iMessage extension functionality with various states as callback events.

Syntax

voltmx.iMessageExtensions.setExtensionsCallbacks(callbacks)

Input Parameters

callbacks

Contains an object with key-value pairs where the key specifies the extension state and the value is a callback function. The following are the possible keys.

Key Description
didBecomeActiveWithConversation The extension is about to present the UI.
didCancelSendingMessageConversation The user deleted the message without sending it.
didReceiveMessageCconversation A message has arrived that was generated by another instance of this extension on a remote device.
didStartSendingMessageConversation The user tapped the Send button.
didTransitionToPresentationStyle The extension has just transitioned to a new presentation style.
loadView Loads a view that the controller manages.
viewDidAppear A view was just displayed.
viewDidDisappear A view just removed from the view hierarchy.
viewDidLoad The the view controller has loaded its view hierarchy into memory.
viewWillAppear A view is about to be displayed.
viewWillDisappear A view is about to be removed from the view hierarchy.
willResignActiveWithConversation The extension is about to change from the active to inactive state.
willTransitionToPresentationStyle The extension is about to transition to a new presentation style.

Example: didBecomeActiveWithConversation

function didBecomeActiveWithConversation() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "didBecomeActiveWithConversation": didBecomeActiveWithConversation
});

Example: didCancelSendingMessageConversation

function didCancelSendingMessageConversation() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "didCancelSendingMessageConversation": didCancelSendingMessageConversation
});

Example: didReceiveMessageCconversation

function didReceiveMessageConversation() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "didReceiveMessageConversation": didReceiveMessageConversation
});

Example: didStartSendingMessageConversation

function didStartSendingMessageConversation() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "didStartSendingMessageConversation": didStartSendingMessageConversation
});

Example: didTransitionToPresentationStyle

function didTransitionToPresentationStyle() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "didTransitionToPresentationStyle": didTransitionToPresentationStyle
});

Example: loadView

function loadView() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "loadView": loadView
});

Example: viewDidAppear

function viewDidAppear() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "viewDidAppear": viewDidAppear
});

Example: viewWillAppear

function viewWillAppear() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "viewWillAppear": viewWillAppear
});

Example: viewDidDisappear

function viewDidDisappear() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "viewDidDisappear": viewDidDisappear
});

Example: viewWillDisappear

function viewWillDisappear() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "viewWillDisappear": viewWillDisappear
});

Example: willResignActiveWithConversation

function willResignActiveWithConversation()
{
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks ({"willResignActiveWithConversation": willResignActiveWithConversation});
function willResignActiveWithConversation() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "willResignActiveWithConversation": willResignActiveWithConversation
});

Example: willTransitionToPresentationStyle

function willTransitionToPresentationStyle() {
    // Native Function API code
}

voltmx.iMessageExtensions.setExtensionsCallbacks({
    "willTransitionToPresentationStyle": willTransitionToPresentationStyle
});

Return Values

None.

Platform Availability

iOS.only