Rate this page:

VIMessengerDelegate

Delegate that may be used to handle messenger events.

Methods are invoked either on:

  • the current user's side only. The events always invoked only on a client where messaging methods are called (unless otherwise specified).
  • or both current user's and other participants' sides.

See the details in the methods' descriptions.

A queue on which all events are received is specified via [VIClient initWithDelegateQueue:].

Methods

messenger:didCreateConversation:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didCreateConversation:(

VIConversationEvent *

)event

Triggered when a conversation is created via [VIMessenger createConversation:completion:] or analogous methods from other Voximplant SDKs and Messaging API.

Triggered only for participants that belong to the conversation.

Parameters

Returns

  • type:

    void

messenger:didEditConversation:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didEditConversation:(

VIConversationEvent *

)event

Triggered when the conversation properties have been modified as the result of:

Triggered only for participants that belong to the conversation.

Parameters

Returns

  • type:

    void

messenger:didEditMessage:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didEditMessage:(

VIMessageEvent *

)event

Triggered when a message has been edited via [VIMessage update:payload:completion:] or analogous methods from other Voximplant SDKs and Messaging API.

Triggered only for participants that belong to the conversation with the changed message.

Parameters

Returns

  • type:

    void

messenger:didEditUser:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didEditUser:(

VIUserEvent *

)event

Triggered as the result of [VIMessenger editUserWithCustomData:privateCustomData:completion:], [VIMessenger managePushNotifications:completion:] or analogous methods from other Voximplant SDKs and Messaging API.

Triggered only for the subscribers of the changed user. Use [VIMessenger subscribe:completion:] to subscribe for user's changes.

Parameters

  • messenger:

    VIMessenger *

    Instance of messenger

  • event:

    VIUserEvent *

    Event object with user data and service information

Returns

  • type:

    void

messenger:didGetConversation:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didGetConversation:(

VIConversationEvent *

)event

Triggered when a conversation description is received as the result of the [VIMessenger getConversation:completion:] or [VIMessenger getConversations:completion:] methods calls.

Triggered only on the current user's side.

Parameters

Returns

  • type:

    void

messenger:didGetPublicConversations:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didGetPublicConversations:(

VIConversationListEvent *

)event

Triggered when the array of public conversations UUIDs is received as the result of the [VIMessenger getPublicConversations:] method call.

Triggered only on the current user's side.

Parameters

Returns

  • type:

    void

messenger:didGetSubscriptionList:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didGetSubscriptionList:(

VISubscriptionEvent *

)event

Triggered as the result of the [VIMessenger getSubscriptionList:] method call.

Triggered only on the current user's side.

Parameters

Returns

  • type:

    void

messenger:didGetUser:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didGetUser:(

VIUserEvent *

)event

Parameters

  • messenger:

    VIMessenger *

    Instance of messenger

  • event:

    VIUserEvent *

    Event object with user data and service information

Returns

  • type:

    void

messenger:didReceiveError:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didReceiveError:(

VIErrorEvent *

)event

Triggered when an error occurred as the result of any Voximplant iOS Messaging API methods call.

Triggered only on the current user's side.

Parameters

  • messenger:

    VIMessenger *

    Instance of messenger

  • event:

    VIErrorEvent *

    Event object with error details and service information

Returns

  • type:

    void

messenger:didReceiveReadConfirmation:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didReceiveReadConfirmation:(

VIConversationServiceEvent *

)event

Triggered for all clients in the conversation as the result of [VIConversation markAsRead:completion:] or analogous methods from other Voximplant SDKs and Messaging API.

Parameters

Returns

  • type:

    void

messenger:didReceiveTypingNotification:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didReceiveTypingNotification:(

VIConversationServiceEvent *

)event

Triggered when some user is typing text in a conversation. Information about typing is received via [VIConversation typing:] or analogous methods from other Voximplant SDKs and Messaging API.

Triggered only for participants that belong to the conversation where typing is performing.

Parameters

Returns

  • type:

    void

messenger:didRemoveConversation:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didRemoveConversation:(

VIConversationEvent *

)event

Triggered when a conversation has been removed.

Note that removing is possible via Voximplant Messaging API only.

Triggered only for participants that belong to the conversation.

Parameters

Returns

  • type:

    void

messenger:didRemoveMessage:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didRemoveMessage:(

VIMessageEvent *

)event

Triggered when a message has been removed from a conversation via [VIMessage remove:] or analogous methods from other Voximplant SDKs and Messaging API.

Triggered only for participants that belong to the conversation with the deleted message.

Parameters

Returns

  • type:

    void

messenger:didRetransmitEvents:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didRetransmitEvents:(

VIRetransmitEvent *

)event

Triggered as the result of the following methods calls on some conversation for this SDK instance:

Triggered only on the current user's side.

Parameters

Returns

  • type:

    void

messenger:didSendMessage:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didSendMessage:(

VIMessageEvent *

)event

Triggered when a new message has been sent to a conversation via [VIConversation sendMessage:payload:completion:] or analogous methods from other Voximplant SDKs and Messaging API.

Triggered only for participants that belong to the conversation.

Parameters

Returns

  • type:

    void

messenger:didSetStatus:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didSetStatus:(

VIStatusEvent *

)event

Triggered after a user status has been changed via [VIMessenger setStatus:completion:] or analogous methods from other Voximplant SDKs and Messaging API.

Triggered only for the subscribers of the changed user. Use [VIMessenger subscribe:completion:] to subscribe for a user's changes.

Parameters

  • messenger:

    VIMessenger *

    Instance of messenger

  • Event object with user status data and service information

Returns

  • type:

    void

messenger:didSubscribe:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didSubscribe:(

VISubscriptionEvent *

)event

Triggered as the result of [VIMessenger subscribe:completion:] or analogous methods from other Voximplant SDKs and Messaging API.

Triggered on all logged in clients of the current user

Parameters

Returns

  • type:

    void

messenger:didUnsubscribe:

Optional
Copy URL
- (

void

)messenger:(

VIMessenger *

)messenger
didUnsubscribe:(

VISubscriptionEvent *

)event

Triggered as the result of [VIMessenger unsubscribe:completion:], [VIMessenger unsubscribeFromAll:] or analogous methods from other Voximplant SDKs and Messaging API.

Triggered on all logged in clients of the current user.

Parameters

Returns

  • type:

    void