Messaging

This module enables publication and receipt of In-app Messages and Push notifications. The usage of this module is optional.

This module has the following classes:

IMI.ICMessaging

The ICMessaging singleton class facilitates you to send and receive Live Chat / In-App Messaging messages and update the read status for Live Chat / In-App Messaging and Push.

Public Methods
void connect()
void disconnect()
void fetchTopics(filter, callback)
ICConnectionStatus getConnectionStatus()
ICMessaging getInstance()
boolean isConnected()
void publishMessage(message, callback)
void setMessageAsRead( transactionId, callback)
void setMessagesAsRead( transactionId, callback)
void setICMessagingReceiver( callback)
void subscribeTopic(topic, callback)
void unsubscribeTopic(topic, callback)
void createThread
void fetchThreads
void fetchMessages
Boolean getOutgoing
void setOutgoing
void fetchStreams

connect

This method is used to establish a connection to receive Real-Time Messages from the Webex Connect platform.
When the connection is successful, the status events are notified through ICMessagingReceiver.onConnectionStatusChanged.

πŸ“˜

It throws an Exception if a user is not registered with Webex Connect or if the Live Chat / In-App Messaging feature is not enabled in the policy.

Syntax: void connect()

Example:

var messaging = IMI.ICMessaging.getInstance();
try {
    messaging.connect();
} catch (error) {
    console.log(error)
}

disconnect

This method is used to disconnect the connection between the app and the Webex Connect platform. If there is no active connection, then this method fails silently.
When the disconnection is successful, the status events are notified through ICMessagingReceiver.onConnectionStatusChanged.

πŸ“˜

The disconnect method throws an Exception if a user is not registered with Webex Connect or Live Chat / In-App Messaging feature is not enabled in the policy.

  Syntax: void disconnect()

  Example:

var messaging = IMI.ICMessaging.getInstance();
try {
    messaging.disconnect();
} catch (error) {
    console.log(error)
}

fetchTopics

This method is used to get a list of topics that are configured with the Webex Connect app. Use the filter parameter to control the type of topics that are returned.
Results are reported through a callback.

  Syntax: void fetchTopics(filter, callback)

  Parameters:

ParameterTypeDescription
filterICAccessLevelFilterRefer to ICAccessLevelFilter class.
callbackJSObjectSpecifies the callback object.

Example:

var messaging = IMI.ICMessaging.getInstance();
var callback = {
    onSuccess: function(ictopicslist) {
        console.log("success");
        //Write your logic to read topics and subscribe/unsubscribe/publish on those topics. 
        if (ictopicslist) {
            for (var i = 0; i < ictopicslist.length; i++) {
                var icTopic = ictopicslist[i];
                console.log(icTopic.getName());

            }

        }
    },
    onFailure: function(errormsg) {
        console.log("failed to get topics");
    }

};
messaging.fetchTopics(imi.ICAccessLevelFilter.All, callback);

getConnectionStatus

This method is used to get the current connection status between the SDK and Webex Connect platform.

  Syntax: ICConnectionStatus getConnectionStatus()

  Return Value:
Returns the current connection status between the SDK and the Webex Connect platform.

  Example:

var messaging = IMI.ICMessaging.getInstance();
try {
    var connectionStatus = messaging.getConnectionStatus();
    if (connectionStatus == imi.ICConnectionStatus.Connected) {
        //write your logic here
    }
} catch (error) {
    console.log(error)
}

getInstance

This method is used to get the ICMessaging singleton instance. The instance is created internally on demand.

  Syntax: ICMessaging getInstance()

  Return Value:
Returns the ICMessaging singleton instance.

  Example:

var messaging = imi.ICMessaging.getInstance();

isConnected

This method is used to verify whether the Live Chat / In-App Messaging connection is established between SDK and Webex Connect. This is a convenience method for getConnectionStatus() == ICConnectionStatus.Connected.

  Syntax: boolean isConnected()

  Return Value:
Returns _true _if the Live Chat / In-App Messaging connection is established between SDK and Webex Connect.

  Example:

