Callback Delegates
#
FlyCompletionHandlerFlyCompletionHandler is used as a base callback block for most of the IO operations.
#
Observe Chat ConnectionTo observe the chat connection status you must adopt a protocol 'ConnectionEventDelegate' through ChatManager
#
Observe Profile EventsTo observe profile related events you can must adopt a protocol 'ProfileEventsDelegate' through ContactsManager
Example:
#
Contacts Profiles Fetched.If the client application has mobile number as the primary identifier of the user and enabled contact sync they can fetch their contacts data and its completion is triggered in the following callbacks.
#
User blocked youIf a user blocked you then the following method will be triggered in the ProfileEventsDelegate.
#
User unblocked youIf a user unblocked you then the following method will be triggered in the ProfileEventsDelegate.
#
User Updated his profileIf a user updated his profile then the following method will be triggered in the ProfileEventsDelegate.
#
My Profile update statusOnce you initiated the update for your profile its status will be triggered by the following method in the ProfileEventsDelegate.
#
User came onlineIf a user came online then the following method will be triggered in the ProfileEventsDelegate.
#
User went offineIf a user went offline then the following method will be triggered in the ProfileEventsDelegate.
#
Users blocked me list callbackWhen called to get the users who blocked me then the following method will be triggered in the ProfileEventsDelegate.
#
Users i blocked list callbackWhen called to get the users who i blocked then the following method will be triggered in the ProfileEventsDelegate.
#
User profile fetchedWhen called to get the profile detatil of a user from the server then the following method will be triggered in the ProfileEventsDelegate.
#
Block a userWhen called to block a user then the following method will be triggered in the ProfileEventsDelegate.
#
UnBlock a userWhen called to unblock a user then the following method will be triggered in the ProfileEventsDelegate.
#
User profile deletedWhen other user deleted their profile then the following method will be triggered in the ProfileEventsDelegate.
#
Observe Group EventsTo observe group related events you must adopt a protocol GroupEventsDelegate
Example:
#
Group Profile FetchedWhen the request for fetching a group profile is completed successfully this delegate will be triggered.
#
Group notification message receivedWhen events like new member added or member removed a notification message will be generated locally and inserted in the local database. After insertion this delegate will be triggered.
#
New group createdWhen a new group was created like when someone added you to a group this delegate will be triggered.
#
Group profile updatedWhen a group profile is updated this delegate will be triggered.
#
New member added to groupWhen a new member is added to the group this delegate will be triggered.
#
Member removed from groupWhen a member is removed from the group this delegate will be triggered.
#
Fetching group membersWhen a group is created, members of that group will be fetched once sucessfully fetched this delegate will be triggered.
#
Group member became an adminWhen a group member became an admin this delegate will be triggered.
#
Admin access revokedWhen a group member's admin access is revoked this delegate will be triggered.
#
Member left from the groupWhen a member left the group this delegate will be triggered.
#
Group deleted locallyWhen the current user delete a group locally this delegate will be triggered.
#
Observing the message eventsYou need to conform the MessageEventsDelegate protocol to observe all the message related events, so that you can update the UI immediately based on the message events.Once you have sent the message via sdk, you will get the callbacks for message status events.You can attach your own listener by using the below method. This is common for both single chat and groups.
tip
There can be only one message listener at a time, if you set multiple times using the below method it will always replace the old listener.
info
For group, message status will be updated only if all the participants sent the delivery/seen status.
#
Observe User Busy StatusTo observe the status of user is busy or not, And to get the busy message must adopt a protocol 'UserBusyStatusDelegate' through ChatManager
#
Handling Banned User/Group#
Current UserTo observe current user blocking/unblocking, confirm to AdminBlockCurrentUserDelegate
#
Contacts and GroupTo observe contact and group blocking/unblocking, confirm to AdminBlockDelegate
#
Observing the Archive Chats eventsTo observe chat Archive/Unarchive, confirm to ArchiveEventsDelegate
#
Observing the all Incoming Message Notifications on ForegroundTo observe all Incoming Message Notifications on Foreground, confirm to LocalNotificationDelegate in AppDelegate
#
Observing the Backup Chats eventsTo observe backup chat progress, confirm to BackupEventDelegate
#
Observing the Restore Chats eventsTo observe restore chat progress, confirm to RestoreEventDelegate