配置消息推送

更新时间: 2023/08/09 02:50:26

消息推送是指当用户清理掉应用进程(被冻结、主动关闭)、网络不稳定等导致客户端 SDK 无法与云信服务器保持正常连接时,使用手机厂商系统级推送,将主叫用户的呼叫邀请信息推送给被叫用户。本文介绍通过呼叫组件配置消息推送的属性,包括推送标题、推送文案等。

前提条件

已在 IM SDK 实现离线推送

背景信息

  • 呼叫组件不提供推送功能,只支持配置推送消息,消息推送能力由 IM SDK 提供。消息离线推送的详细配置请参见实现离线推送配置消息的推送属性
  • pushConfigProvidernotificationConfigFetcher 的区别如下:
    • pushConfigProvider 是指在被叫的 App 进程结束时,通过系统推送将主叫用户的呼叫邀请信息推送给被叫用户。主叫用户通过该参数配置离线消息推送的内容。
    • notificationConfigFetcher 为应用在后台或应用进程存活时,控制展示的 notification,是被叫用户进行修改。

实现方法(V2)

呼叫组件 V2.0 及之后版本,在发起呼叫时,通过呼叫中的参数NECallParam.pushConfig参数,配置消息推送的属性。

示例代码如下:

// 离线推送配置
Map<String,Object> pushPayload = new HashMap<>();
String pushTitle = "离线推送标题";
String pushContent = "离线推送内容";
NECallPushConfig pushConfig = new NECallPushConfig(pushTitle, pushContent, pushPayload);
// 构建呼叫参数
CallParam param = new CallParam.Builder()
  .callType(NECallType.VIDEO)
  .calledAccId("calledAccId")
  // 传入离线推送配置
  .pushConfig(pushConfig)
  .build();
CallKitUI.startSingleCall(this, param);

实现方法 (V1)

呼叫组件 V1.8.2 及之前版本,通过初始化呼叫组件中的 pushConfigProvider 参数,配置消息推送的属性。

以下示例代码为 pushConfigProvider 的一个实例对象。

javanew PushConfigProvider() {
		@Override
		public SignallingPushConfig providePushConfig(InvitedInfo info) {
			return null;
		}
}

其中 SignallingPushConfig 有两个构造函数如下,若推送需要设置 pushPayload 通过 SignallingPushConfig#pushPayload 字段完成设置。

java/**
 * @param needPush    是否需要push
 * @param pushTitle   推送标题
 * @param pushContent 推送内容
 */
public SignallingPushConfig(boolean needPush, String pushTitle, String pushContent)/**
 * @param needPush    是否需要push
 * @param pushTitle   推送标题
 * @param pushContent 推送内容
 * @param pushPayload 推送扩展 ,不需要的话填null
 */
public SignallingPushConfig(boolean needPush, String pushTitle, String pushContent, Map<String, Object> pushPayload)
此文档是否对你有帮助?
有帮助
去反馈
  • 前提条件
  • 背景信息
  • 实现方法(V2)
  • 实现方法 (V1)