var messaging = IMI.ICMessaging.getInstance();
try {
    var isConnected = messaging.isConnected();
    if (isConnected) {
        //write your logic
    }
} catch (error) {
    console.log(error)
}

publishMessage

This method is used to publish the passed ICMessage instance through Live Chat / In-App Messaging connection.
The results of the operation are reported through a callback.

  Syntax: void publishMessage(message, callback)

  Parameters:

ParametersTypeDescription
messageICMessage Refer to ICMessage class.
callbackJSObjectSpecifies the callback object.

  Example:

var callback = {
    onSuccess: function() {
        console.log("message sent");
    },
    onFailure: function(errormsg) {
        console.log("failed to send message");
    }
};
 var messaging = imi.ICMessaging.getInstance();
   var message = new imi.ICMessage();

   message.setMessage("Test message");
   var thread = new imi.ICThread();
   thread.setId("threadid <which is created using createThread()/came in Message>");
   thread.setTitle("cricket");
   thread.setStreamName("sports");
   message.setThread(thread);
   messaging.publishMessage(message, callback);

setMessageAsRead

This method is used to update the status of the message identified by transactionId as Read.
The results of the operation are reported through a callback.

  Syntax: void setMessageAsRead(transactionId, callback)

  Parameters:

ParameterTypeDescription
transactionIdStringSpecifies a single transaction id.
callbackJSObjectSpecifies the callback.

  Example:

//To send single message read status back to <<prodname>>
var messageTransactionId = "<your message transaction id>";
var messaging = IMI.ICMessaging.getInstance();
var callback = {
    onSuccess: function() {
        console.log("success");

    },
    onFailure: function(errormsg) {
        console.log("failed ");
    }

};

messaging.setMessageAsRead(messageTransactionId, callback);

setMessagesAsRead

This method is used to update the status of the message identified by transactionIds as Read.
The results of the operation are reported through a callback.

  Syntax: void setMessagesAsRead(transactionIds, callback)

  Parameters:

ParameterTypeDescription
transactionIdsString []Specifies an array of transaction ids.
callbackJSObjectSpecifies the callback object.

  Example:

//To send mutliple messages read status back to <<prodname>>
var msgTransIds = ["transid1", "transid2", "transid3"];
var messaging = IMI.ICMessaging.getInstance();
var callback = {
    onSuccess: function() {
        console.log("success");

    },
    onFailure: function(errormsg) {
        console.log("failed ");
    }

};

messaging.setMessagesAsRead(msgTransIds, callback);

setICMessagingReceiver

This method is used to set ICMessagingReceiver callback. It contains two methods. When a message is received, ICMessagingReceiver.onMessageReceived method is called. When a connection status is changed ICMessagingReceiver.onConnectionStatusChanged method is called.
The results of the operation are reported through a callback.

  Syntax: void setICMessagingReceiver(callback)

  Parameters:

ParameterTypeDescription
callbackICMessagingReceiverRefer to ICMessagingReceiver.

  Example:

//To receive connect status changes and published messages
    var icMsgRecrCallback = new IMI.ICMessagingReceiver();
    icMsgRecrCallback.onConnectionStatusChanged = function(statuscode) {
        console.log("read the statuscode, based on the status do the operations");
            if (statuscode == IMI.ICConnectionStatus.Connected) {
             //Connected
             } else if (statuscode == IMI.ICConnectionStatus.Error) {
               //Error while connecting 
             }else if (statuscode == IMI.ICConnectionStatus.Refused) {
               //Connection lost
             } else {
                 //unknow error
             }
    };
    icMsgRecrCallback.onMessageReceived = function(icMessage) {
        //icMessage is IMI.ICMessage object
        if (icMessage.getType() === imi.ICMessageType.Message) {
           //here direct message  came from server(message sent from api)
                   
          } else if (icMessage.getType() === IMI.ICMessageType.ReadReceipt) {                       
            //here read receipt came from another application for device syncing(read sent from another device)

          } else if (icMessage.getType() === IMI.ICMessageType.Republish) {
            //here repulished message came from another application for device syncing (message send from  another device)          
          }
    }
    
    var messaging = IMI.ICMessaging.getInstance();
    messaging.setICMessagingReceiver();

