Customization

Customizing launcher

Channel button position

If you use channel button, you can change button position by using ChannelButtonOption

let settings = {
  "pluginKey": YOUR_PLUGIN_KEY,
  "channelButtonOption": {
    "xMargin": 16,
    "yMargin": 16,
    "position": POSITION,  // 'left', 'right'
  }
}

ChannelIO.boot(settings).then((result) => {
  //boot completed
})

Set Custom button

If you want to customize the launcher button with your own implementation, you can implement your own button and call ChannelIO.showMessenger in a place where you control your button's touch events.

Unread Message Count

When implementing a customized launcher button, we recommend displaying a badge on it to alert your users. To notify the changes of badge count, you need to implement onBadgeChanged method.

ChannelIO.onBadgeChanged((count) => {
  //do something with count
});

Customizing in-app push notification

In-app push notification view

By default, users will get in-app notification when a manager send a message through channel while they are active on your application. If you want to customize in-app notification view to fit your application theme, you need to set hideDefaultInAppPush flag in ChannelPluginSettings to true when you call boot

Receiving in-app push notification

To receive push notification's information, implement onPopupDataReceived method.

ChannelIO.onPopupDataReceived((popupData) => { });

Log an event

You can log events with ChannelIO that records user behaviors in your application. For example, you can record a certain page users visited from your application and when they visited.

ChannelIO.track(
  "CheckOut", 
  {
    "sampleID": 1234,
    "userName": "Jason" 
  }
);