配置消息的推送属性
在发送消息时,您可以通过设置消息的 pushOptions
对象,对单条消息的推送行为进行个性化配置。
示例代码
// iOS推送配置 RCIMIWIOSPushOptions
let iOSPushOptions = {};
iOSPushOptions.threadId = 'iOS 平台通知栏分组 ID ';
iOSPushOptions.category = 'iOS 富文本推送的类型开发者自己定义';
iOSPushOptions.apnsCollapseId = 'iOS 平台通知覆盖 ID ';
iOSPushOptions.richMediaUri = 'iOS 富文本推送内容的 URL';
// ...
// Android推送配置 RCIMIWAndroidPushOptions
let androidPushOptions = {};
androidPushOptions.notificationId = 'Android 平台 Push 唯一标识';
androidPushOptions.channelIdMi = '小米的渠道 ID';
androidPushOptions.channelIdHW = '华为的渠道 ID';
androidPushOptions.channelIdOPPO = 'OPPO 的渠道 ID。';
androidPushOptions.pushTypeVIVO = RCIMIWVIVOPushType.system; // operate: 运营消息
androidPushOptions.collapseKeyFCM = 'FCM 推送的通知分组 ID。SDK 5.1.3 及以上版本支持该字段。**注意**,如使用该字段,请确保控制台的 FCM 推送配置中推送方式为**通知消息方式**。
androidPushOptions.imageUrlFCM = '华为推送消息级别';
androidPushOptions.importanceHW = '华为通知栏消息右侧大图标 URL';
androidPushOptions.imageUrlHW = '华为通知栏消息右侧大图标 URL';
androidPushOptions.imageUrlMi = '小米 Large icon 链接';
androidPushOptions.channelIdFCM = 'FCM 通知的频道 ID';
// ...
// 消息推送配置 RCIMIWMessagePushOptions
let pushOptions = {};
pushOptions.disableNotification = true;
pushOptions.disablePushTitle = true;
pushOptions.pushTitle = '推送标题';
pushOptions.pushContent = '推送内容';
pushOptions.pushData = '远程推送附加信息';
pushOptions.forceShowDetailContent = true;
pushOptions.templateId = '推送模板 ID';
pushOptions.voIPPush = false;
pushOptions.iOSPushOptions = iOSPushOptions;
pushOptions.androidPushOptions = androidPushOptions;
// 创建文本消息体对象
let message = await engine.createTextMessage(RCIMIWConversationType.private, targetId, channelId, content);
//设置推送配置
message.pushOptions = pushOptions;
// 发送消息
let code = await engine.sendMessage(message);
pushOptions 属性说明
参数 | 类型 | 说明 |
---|---|---|
disableNotification | boolean | 通知栏是否屏蔽通知标题,true 不显示通知标题,false 显示通知标题,默认情况下融云单聊消息通知标题为用户名、群聊消息为群名称,设置后不会再显示通知标题。 |
disablePushTitle | boolean | 是否屏蔽通知标题。此属性只针目标用户为 iOS 平台时有效,Android 第三方推送平台的通知标题为必填项,所以暂不支持。 |
pushTitle | String | 推送标题,此处指定的推送标题优先级最高。如不设置,可参考 用户内容类消息格式 中对各内置消息类型默认推送通知标题与推送通知内容的说明。 |
pushContent | String | 推送内容。此处指定的推送内容优先级最高。如不设置,可参考 用户内容类消息格式 中对各内置消息类型默认推送通知标题与推送通知内容的说明。 |
pushData | String | 远程推送附加信息。如不设置,则使用消息发送参数中设置的 pushData 值。 |
forceShowDetailContent | bool | 是否越过目标客户端的配置,强制在推送通知内显示通知内容(pushContent )。客户端设备可通过 setPushContentShowStatus 设置在接收推送通知时仅显示类似「您收到了一条通知」的提醒。发送消息时,可设置 forceShowDetailContent 为 1 越过该配置,强制目标客户端在此条消息的推送通知中显示推送内容。 |
iOSPushOptions | RCIMIWIOSPushOptions | iOS 平台推送通知配置。目标端设备为 iOS 平台设备时,适用该配置。详细说明见 iOSPushOptions 属性说明。 |
androidPushOptions | RCIMIWAndroidPushOptions | Android 平台推送通知配置。目标端设备为 Android 平台设备时,适用该配置。详细说明见 RCIMIWAndroidPushOptions 属性说明。 |
templateId | string | 推送模板 ID。设置后根据目标用户通过 setPushLanguageCode 设置的语言环境,匹配模板中设置的语言内容进行推送,未匹配成功时使用默认内容进行推送。 模板内容在控制台 > 自定义推送文案中进行设置,具体操作请参见 配置和使用自定义多语言推送模板(./push-template)。 |
voIPPush | boolean | 如果对端设备是 iOS,设置 isVoIPPush 为 True, 会走 VoIP 通道推送 Push。 |
iOSPushOptions
属性说明
参数 | 类型 | 说明 |
---|---|---|
threadId | string | iOS 平台通知栏分组 ID,相同的 threadId 推送分为一组(iOS10 开始支持)。 |
category | string | iOS 富文本推送的类型开发者自己定义,自己在 App 端进行解析判断,与 richMediaUri 一起使用,当设置 category 后,推送时默认携带 mutable-content |
apnsCollapseId | string | iOS 平台通知覆盖 ID,apnsCollapseId 相同时,新收到的通知会覆盖老的通知,最大 64 字节(iOS10 开始支持)。 |
richMediaUri | string | iOS 富文本推送内容的 URL,与 category 一起使用。 |
androidPushOptions
属性说明
参数 | 类型 | 说明 |
---|---|---|
notificationId | string | Android 平台 Push 唯一标识,目前支持小米、华为推送平台,默认开发者不需要进行设置,当消息产生推送时,消息的 messageUId 作为 notificationId 使用。 |
channelIdMi | string | 小米的渠道 ID,该条消息针对小米使用的推送渠道,如开发者集成了小米推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建。 |
channelIdHW | string | 华为的渠道 ID,该条消息针对华为使用的推送渠道,如开发者集成了华为推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建。 |
channelIdOPPO | string | OPPO 的渠道 ID,该条消息针对 OPPO 使用的推送渠道,如开发者集成了 OPPO 推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建。 |
pushTypeVIVO | RCIMIWVIVOPushType | VIVO 推送通道类型 开发者集成了 VIVO 推送,需要指定推送类型时,可进行设置。 |
collapseKeyFCM | string | FCM 推送的通知分组 ID。SDK 5.1.3 及以上版本支持该字段。注意,如使用该字段,请确保控制台的 FCM 推送配置中推送方式为通知消息方式。 |
imageUrlFCM | string | FCM 推送的通知栏右侧图标 URL。如果不设置,则不展示通知栏右侧图标。SDK 5.1.3 及以上版本支持该字段。注意,如使用该字段,请确保控制台的 FCM 推送配置鉴权方式为证书,推送方式为通知消息 方式。 |
importanceHW | string | 华为推送消息级别 |
imageUrlHW | string | 华为通知栏消息右侧大图标 URL,如果不设置,则不展示通知栏右侧图标。 |
imageUrlMi | string | 小米 Large icon 链接 |
channelIdFCM | string | FCM 通知的频道 ID,该应用程序必须使用此频道 ID 创建一个频道,然后才能收到带有该频道 ID 的任何通知。 |
Channel ID 需要由开发者进行创建,创建方式如下:
推送通道 | 配置说明 |
---|---|
华为 | App 端,调用 Android SDK 创建 Channel ID 接口,创建 Channel ID。 |
小米 | 在小米开放平台管理台上创建 Channel ID 或通过小米服务端 API 创建。 |
OPPO | App 端,调用 Android SDK 创建 Channel ID;在 OPPO 管理台登记该 Channel ID,保持一致性。 |
vivo | 调用服务端 API 创建 Channel ID。 |
外部链接
您可以通过以下链接了解更多与 Channel ID 相关的信息:
- 小米推送:小米推送消息分类新规
- 华为推送:自定义通知渠道
- OPPO 推送:推送私信通道申请
- vivo 推送:消息分类功能说明