subscribeTopic

This method is used to subscribe to the topic that has Read access level, allowing the SDK to receive messages on that topic.
The results of the operation are reported through a callback.

πŸ“˜

Incoming messages are received through ICMessagingReceiver.onMessageReceived.

  Syntax: void subscribeTopic(topic, callback)

  Parameters:

ParameterTypeDescription
topicStringSpecifies the topic name to subscribe.
callbackJSObjectSpecifies the callback.

  Example:

//To subscribe to a topic
try {
    var messaging = IMI.ICMessaging.getInstance();

    var callback = {
        onSuccess: function() {
            console.log("success");

        },
        onFailure: function(errormsg) {
            console.log("failed ");
        }

    };
    var topic = "<Topic Name>";

    messaging.subscribeTopic(topic, callback);

} catch (error) {
    console.log(error)
}

unsubscribeTopic

This method is used to unsubscribe to the topic that has Read access level, preventing the SDK to receive messages on that topic. The messages may still be received until the callback has reported success.
The results of the operation are reported through a callback.

  Syntax: void unsubscribeTopic(topic, callback)

  Parameters:

ParameterTypeDescription
topicStringSpecifies the topic name to unsubscribe.
callbackJSObjectSpecifies the callback.

callback = {
onSuccess: function(){
},
onFailure: function(){
}
};

  Example:

//To unsubscribe to a topic
try {
    var messaging = IMI.ICMessaging.getInstance();

    var callback = {
        onSuccess: function() {
            console.log("success");

        },
        onFailure: function(errormsg) {
            console.log("failed ");
        }

    };
    var topic = "<Topic Name>";

    messaging.unsubscribeTopic(topic, callback);

} catch (error) {
    console.log(error)
}

createThread

This method is used to create a thread based on streamId and threadTitle and send the result in a callback.

  Syntax: createThread(streamId, threadtitle, createThreadCallBack)

  Parameters:

ParameterTypeDescription
streamIdStringIdentity of the stream.
threadTitleStringTitle of the thread.
callbackInvokes to report operation success or failure.
var createThreadCallBack = {
                        onSuccess: function (thread) 
                        {
                            console.log(thread);
                        },
                        onFailure: function () 
                        {
                            console.log("failed to create thread")
                        }
                    };
                    messaging.createThread(steamid, threadtitle, createThreadCallBack);

closeThread

Use this API to close an existing thread

Syntax: closeThread (icThreadObj, callback)

Parameters:

ThreadInstance of ICThread object
callbackJS object containing onSuccess and onFailure methods.
var closeThreadCallBack = {
            onSuccess: function (threadObj) {
              debug('closeThreadCallBack onSuccess', threadObj);
            },
            onFailure: function (err) {
              debug("closeThreadCallBack onFailure", err);
            },
          };
          function closeThread() {
//thread = new IMI.ICThread();instance of ICThread object
thread.setReasonForStatusChange(reason);

            var messaging = IMI.ICMessaging.getInstance();
            messaging.closeThread(thread, closeThreadCallBack);
          }

fetchThreads

This method is used to get a list of threads that are created and at least one message transaction completed. Results are reported through the callback.

  Syntax: fetchThreads(offset, limit, callback)

  Parameters:

ParameterTypeDescription
offsetString (mandatory parameter)Pass offset value to fetch threads from that offset value.

Default value is 0.
limitIntegrer (mandatory parameter)Specifies the maximum number of items that can be returned in threads array.

Default value is 100.
callbackCallbackInvokes to report if operation is a success or failure.

Success callback returns an additional value, a positive value indicating more threads on the server.

unread_msg_count: Each thread object returns this based upon β€œserver_inbox_version” in policy.

onFetchThreadsSuccess(threads, hasMoreThreads)
var messaging = IMI.ICMessaging.getInstance();
    messaging.fetchThreads(offset, limit, callback);

fetchMessages

This method is used to get a list of messages from the Connect platform. All results are reported through the callback.

  Syntax: fetchMessages(threadId, beforeDate, limit, callback)

  Parameters:

ParameterTypeDescription
threadIdStringSpecifies the ThreadId value.
beforeDateDateSpecifies the date since the messages must be returned. This value is optional; if nothing is passed then it is considered as current Date Time.
limitIntegerSpecifies the maximum number of items that can be returned in messages array.

Default value is 100
calbackCallbackInvokes to report if operation is a success or failure.

totalCount: fetchMessagesCallback returns total number of messages for the userid/thread.

fetchMessagesSuccess(messages: any[], totalCount)
isOutgoingBooleanIndicates if the message is mobile originated if the value is true.
var messaging = IMI.ICMessaging.getInstance();
                    var messagesCallBack = {
                        onSuccess: function (messages) {
                        },
                        onFailure: function () {
                            console.log("failed to get messages");
                        }
                    };
                    messaging.fetchMessages(threadId, beforeDate, limit, callback);

fetchUnreadThreadCount

This method is used to get the count of threads that have unread messages.

  Syntax: fetchUnreadThreadCount(callback)

  Parameters:

ParameterTypeDecsription
callbackCallbackInvokes to report if operation is a success or failure.

Count: returns the unread thread count for user

fetchUnreadThreadCountSuccess(count)
var messaging = IMI.ICMessaging.getInstance();
    messaging.fetchUnreadThreadCount(callback);

getSDKVersion

This method gets the SDK version being used.

  Syntax: getSDKVesrion()

  Returns: string version of SDK

this.sdkVersion = "v" + IMIconnectPlugin.getSDKVersion();

getOutgoing

This method is used to get the list of outgoing messages.

  Syntax: getOutgoing()

setOutgoing

This method is used to set the outgoing flag as true to indicate that the message is mobile originated.

  Syntax: setOutgoing(true)

fetchStreams

This method is used to get a list of streams. All results are reported through the callback.

  Syntax: fetchStreams(callback)

  Parameters:

ParameterTypeDescription
callbackCallbackInvokes to report if operation is a success or failure.
var messaging = IMI.ICMessaging.getInstance();
                    var streamsCallBack = {
                        onSuccess: function (streams) {
                            //render streams
                        },
                        onFailure: function (error) {
                            alert("failed to get streams:");
                           
                        }
                    };
                    messaging.fetchStreams(streamsCallBack);

IMI.ICMessagingReceiver

This class allows the interception of incoming messages and Live Chat / In-App Messaging connection status changes. The default class provides standard message handling. You must invoke setICMessagingReceiver to set ICMessagingReceiver callback.

Public Methods
void onConnectionStatusChanged(status)
void onMessageReceived(message)

onConnectionStatusChanged

This method is invoked whenever there is a change to the Live Chat / In-App Messaging connection status.

  Syntax: void onConnectionStatusChanged(status)

  Parameters:

ParameterTypeDescription
statusICConnectionStatusRefer to ICConnectionStatus class.

onMessageReceived

This method is invoked whenever a new Live Chat / In-App Messaging message is received.

  Syntax: void onMessageReceived(message)

  Parameters:

ParameterTypeDescription
messageICMessageRefer to ICMessage class.

getCategory

This method is used to get the category of the interactive message.

  Syntax: String getCategory()

  Return Value:
Returns the category of the message.

getChannel

This method is used to get the channel on which the message was received.

  Syntax: String getChannel()

  Return Value:
Returns the channel.

getCustomTags

This method is used to get the custom or developer specified data that was sent as part of the message payload.

  Syntax: JSObject getCustomTags()

  Return Value:
Returns the custom tags sent along with the message payload.

getExtras

This method is used to get the supplementary data that was sent as part of the message payload. The format of this data is controlled by the Webex Connect platform.

  Syntax: JSObject getExtras()

  Return Value:
Returns the supplementary data that was sent along with the message payload.

getMedia

This method is used to get the media files that are attached to the message.

  Syntax: imi.ICMediaFile[] getMedia()

  Return Value:
Returns the media files that ware attached to the message.

getMessage

This method is used to get the content of the message that is displayed to the end-users.

  Syntax: String getMessage()

  Return Value:
Returns the text message that is displayed to the end-users.

getReplyTo

This method is used to get the topic to which the reply should be sent. This method is not applicable to Push messaging.

  Syntax: String getReplyTo()

  Return Value:
Returns the topic to which reply should be sent.

getSenderId

This method is used to get the senderId an arbitrary identifier that is set by the sender of the message. This method is not applicable to Push messaging.

  Syntax: String getSenderId()

  Return Value:
Returns the senderid of the message.

getTopic

This method is used to get the topic on which the message was received. This method is not applicable to Push messaging.

  Syntax: String getTopic()

  Return Value:
Returns the topic on which the message was received.

getTransactionId

This method is used to get the transaction id that uniquely identifies the message transaction within the Webex Connect platform.

  Syntax: String getTransactionId()

  Return Value:
Returns the transaction id that identifies the message transaction.

getUserId

This method is used to get the user id from which the message is originated. This method is not applicable to Push messaging.

  Syntax: String getUserId()

  Return Value:
Returns the user id from which the message is originated.

setCustomTags

This method is used to set the custom tags object to be sent with an outgoing Live Chat / In-App Messaging. This method is not applicable to Push messaging.

  Syntax: void setCustomTags(tags)

  Parameters:

ParameterTypeDescription
tagsJSObjectSpecifies the JSONObject.

setMedia

This method is used to set the media file attachments to be sent with an outgoing Live Chat / In-App Messaging. This method is not applicable to Push messaging.

  Syntax: void setMedia(files)

  Parameters:

ParameterTypeDescription
filesIMI.ICMediaFileRefer to imi.ICMediaFile class

setMessage

This method is used to set the content of the text message to be sent with an outgoing Live Chat / In-App Messaging. This method is not applicable to Push messaging.

  Syntax: void setMessage(message)

  Parameters:

ParameterTypeDescription
messageStringSpecifies the content of the text message.

setSenderId

This method is used to set the senderid to be sent with an outgoing Live Chat / In-App Messaging. This is arbitrary information such as a simple tag. This method is not applicable to Push messaging.

  Syntax: void setSenderId(senderId)

  Parameters:

ParameterTypeDescription
senderIdStringSpecifies the sender id.

setTopic

This method is used to set the topic on which the message should be published. This method is not applicable to Push messaging.

  Syntax: String setTopic(topic)

  Parameters:

ParameterTypeDescription
topicStringSpecifies the topic.

getAttachments

This method is used to get the attachment files that are attached to the message.

  Syntax: ICAttachment[] getAttachments()

  Return Type: Returns the attachment files attached to the message.

getThread

This method is used to get the thread details specified in the message.

  Syntax: ICThread getThread()

  Return Type: Returns the thread details that were specified in the message.

getSubmitted

This method is used to get the message submitted date to the Connect platform.

  Syntax: Date getSubmittedAt()

  Return Type: Returns the message submitted date to the Connect platform.

getDelivered

This method is used to get the message delivered date to the device.

  Syntax: Date getDeliveredAt()

  Return Type: Returns the message delivered date to the device.

getReadAt

This method is used to get the message read date at the device.

  Syntax: Date getReadAt()

  Return Type: Returns the message read date at the device.

getType

This method is used to get the message type.

  Syntax: ICMessageType getType()

  Return Type: Returns the message type.

setAttachments

This method is used to set the media file attachments to be sent with an outgoing Live Chat / In-App Messaging. This method is not applicable to Push messaging.

  Syntax: void setAttachments(final ICAttachment[] attachments)

  Parameters:

ParameterTypeDescription
attachmentsRefer to ICAttachment class.

setThread

This method is used to set the thread details that need to be specified in the message.

  Syntax: void setThread(final ICThread thread)

  Parameters:

ParameterTypeDescription
threadRefer to ICThread class.

IMI.ICMediaFile

This class is deprecated.
This class exposes data relating to media file attachments that are received through Live Chat / In-App Messaging and used to attach media files to outgoing messages.

Public Methods
String getContentType()
long getDuration()
double getLatitude()
double getLongitude()
String getPreview()
long getSize()
String getURL()
void setContentType(icContentType)
void setDuration(duration)
void setLatitude(latitude)
void setLongitude(longitude)
void setPreview(preview)
void setSize(size)
void setURL(url)

getContentType

This method is used to get the content type such as image/jpeg.

  Syntax: String getContentType()

  Return Value:
Returns the content type such as image or jpg.

getDuration

This method is used to get the duration of the applicable audio and video files.

  Syntax: long getDuration()

  Return Value:
Returns the duration of the audio and video files.

getLatitude

This method is used to get the latitude of the location passed in a message.

  Syntax: double getLatitude()

  Return Value:
Returns the latitude of the location.

getLongitude

This method is used to get the longitude of the location passed in a message.

  Syntax: double getLongitude()

  Return Value:
Returns the longitude of the location.

getPreview

This method is used to get the preview thumbnail as a string.

  Syntax: String getPreview()

  Return Value:
Returns the preview thumbnail as a string.

getSize

This method is used to get the file size in bytes.

  Syntax: long getSize()

  Return Value:
Returns the file size in bytes.

getURL

This method is used to get the URL of the media file.

  Syntax: String getURL()

Return Value: This method returns the URL.

setContentType

This method is used to set the content type as IMI.ICContentType. The method should be called when creating new ICAttachment object.

Syntax: void setContentType(icContentType)

Parameters:

ParameterTypeDescription
icContentTypeIMI.ICContentTypeSpecifies the content type.

setDuration

This method is used to set the duration of the audio and video files.

  Syntax: void setDuration(duration)

  Parameters:

ParameterTypeDescription
durationlongSpecifies the duration in milliseconds.

setLatitude

This method is used to set the latitude of the location passed in a message.

  Syntax: void setLatitude(latitude)

  Parameters:

ParameterTypeDescription
latitudedoubleSpecifies the latitude of the location.

setLongitude

This method is used to set the longitude of the location passed in a message.

  Syntax: void setLongitude(longitude)

  Parameters:

ParameterTypeDescription
longitudedoubleSpecifies the longitude of the location.

setPreview

This method is used to set the preview of the media file.

  Syntax: void setPreview(preview)

  Parameters:

ParameterTypeDescription
previewStringSpecifies the preview of the media file.

setSize

This method is used to set the size of the file in bytes.

  Syntax: void setSize(size)

  Parameters:

ParameterTypeDescription
sizelongSpecifies the size of the file in bytes.

setURL

This method is used to set the URL of the media file.

  Syntax: void setURL(url)

  Parameters:

ParameterTypeDescription
urlStringSpecifies the URL for the media.

IMI.ICAttachment

This class exposes data relating to media file attachments that are received through Live Chat / In-App Messaging and used to attach media files to outgoing messages.

Public Methods
String getContentType()
long getDuration()
double getLatitude()
double getLongitude()
String getPreview()
long getSize()
String getURL()
void setContentType(contentType)
void setDuration(duration)
void setLatitude(latitude)
void setLongitude(longitude)
void setPreview(preview)
void setSize(size)
void setURL(url)

getContentType

This method is used to get the content type such as image/jpeg.

  Syntax: String getContentType()

  Return Value:
Returns the content type such as image or jpg.

getDuration

This method is used to get the duration of the applicable audio and video files.

  Syntax: long getDuration()

  Return Value:
Returns the duration of the audio and video files.

getLatitude

This method is used to get the latitude of the location passed in a message.

  Syntax: double getLatitude()

  Return Value:
Returns the latitude of the location.

getLongitude

This method is used to get the longitude of the location passed in a message.

  Syntax: double getLongitude()

  Return Value:
Returns the longitude of the location.

getPreview

This method is used to get the preview thumbnail as a string.

  Syntax: String getPreview()

  Return Value:
Returns the preview thumbnail as a string.

getSize

This method is used to get the file size in bytes.

  Syntax: long getSize()

  Return Value:
Returns the file size in bytes.

getURL

This method is used to get the URL of the media file.

  Syntax: String getURL()

  Return Value:
This method returns the URL.

setContentType

This method is used to set the content type such as image/jpeg.

  Syntax: void setContentType(contentType)

  Parameters:

ParameterTypeDescription
contentTypeStringSpecifies the content type.

setDuration

This method is used to set the duration of the audio and video files.

  Syntax: void setDuration(duration)

  Parameters:

ParameterTypeDescription
durationlongSpecifies the duration in milliseconds.

setLatitude

This method is used to set the latitude of the location passed in a message.

  Syntax: void setLatitude(latitude)

  Parameters:

ParameterTypeDescription
latitudedoubleSpecifies the latitude of the location.

setLongitude

This method is used to set the longitude of the location passed in a message.

  Syntax: void setLongitude(longitude)

  Parameters:

ParameterTypeDescription
longitudedoubleSpecifies the longitude of the location.

setPreview

This method is used to set the preview of the media file.

  Syntax: void setPreview(preview)

  Parameters:

ParameterTypeDescription
previewStringSpecifies the preview of the media file.

setSize

This method is used to set the size of the file in bytes.

  Syntax: void setSize(size)

  Parameters:

ParameterTypeDescription
sizelongSpecifies the size of the file in bytes.

setURL

This method is used to set the URL of the media file.

  Syntax: void setURL(url)

  Parameters:

ParameterTypeDescription
urlStringSpecifies the URL for the media.

IMI.ICTopic

This class exposes Real Time Messaging topic data that is used to publish outgoing messages or subscribe to receive incoming messages.

getAccessLevel

This method is used to get the access level assigned to the topic.

  Syntax: imi.ICAccessLevel getAccessLevel(level)

  Return Value:
Returns the access level assigned to the topic.

getCreatedBy

This method is used to get name who created the topic.

  Syntax: String getCreatedBy()

  Return Value:
Returns the name who created the topic.

getCreatedDate

This method is used to get the date on which the topic is created.

  Syntax: Date getCreatedDate()

  Return Value:
Returns the date on which the topic is created.

getName

This method is used to get the topic name.

  Syntax: String getName()

  Return Value:
Returns the topic name.

getUpdatedDate

This method is used to get the date on which the topic was last updated.

  Syntax: Date getUpdatedDate()

  Return Value:
Returns the date on which the topic was last updated.

isSubscribed

This method is used to verify whether the current user is subscribed to the topic.

  Syntax: Boolean isSubscribed()

  Return Value:
Returns true if the current user is subscribed to the topic.

IMI.ICThread

This class exposes the thread data from the Live Chat / In-App Messaging channel in a generalized form. It is also used to send Live Chat / In-App Messaging from an app to the Webex Connect platform.

Public Methods
StringgetId
StringgetTitle
booleanisWritable
StringgetStreamName
DategetCreatedAt
DategetUpdatedAt

getId

This method is used to get thread ID information.

  Syntax: String getId()

  Return Value: Returns the thread ID information.

getTitle

This method is used to get the thread title.

  Syntax: String getTitle()

  Return Value: Returns the thread title.

isWritable

This method is used to validate if a thread is writable or not. A thread is writable for Conversation thread, else (for announcement) thread it is not writable.

  Syntax: boolean isWritable()

  Return Value: Returns whether the thread is writable or not.

getStreamName

This method is used to get the stream name to communicate to the Connect platform.

  Syntax: String getStreamName()

  Return Value: Returns the stream name.

getCreatedAt

This method is used to get the thread created date on the Connect platform.

  Syntax: Date getCreatedAt()

  Return Value: Returns the thread created date on the Connect platform.

getUpdatedAt

This method is used to get the thread updated date on the Connect platform.

  Syntax: Date getUpdatedAt()

  Return Value: Returns the thread updated date on the Connect platform.