init setUserStatusListener setConnectListener setGroupEventListener seConversationListener seMessageExtConfig setMessageRevokedListener setMessageReceiptListener login logout initStorage getLocalMessage getLoginUser getConversation sendText sendImage sendFace sendSound sendLocation sendFile sendCustom addNewMessageListener getConversations getMessage deleteConversation deleteLocalMessage getUnReadMessageNum setRead createGroup inviteGroupMember applyJoinGroup quitGroup deleteGroupMember getGroupMembers getGroupList deleteGroup modifyGroupOwner getGroupDetailInfo getGroupPublicInfo getSelfInfoInGroup getGroupMembersInfo modifyGroupInfo modifyMemberRoleType modifyMemberSilence modifyMemberNameCard setReceiveMessageOpt getGroupPendencyList reportGroupPendency doGroupPendency getRemoteSelfProfile getLocalSelfProfile getUsersProfile getUserLocalProfile modifySelfProfile getFriendList modifyFriend addFriend deleteFriends doResponse getPendencyList deletePendency pendencyReport addBlackList deleteBlackList getBlackList createFriendGroup deleteFriendGroup addFriendsToFriendGroup deleteFriendsFromFriendGroup renameFriendGroup getFriendGroups setOfflinePushSettings getOfflinePushSettings setAPNS getAPNS setOfflineToken getDeviceBrand doBackground doForeground
tencentIm 原生插件封装了腾讯云通信IM。云通信(Instant Messaging,IM)承载亿级 QQ 用户即时通讯技术,立志成为企业数字化转型的通信助手,为您提供全方位立体化的通信能力,让通信触达全球,智联万物。
集成推送功能流程如下文所示。此过程中涉及到的 AppID 即为 Bundle Identifie,与 Yonbuilder 移动开发平台上的包名是同一个东西,在 Yonbuilder 移动开发平台上应用的概览里可以查看。
登录苹果开发者中心申请推送证书,本过程操作详情参考配置腾讯云推送证书
将上一步生成的 p12 证书上传到腾讯云通信IM,在【应用列表】页面,单击目标应用所在列的【应用配置】,进入【基础配置】页面。单击 iOS 推送证书区域的【+添加证书】,选择证书类型,上传 iOS 证书(p.12),设置证书密码,单击【确定】。
将 1 过程中生成的 provisioning profile 文件和证书上传 Yonbuilder 移动开发平台,即可在 Yonbuilder 移动开发平台云编译出 ipa 安装包并安装(正式版发布到苹果商店,通过苹果商店下载安装)
以上步骤都已经实现后,还需要使用您 App 的用户允许通知,才能收到远程推送。您可以在设备的设置应用中,查看当前App是否允许通知。
点击通知栏的远程推送时,如果此时 App 已经被系统冻结,则YonBuilder移动开发平台会将本次推送的内容通过事件监听回调的方式交给开发者。具体使用如下:
api.addEventListener({
name: 'noticeclicked'
}, function(ret) {
if (ret && ret.value) {
var type = ret.type;//0YonBuilder移动开发平台收到的推送内容,1原生插件开发者自定义的
var result = ret.value;//推送内容
}
})
value数据格式如下:
{
“localNotification”:false,//是否是本地通知,若为true则下文数据格式同addNewMessageListener接口监听回调的数据格式
"aps":{
"alert":{
"body":"您有一条新消息" // 消息内容
},
"badge":1, // 角标数
"sound":"default" // 提示音
},
"e":"自定义推送扩展",//自定义推送扩展
"f":"6001", // 消息发送方
"t":"6006", // 消息接收方
"m":"373360335316321408", // 消息id
"g":"1421300621769" // 群组id(如果是单聊则没有该字段)
}
如果 App 当前为活跃状态且未被系统冻结(按home键2分钟内app在后台运行状态),则您可通过在 addNewMessageListener 接口中监听捕获该消息,详情参考 addNewMessageListener 接口说明。此时若允许本地通知,则原生插件会弹出本地通知的提示框,用户点击该提示框,iOS系统会启动本App,同时api.addEventListener也会受到消息。
证书到期后,要更换新的推送证书,需要在环信管理后台将旧的删除,之后重新上传,上传时的命名要与旧证书的命名一致。一个appkey下可以传多个证书,这就可以实现夸App聊天,在不同App中初始化sdk的时候,指定不同的推送证书,每个证书对应当前App的bundle id,这样,用户在登录不同的App的时候就会绑定到不同的推送证书,从而实现夸App的聊天和推送。
注意:本原生插件 iOS 平台上最低适配系统版本为 iOS 8.0
<feature name="tencentIm">
<param name="appid" value="1400213323" />
</feature>
appid:腾讯云通信控制平台获取。
初始化,其他接口都需要在初始化之后调用
init({params}, callback(ret))
appid:
logLevel:
addLogListener:
logPrint:
logPath:
enableReadReceipt:
enableAutoReport:
ret:
{
status:, //布尔类型,是否成功
log:{ //JSON对象类型;log内容,仅当addLogListener为true时可能返回
level:, //数字类型;log级别,与参数logLevel对应
tag:'', //字符串类型;日志tag,iOS不支持
msg:'', //字符串类型;日志内容
}
}
err:
{
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.init({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
监听用户状态
setUserStatusListener({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
userStatus:'', //字符串类型,用户状态,取值:offline/被踢下线,sigExpired/签名过期需要刷新,userSig 重新登陆(iOS不支持),onReConnFailed/断线重连失败(android不支持)
code:0, //数字类型;错误码,onReConnFailed返回,android不支持
err:'' //字符串类型;错误信息,onReConnFailed返回,android不支持
}
err:
{
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.setUserStatusListener({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
监听链接状态
setConnectListener({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
action:'', //字符串类型;链接状态;取值范围:‘connected’/链接成功,‘disConnected’/链接失败,‘wifiNeedAuth’/等待wifi链接(iOS不支持),‘onDisconnect’/网络连接断开(android不支持),‘onConnecting’/连接中(android不支持)
code:0, //数字类型;错误码,disConnected、onDisconnect返回,android不支持
err:'' //字符串类型;错误信息,disConnected、onDisconnect返回,android不支持
}
err:
{
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.setConnectListener({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
设置群组事件监听
setGroupEventListener({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
tipsType:, //数字类型;1/加入群组,2/主动退出群组,3/被踢出群组,4/设置管理员,5/取消管理员,6/修改群资料,7/修改群成员信息,8/新建群(iOS不支持),9/删除群(iOS不支持)
opUser:'', //字符串类型;操作者账号
groupName:'', //字符串类型;群组名称,iOS返回为群组 ID
userList:[ //Json数组类型;被操作账号集合
'','','',
]
}
err:
{
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.setGroupEventListener({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
设置会话监听
seConversationListener({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
onRefresh:true, //布尔类型,为false时刷新部分会话,否则conversations不会返回,仅支持iOS
conversations:[{ //Json数组类型;刷新的会话
peer:'', //字符串类型;聊天标识,iOS单聊时为对方账号,群聊时为群组Id
type:, //数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话
},
]
}
err:
{
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.seConversationListener({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
消息扩展设置
seMessageExtConfig({params}, callback(ret))
enableStorage:
enableReadReceipt:
enableRecentContact:
enableAutoReport:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.seMessageExtConfig({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
Android系统
可提供的1.0.0及更高版本
添加消息撤回监听
setMessageRevokedListener({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
conversationId:'' //字符串类型;撤回消息所在会话id
conversationType:, //数字类型;撤回消息会话类型,1/单聊,2/群聊,3/系统消息
}
err:
{
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.setMessageRevokedListener({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加消息已读回执监听
setMessageReceiptListener({params}, callback(ret))
ret:
{
receipts[{ //json数组类型;已读回执列表
conversationId:'' //字符串类型;已读消息所在会话id
conversationType:, //数字类型;已读消息会话类型,1/单聊,2/群聊,3/系统消息,目前只支持 C2C 会话
timestamp:0 //数字类型;收到已读回执时,这个时间戳之前的消息都已读,目前只支持 C2C 会话
}]
}
var tencentIm = api.require('tencentIm');
tencentIm.setMessageReceiptListener({
}, function(ret) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
}
});
iOS系统,Android系统
可提供的1.0.6及更高版本
登陆
login({params}, callback(ret))
identifier:
userSig:
busiId:
ret:
{
status:, //布尔类型,是否成功
token:, //布尔类型,是否为设置token返回
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.login({
identifier:'',
userSig:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
登出
logout({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.logout({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
初始化本地存储,在未登录的情况下加载本地存储。
initStorage({params}, callback(ret))
identifier:
var tencentIm = api.require('tencentIm');
tencentIm.initStorage({
identifier
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
Android系统
可提供的1.0.0及更高版本
获取本地聊天记录
getLocalMessage({params}, callback(ret))
peer:
type:
count:
continue:
ret:
{
status:, //布尔类型,是否成功
messages:[ //JSON数组,信息
{
peer:'', //字符串类型;聊天标识
type:, //数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话
msgId:‘’, //字符串类型;messageId 当消息生成时,就已经固定
uniqueId:, //数字类型;当消息发送成功以后才能固定下来
sender:'', //字符串类型;发送者
messageStatus:, //数字类型;消息状态;1/发送中,2/发送完成,3/发送失败,4/已删除,5/本地消息,6/已撤回,
timestamp:, //数字类型;发送时间,服务器生成时间
seq:, //数字类型;消息序列号
isRead:, //布尔类型;是否已读,iOS不支持
isReaded:, //布尔类型;自己是否已读,android不支持
isPeerReaded:, //布尔类型;对方是否已读,android不支持
elems:[ //Json数组类型;根据内部字段type 分为文字消息、图片消息等内容详细信息请查看附录;1/文本消息,4/图片消息,5/语音消息,6/自定义消息,7/文件消息,9/群组消息,10/表情消息,11/位置消息,12/系统消息,15/视频消息
],
groupName:'', //字符串类型;群组名称,iOS不支持
},
{
}
]
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getLocalMessage({
peer:'',
count:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取登陆账户
getLoginUser(callback(ret))
ret:
{
status:, //布尔类型,是否成功
user:'', //字符串类型;登陆的账户
}
err:
{
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getLoginUser({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取会话
getConversation({params}, callback(ret))
peer:
type:
ret:
{
status:, //布尔类型,是否成功
conversation:{
peer:'', //字符串类型;聊天标识
type:, //数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话
}
}
err:
{
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getConversation({
peer:'',
count:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
发送字符串信息
sendText({params}, callback(ret))
peer:
type:
text:
onlineMessage:
offlinePushInfo:
{
desc:'', //字符串类型,自定义消息描述信息,做离线Push时文本展示
ext:'', //字符串类型;离线 Push 时扩展字段信息
pushFlag:0, //数字类型;推送规则标志;0:按照默认规则进行推送,1:不进行推送
iosConfig:{ //json对象,iOS离线推送配置
sound:'', //字符串类型;离线 Push 时声音字段信息
ignoreBadge:true,//布尔类型;忽略 badge 计数,如果设置为 true,在 iOS 接收端,这条消息不会使 APP 的应用图标未读计数增加
title:'', //字符串类型 ;离线 Push 展示标题(仅android支持)
},
androidConfig:{ //json对象,Android离线推送配置
title:'', //字符串类型;离线推送时展示标签
sound:'', //字符串类型;Android 离线 Push 时声音字段信息
OPPOChannelID:'', //字符串类型;为了保证在 Android 8.0 系统以上的 OPPO 手机上能收到离线推送消息,需要 app 在该手机上创建 channelID,并且设置该参数。(仅iOS支持)
notifyMode:0 //数字类型;离线推送时通知形式;0:通知栏消息,1:不弹窗,由应用自行处理
}
}
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.sendText({
peer:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
发送图片信息
sendImage({params}, callback(ret))
peer:
type:
imagePath:
imageLevel:
onlineMessage:
offlinePushInfo:
{
desc:'', //字符串类型,自定义消息描述信息,做离线Push时文本展示
ext:'', //字符串类型;离线 Push 时扩展字段信息
pushFlag:0, //数字类型;推送规则标志;0:按照默认规则进行推送,1:不进行推送
iosConfig:{ //json对象,iOS离线推送配置
sound:'', //字符串类型;离线 Push 时声音字段信息
ignoreBadge:true,//布尔类型;忽略 badge 计数,如果设置为 true,在 iOS 接收端,这条消息不会使 APP 的应用图标未读计数增加
title:'', //字符串类型 ;离线 Push 展示标题(仅android支持)
},
androidConfig:{ //json对象,Android离线推送配置
title:'', //字符串类型;离线推送时展示标签
sound:'', //字符串类型;Android 离线 Push 时声音字段信息
OPPOChannelID:'', //字符串类型;为了保证在 Android 8.0 系统以上的 OPPO 手机上能收到离线推送消息,需要 app 在该手机上创建 channelID,并且设置该参数。(仅iOS支持)
notifyMode:0 //数字类型;离线推送时通知形式;0:通知栏消息,1:不弹窗,由应用自行处理
}
}
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.sendImage({
peer:'',
type:,
imagePath:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
表情消息发送,IM SDK 并不提供表情包,如果开发者有表情包,可使用 index 存储表情在表情包中的索引,由用户自定义,或者直接使用data存储表情二进制信息以及字符串 key,都由用户自定义,IM SDK 内部只做透传。
sendFace({params}, callback(ret))
peer:
type:
index:
faceData:
onlineMessage:
offlinePushInfo:
{
desc:'', //字符串类型,自定义消息描述信息,做离线Push时文本展示
ext:'', //字符串类型;离线 Push 时扩展字段信息
pushFlag:0, //数字类型;推送规则标志;0:按照默认规则进行推送,1:不进行推送
iosConfig:{ //json对象,iOS离线推送配置
sound:'', //字符串类型;离线 Push 时声音字段信息
ignoreBadge:true,//布尔类型;忽略 badge 计数,如果设置为 true,在 iOS 接收端,这条消息不会使 APP 的应用图标未读计数增加
title:'', //字符串类型 ;离线 Push 展示标题(仅android支持)
},
androidConfig:{ //json对象,Android离线推送配置
title:'', //字符串类型;离线推送时展示标签
sound:'', //字符串类型;Android 离线 Push 时声音字段信息
OPPOChannelID:'', //字符串类型;为了保证在 Android 8.0 系统以上的 OPPO 手机上能收到离线推送消息,需要 app 在该手机上创建 channelID,并且设置该参数。(仅iOS支持)
notifyMode:0 //数字类型;离线推送时通知形式;0:通知栏消息,1:不弹窗,由应用自行处理
}
}
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.sendFace({
peer:'',
type:,
index:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
发送语音消息
sendSound({params}, callback(ret))
peer:
type:
duration:
soundPath:
onlineMessage:
offlinePushInfo:
{
desc:'', //字符串类型,自定义消息描述信息,做离线Push时文本展示
ext:'', //字符串类型;离线 Push 时扩展字段信息
pushFlag:0, //数字类型;推送规则标志;0:按照默认规则进行推送,1:不进行推送
iosConfig:{ //json对象,iOS离线推送配置
sound:'', //字符串类型;离线 Push 时声音字段信息
ignoreBadge:true,//布尔类型;忽略 badge 计数,如果设置为 true,在 iOS 接收端,这条消息不会使 APP 的应用图标未读计数增加
title:'', //字符串类型 ;离线 Push 展示标题(仅android支持)
},
androidConfig:{ //json对象,Android离线推送配置
title:'', //字符串类型;离线推送时展示标签
sound:'', //字符串类型;Android 离线 Push 时声音字段信息
OPPOChannelID:'', //字符串类型;为了保证在 Android 8.0 系统以上的 OPPO 手机上能收到离线推送消息,需要 app 在该手机上创建 channelID,并且设置该参数。(仅iOS支持)
notifyMode:0 //数字类型;离线推送时通知形式;0:通知栏消息,1:不弹窗,由应用自行处理
}
}
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.sendSound({
peer:'',
type:,
duration:,
soundPath:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
发送位置消息
sendLocation({params}, callback(ret))
peer:
type:
desc:
longitude:
latitude:
onlineMessage:
offlinePushInfo:
{
desc:'', //字符串类型,自定义消息描述信息,做离线Push时文本展示
ext:'', //字符串类型;离线 Push 时扩展字段信息
pushFlag:0, //数字类型;推送规则标志;0:按照默认规则进行推送,1:不进行推送
iosConfig:{ //json对象,iOS离线推送配置
sound:'', //字符串类型;离线 Push 时声音字段信息
ignoreBadge:true,//布尔类型;忽略 badge 计数,如果设置为 true,在 iOS 接收端,这条消息不会使 APP 的应用图标未读计数增加
title:'', //字符串类型 ;离线 Push 展示标题(仅android支持)
},
androidConfig:{ //json对象,Android离线推送配置
title:'', //字符串类型;离线推送时展示标签
sound:'', //字符串类型;Android 离线 Push 时声音字段信息
OPPOChannelID:'', //字符串类型;为了保证在 Android 8.0 系统以上的 OPPO 手机上能收到离线推送消息,需要 app 在该手机上创建 channelID,并且设置该参数。(仅iOS支持)
notifyMode:0 //数字类型;离线推送时通知形式;0:通知栏消息,1:不弹窗,由应用自行处理
}
}
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.sendLocation({
peer:'',
type:,
desc:'',
longitude:,
latitude:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
发送小文件
sendFile({params}, callback(ret))
peer:
type:
filePath:
fileName:
onlineMessage:
offlinePushInfo:
{
desc:'', //字符串类型,自定义消息描述信息,做离线Push时文本展示
ext:'', //字符串类型;离线 Push 时扩展字段信息
pushFlag:0, //数字类型;推送规则标志;0:按照默认规则进行推送,1:不进行推送
iosConfig:{ //json对象,iOS离线推送配置
sound:'', //字符串类型;离线 Push 时声音字段信息
ignoreBadge:true,//布尔类型;忽略 badge 计数,如果设置为 true,在 iOS 接收端,这条消息不会使 APP 的应用图标未读计数增加
title:'', //字符串类型 ;离线 Push 展示标题(仅android支持)
},
androidConfig:{ //json对象,Android离线推送配置
title:'', //字符串类型;离线推送时展示标签
sound:'', //字符串类型;Android 离线 Push 时声音字段信息
OPPOChannelID:'', //字符串类型;为了保证在 Android 8.0 系统以上的 OPPO 手机上能收到离线推送消息,需要 app 在该手机上创建 channelID,并且设置该参数。(仅iOS支持)
notifyMode:0 //数字类型;离线推送时通知形式;0:通知栏消息,1:不弹窗,由应用自行处理
}
}
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.sendFile({
peer:'',
type:,
filePath:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
发送自定义消息
sendCustom({params}, callback(ret))
peer:
type:
data:
desc:
ext:
sound:
onlineMessage:
offlinePushInfo:
{
desc:'', //字符串类型,自定义消息描述信息,做离线Push时文本展示
ext:'', //字符串类型;离线 Push 时扩展字段信息
pushFlag:0, //数字类型;推送规则标志;0:按照默认规则进行推送,1:不进行推送
iosConfig:{ //json对象,iOS离线推送配置
sound:'', //字符串类型;离线 Push 时声音字段信息
ignoreBadge:true,//布尔类型;忽略 badge 计数,如果设置为 true,在 iOS 接收端,这条消息不会使 APP 的应用图标未读计数增加
title:'', //字符串类型 ;离线 Push 展示标题(仅android支持)
},
androidConfig:{ //json对象,Android离线推送配置
title:'', //字符串类型;离线推送时展示标签
sound:'', //字符串类型;Android 离线 Push 时声音字段信息
OPPOChannelID:'', //字符串类型;为了保证在 Android 8.0 系统以上的 OPPO 手机上能收到离线推送消息,需要 app 在该手机上创建 channelID,并且设置该参数。(仅iOS支持)
notifyMode:0 //数字类型;离线推送时通知形式;0:通知栏消息,1:不弹窗,由应用自行处理
}
}
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.sendCustom({
peer:'',
type:,
data:'',
desc:'',
sound:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加新消息监听
addNewMessageListener({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
isPushMsg, //布尔类型,表示是否是远程推送而来的消息,本参数仅在iOS平台有效。
messages:[ //Json数组类型;消息,只是本地曾经没有过的消息
{
peer:'', //字符串类型;聊天标识
type:, //数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话
msgId:‘’, //字符串类型;messageId 当消息生成时,就已经固定
uniqueId:, //数字类型;当消息发送成功以后才能固定下来
sender:'', //字符串类型;发送者
messageStatus:, //数字类型;消息状态;1/发送中,2/发送完成,3/发送失败,4/已删除,5/本地消息,6/已撤回,
timestamp:, //数字类型;发送时间,服务器生成时间
seq:, //数字类型;消息序列号
isRead:, //布尔类型;是否已读
elems:[ //Json数组类型;根据内部字段type 分为文字消息、图片消息等内容详细信息请查看附录;1/文本消息,4/图片消息,5/语音消息,6/自定义消息,7/文件消息,9/群组消息,10/表情消息,11/位置消息,12/系统消息,13/关系变更通知,15/视频消息
],
groupName:'', //字符串类型;群组名称,iOS不支持
},]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.addNewMessageListener({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取所有会话
getConversations({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
conversations:[ //Json数组;会话
{
peer:'', //字符串类型;聊天标识
type:, //数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话
},
],
}
err:
{
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getConversations({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取聊天记录
getMessage({params}, callback(ret))
peer:
type:
count:
continue:
ret:
{
status:, //布尔类型,是否成功
messages:[ //JSON数组,信息
{
peer:'', //字符串类型;聊天标识
type:, //数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话
msgId:‘’, //字符串类型;messageId 当消息生成时,就已经固定
uniqueId:, //数字类型;当消息发送成功以后才能固定下来
sender:'', //字符串类型;发送者
messageStatus:, //数字类型;消息状态;1/发送中,2/发送完成,3/发送失败,4/已删除,5/本地消息,6/已撤回,
timestamp:, //数字类型;发送时间,服务器生成时间
seq:, //数字类型;消息序列号
isRead:, //布尔类型;是否已读
elems:[ //Json数组类型;根据内部字段type 分为文字消息、图片消息等内容详细信息请查看附录;1/文本消息,4/图片消息,5/语音消息,6/自定义消息,7/文件消息,9/群组消息,10/表情消息,11/位置消息,12/系统消息,15/视频消息
],
groupName:'', //字符串类型;群组名称,iOS不支持
},
{ }
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getMessage({
peer:'',
count:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除会话
deleteConversation({params}, callback(ret))
peer:
type:
delMessage:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.deleteConversation({
peer:'',
type:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除本地消息记录
deleteLocalMessage({params}, callback(ret))
peer:
type:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.deleteLocalMessage({
peer:'',
type:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取未读消息数量
getUnReadMessageNum({params}, callback(ret))
peer:
type:
ret:
{
status:, //布尔类型,是否成功
count:, //数字类型;未读消息数量
}
err:
{
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getUnReadMessageNum({
peer:'',
type:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
会话进行已读上报
setRead({params}, callback(ret))
peer:
type:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.setRead({
peer:'',
type:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
创建群组
createGroup({params}, callback(ret))
groupType:
groupName:
groupId:
notification:
introduction:
faceUrl:
maxMemberNum:
groupAddOpt:
members:
['', //字符串类型,成员账号
'',
''
]
membersInfos:
[{'成员账号':'成员角色'}]
成员角色取值如下:
0:群成员
1:群管理员
2:群主
customInfo:
{'key':'value',
'key1':'value',
}
ret:
{
status:, //布尔类型,是否成功
groupId:'', //字符串类型;群id
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.createGroup({
groupName:'',
groupType:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
邀请用户进群, 私有群:群成员无需受邀用户同意,直接将其拉入群中。 公开群/聊天室:不允许群成员邀请他人入群。只能由 App 管理员通过 REST API 邀请他人入群。 音视频聊天室:不允许任何人(包括 App 管理员)邀请他人入群。
inviteGroupMember({params}, callback(ret))
groupId:
members:
['', //字符串类型,成员账号
'',
''
]
ret:
{
status:, //布尔类型,是否成功
results:[ //添加结果
{ member:'', //字符串类型;成员
result:, //数字类型;添加结果,0:添加失败;1:添加成功;2:原本是群成员,3:等待对方处理(android不支持)
}
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.inviteGroupMember({
groupId:'',
members:[],
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
申请入群
applyJoinGroup({params}, callback(ret))
groupId:
reason:
ret:
{
status:, //布尔类型,是否申请成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.applyJoinGroup({
groupId:'',
reason:‘’,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
退出群组,私有群:全员可退出群组。公开群、聊天室和直播大群:群主不能退出。
quitGroup({params}, callback(ret))
groupId:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.quitGroup({
groupId:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除群组成员,私有群:只有创建者可删除群组成员。公开群和聊天室:只有管理员和群主可以踢人。直播大群:不能踢人。
deleteGroupMember({params}, callback(ret))
groupId:
members:
['', //字符串类型,成员账号
'',
''
]
reason:
ret:
{
status:, //布尔类型,是否成功
results:[ //删除结果
{ member:'', //字符串类型;成员
result:, //数字类型;添加结果,0:删除失败;1:删除成功;2:不是群成员
}
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.deleteGroupMember({
groupId:'',
members:[],
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取群成员列表
getGroupMembers({params}, callback(ret))
groupId:
ret:
{
status:, //布尔类型,是否申请成功
members:[ //删除结果
{ member:'', //字符串类型;成员
joinTime:, //数字类型;加入时间
role:, //数字类型;群内角色
}
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getGroupMembers({
groupId:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取加入群组列表
getGroupList({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
groups:[ //Jsong数组类型;已添加群组
{ groupId:'', //字符串类型;群id
groupName:'', //字符串类型;群组名称
groupType:'', //字符串类型;群组类型
faceUrl:'', //字符串类型;群组头像
isSilenceAll:, //布尔类型;是否设置了全员禁言
}
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getGroupList({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
解散群组, 对于私有群:任何人都无法解散群组。 对于公开群、聊天室和直播大群:群主可以解散群组。
deleteGroup({params}, callback(ret))
groupId:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.deleteGroup({
groupId:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
转让群组
modifyGroupOwner({params}, callback(ret))
groupId:
identifier:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.modifyGroupOwner({
groupId:'',
identifier:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
查询群组资料,在群组内使用此接口
getGroupDetailInfo({params}, callback(ret))
groupIds:
ret:
{
status:, //布尔类型,是否成功
groupInfos:[ //Json数组,群组信息
{groupId:'', //字符串类型;群组id
groupName:'', //字符串类型;群组名称
groupOwner:'', //字符串类型;群主账号
createTime:, //数字类型;创建时间
lastInfoTime:, //数字类型;最后群组信息修改时间
lastMsgTime:, //数字类型;最后消息时间
memberNum:, //数字类型;成员数量
maxMemberNum:, //数字类型;最大成员数量
groupIntroduction:'', //字符串类型;群简介
groupNotification:'', //字符串类型;群公告
faceUrl:'', //字符串类型;群头像类型
groupType:'', //字符串类型;群类型
onlineMemberNum:, //数字类型;在线群成员数量
isSilenceAll:, //布尔类型;是否全部群成员禁言
lastMsg:{ //Json对象类型;最新一条消息,iOS不支持
peer:'', //字符串类型;聊天标识
type:, //数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话
msgId:‘’, //字符串类型;messageId 当消息生成时,就已经固定
uniqueId:, //数字类型;当消息发送成功以后才能固定下来
sender:'', //字符串类型;发送者
messageStatus:, //数字类型;消息状态;1/发送中,2/发送完成,3/发送失败,4/已删除,5/本地消息,6/已撤回,
timestamp:, //数字类型;发送时间,服务器生成时间
seq:, //数字类型;消息序列号
isRead:, //布尔类型;是否已读
elems:[ //Json数组类型;根据内部字段type 分为文字消息、图片消息等内容详细信息请查看附录;1/文本消息,4/图片消息,5/语音消息,6/自定义消息,7/文件消息,9/群组消息,10/表情消息,11/位置消息,12/系统消息,15/视频消息
],
groupName:'', //字符串类型;群组名称,iOS不支持
},
}
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getGroupDetailInfo({
groupIds:[],
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
非群成员获取群资料
getGroupPublicInfo({params}, callback(ret))
groupIds:
ret:
{
status:, //布尔类型,是否成功
groupInfos:[ //Json数组,群组信息
{groupId:'', //字符串类型;群组id
groupName:'', //字符串类型;群组名称
groupOwner:'', //字符串类型;群主账号
createTime:, //数字类型;创建时间
lastInfoTime:, //数字类型;最后群组信息修改时间
lastMsgTime:, //数字类型;最后消息时间
memberNum:, //数字类型;成员数量
maxMemberNum:, //数字类型;最大成员数量
groupIntroduction:'', //字符串类型;群简介
groupNotification:'', //字符串类型;群公告
faceUrl:'', //字符串类型;群头像类型
groupType:'', //字符串类型;群类型
onlineMemberNum:, //数字类型;在线群成员数量
isSilenceAll:, //布尔类型;是否全部群成员禁言
}
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getGroupPublicInfo({
groupIds:[],
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
Android系统
可提供的1.0.0及更高版本
获取个人在群里资料
getSelfInfoInGroup({params}, callback(ret))
groupId:
ret:
{
status:, //布尔类型,是否成功
info: //Json对象类型;个人信息
{
joinTime:, //数字类型;加入时间
megFlag:, //数字类型;iOS不支持
msgSeq:, //数字类型;iOS不支持
nameCard:'', //字符串类型;群内名称
rule:, //数字类型;群内类别
silenceSeconds:, //数字类型;禁言时间,iOS为禁言结束时间
tinyId:, //数字类型;iOS不支持
user:, //字符串类型;账号
},
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getSelfInfoInGroup({
groupId:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取群内成员资料
getGroupMembersInfo({params}, callback(ret))
groupId:
identifiers:
ret:
{
status:, //布尔类型,是否成功
infos:[ //Json数组类型;群成员信息
{
joinTime:, //数字类型;加入时间
megFlag:, //数字类型;iOS不支持
msgSeq:, //数字类型;iOS不支持
nameCard:'', //字符串类型;群内名称
rule:, //数字类型;群内类别
silenceSeconds:, //数字类型;禁言时间
tinyId:, //数字类型;iOS不支持
user:, //字符串类型;账号
},
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getGroupMembersInfo({
groupId:'',
identifiers:['']
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
修改群资料
modifyGroupInfo({params}, callback(ret))
groupId:
groupName:
notification:
introduction:
faceUrl:
groupAddOpt:
maxMemberNum:
visable:
silenceAll:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.modifyGroupInfo({
groupId:'',
groupName:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
修改成员群身份,只有群主或者管理员可以进行对群成员的身份进行修改。 直播大群不支持修改用户群内身份。
modifyMemberRoleType({params}, callback(ret))
groupId:
identifier:
roleType:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.modifyMemberRoleType({
groupId:'',
identifier:'',
roleType:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
群成员禁言并设置时长。只有群主或者管理员可以进行对群成员进行禁言。
modifyMemberSilence({params}, callback(ret))
groupId:
identifier:
silenceTime:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.modifyMemberSilence({
groupId:'',
identifier:'',
silenceTime:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
设置成员群名称。
modifyMemberNameCard({params}, callback(ret))
groupId:
identifier:
nameCard:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.modifyMemberNameCard({
groupId:'',
identifier:'',
nameCard:‘’,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
Android系统
可提供的1.0.0及更高版本
设置群消息接收选项
setReceiveMessageOpt({params}, callback(ret))
groupId:
identifier:
reciveOpt:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.setReceiveMessageOpt({
groupId:'',
identifier:'',
reciveOpt:2,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
拉取群组未决信息
getGroupPendencyList({params}, callback(ret))
timestamp:
numPerPage:
ret:
{
status:, //布尔类型,是否成功
nxtStartTimestamp:, //数字类型;下次查询的时间戳
rportedTimestamp:, //数字类型;查询数据的时间戳,iOS不支持
readTimeSeq:, //数组类型;已读时间戳大小,android不支持
uReadCount:, //数字类型;未读条数
pendencys[ //Json数组;未决消息
{
groupId:'', //字符串类型;群组id
fromUser:'', //字符串类型;邀请人;
toUser'', //字符串类型;被邀请人
addTime:, //数字类型;添加时间
pendencyType:, //数字类型;消息类型,取值范围:0/自己申请,1/被邀请,2/被邀请也自己申请(iOS不支持)
handledStatus:, //数字类型;处理状态,取值范围:0/未处理,1/其他人处理了,2/android:自己处理的,iOS:被用户处理
operationType:, //数字类型;处理结果,hndledStatus不为0时有效。取值范围 0/拒绝,1/同意
requestMsg:'', //字符串类型;请求者添加的附加信息
requestUserData:'', //字符串类型;请求者添加的自定义信息,iOS不支持
handledMsg:'', //字符串类型;处理者添加的附加信息
handledUserData:'', //字符串类型;处理者添加的自定义信息,iOS不支持
}
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getGroupPendencyList({
timestamp:,
numPerPage:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
上报未决消息为已读,
reportGroupPendency({params}, callback(ret))
timestamp:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.reportGroupPendency({
timestamp:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
处理未决信息
doGroupPendency({params}, callback(ret))
timestamp:
numPerPage:
doPendency
[{
id:'', //字符串类型;消息id,开发者自行定义用于处理成功时返回
groupId:'', //字符串类型;群组id
toUser:'', //字符串类型;被邀请人
addTimer:. //数字类型;邀请创建时间
accept:, //布尔类型;是否同意
handledMsg:'', //字符串类型;此处理附加信息
}
]
ret:
{
status:, //布尔类型,是否成功
succeedIds:[ //Json数组,成功处理的id
'', '',
],
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.doGroupPendency({
timestamp:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取服务器保存的自己资料
getRemoteSelfProfile({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
selfProfile:{ //Json对象类型;资料
identifier:'', //字符串类型;账号
nickName:'', //字符串类型;昵称
faceUrl:'', //字符串类型;头像地址
signature:'', //字符串类型;签名
allowType:'', //字符串类型;添加好友选项,‘AllowType_Type_AllowAny’/允许所有,‘AllowType_Type_DenyAny’/拒绝所有,‘AllowType_Type_NeedConfirm’/需要同意,iOS为数字类型,0/同意任何用户加好友 ,1/需要验证,2/拒绝任何人加好友
gender:, //数字类型;性别,1/男 ,2/女 ,0/未知
birthday:, //数字类型;生日
language:'', //数字类型;语言
location:'', //字符串类型;位置
level:, //数字类型;等级
role:, //数字类型;角色
},
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getRemoteSelfProfile({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取本地保存的自己资料
getLocalSelfProfile({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
selfProfile:{ //Json对象类型;资料
identifier:'', //字符串类型;账号
nickName:'', //字符串类型;昵称
faceUrl:'', //字符串类型;头像地址
signature:'', //字符串类型;签名
allowType:'', //字符串类型;添加好友选项,‘AllowType_Type_AllowAny’/允许所有,‘AllowType_Type_DenyAny’/拒绝所有,‘AllowType_Type_NeedConfirm’/需要同意
gender:, //数字类型;性别,1/男 ,2/女 ,0/未知
birthday:, //数字类型;生日
language:'', //数字类型;语言
location:'', //字符串类型;位置
level:, //数字类型;等级
role:, //数字类型;角色
},
}
err:
{
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getLocalSelfProfile({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
Android系统
可提供的1.0.0及更高版本
获取好友资料
getUsersProfile({params}, callback(ret))
forceUpdate:
users:
['','','',]
ret:
{
status:, //布尔类型,是否成功
selfProfiles:[{ //Json对象数组;资料
identifier:'', //字符串类型;账号
nickName:'', //字符串类型;昵称
faceUrl:'', //字符串类型;头像地址
signature:'', //字符串类型;签名
allowType:'', //字符串类型;添加好友选项,‘AllowType_Type_AllowAny’/允许所有,‘AllowType_Type_DenyAny’/拒绝所有,‘AllowType_Type_NeedConfirm’/需要同意,iOS为数字类型,0/同意任何用户加好友 ,1/需要验证,2/拒绝任何人加好友
gender:, //数字类型;性别,1/男 ,2/女 ,0/未知
birthday:, //数字类型;生日
language:'', //数字类型;语言
location:'', //字符串类型;位置
level:, //数字类型;等级
role:, //数字类型;角色
},
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getUsersProfile({
users:[],
forceUpdate:true,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取好友本地存储资料
getUserLocalProfile({params}, callback(ret))
user:
ret:
{
status:, //布尔类型,是否成功
selfProfile:{ //Json对象类型;资料
identifier:'', //字符串类型;账号
nickName:'', //字符串类型;昵称
faceUrl:'', //字符串类型;头像地址
signature:'', //字符串类型;签名
allowType:'', //字符串类型;添加好友选项,‘AllowType_Type_AllowAny’/允许所有,‘AllowType_Type_DenyAny’/拒绝所有,‘AllowType_Type_NeedConfirm’/需要同意
gender:, //数字类型;性别,1/男 ,2/女 ,0/未知
birthday:, //数字类型;生日
language:'', //数字类型;语言
location:'', //字符串类型;位置
level:, //数字类型;等级
role:, //数字类型;角色
}
}
err:
{
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getUserLocalProfile({
user:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
Android系统
可提供的1.0.0及更高版本
修改自己资料
modifySelfProfile ({params}, callback(ret))
nickName:
faceUrl:
allowType:
gender:
birthday:
location:
language:
signature:
level:
role:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.modifySelfProfile ({
nickName:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取好友列表
getFriendList ({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
friends:[ //Json数组类型;好友列表
{identifier:'', //字符串类型;用户账号
remark:'', //字符串类型;好友备注
addWorking:'', //字符串类型;加好友理由
addSource:'', //字符串类型;好友来源
groupNames:[], //数组类型;分组名称列表
userProfile:{ //Json对象类型;用户资料
identifier:'', //字符串类型;账号
nickName:'', //字符串类型;昵称
faceUrl:'', //字符串类型;头像地址
signature:'', //字符串类型;签名
allowType:'', //字符串类型;添加好友选项,‘AllowType_Type_AllowAny’/允许所有,‘AllowType_Type_DenyAny’/拒绝所有,‘AllowType_Type_NeedConfirm’/需要同意,iOS为数字类型,0/同意任何用户加好友 ,1/需要验证,2/拒绝任何人加好友
gender:, //数字类型;性别,1/男 ,2/女 ,0/未知
birthday:, //数字类型;生日
language:'', //数字类型;语言
location:'', //字符串类型;位置
level:, //数字类型;等级
role:, //数字类型;角色
}
},
]
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getFriendList ({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
修改好友信息
modifyFriend ({params}, callback(ret))
identifier:
remake:
group:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: ‘’, //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.modifyFriend ({
identifier:'',
remake:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加好友
addFriend ({params}, callback(ret))
identifier:
remake:
addWording :
addSource :
friendGroup:
ret:
{
status:, //布尔类型,是否成功
resultCode:, //数字类型;添加好友回执 取值范围:0/添加成功,30001/请求参数错误,30010/自己好友数已达上限,30014/对方好友数已达上限,30515/被加好友在自己黑名单,30516/被加好友设置为禁止加好友,30525/已被被添加好友添加黑名单,30539/等待好友同意
identifier:'', //字符串类型;添加账号
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.addFriend ({
identifier:'',
remake:'',
addWording:'',
addSource:'',
friendGroup:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除好友
deleteFriends ({params}, callback(ret))
identifiers:
['','','',]
delBoth:
ret:
{
status:, //布尔类型,是否成功
result:[ //Json数组类型;删除返回结果
{ resultCode:, //数字类型;添加好友回执 取值范围:0/删除成功,30001/请求参数错误,30010/自己好友数已达上限,30014/对方好友数已达上限,30515/被删好友在自己黑名单,30516/被删好友设置为禁止加好友,30525/已被被添加好友添加黑名单,30539/等待好友同意
identifier:'', //字符串类型;账号
},
],
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.deleteFriends({
identifiers:['222']
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
同意/拒绝好友申请
doResponse ({params}, callback(ret))
identifier:
remark:
responseType:
ret:
{
status:, //布尔类型,是否成功
resultCode:, //数字类型;回执 取值范围:0/操作成功,30001/请求参数错误,30010/自己好友数已达上限,30014/对方好友数已达上限,30515/被加好友在自己黑名单,30516/被加好友设置为禁止加好友,30525/已被被添加好友添加黑名单,30539/等待好友同意
identifier:'', //字符串类型;添加账号
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.doResponse ({
identifier:'',
remake:'',
responseType:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取好友未决列表
getPendencyList ({params}, callback(ret))
seq:
timestamp:
numPerPage:
dencyGetType:
ret:
{
status:, //布尔类型,是否成功
seq:, //数字类型;序列号
timestamp:, //数字类型;翻页时间戳
unReadCount:, //数字类型;未读数量
pendencyList:[ //Json数组;信息列表
{ identifier:'', //字符串类型;用户id
addTime:, //数字类型;添加时间
addSoure:'', //字符串类型;来源
addWorking:'', //字符串类型;附言
nickName:'', //字符串类型;昵称
pendencyGetType:, //数字类型;未决请求类型,1/别人发给我的,2/我发给别人的,3/别人发给我的 和 我发给别人的。仅拉取时有效
}
]
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getPendencyList ({
seq:,
timestamp:,
numPerPage:,
dencyGetType:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除好友未决消息
deletePendency ({params}, callback(ret))
users:
{'','','',}
dencyGetType:
ret:
{
status:, //布尔类型,是否成功
result:[ //Json数组类型;删除返回结果
{ resultCode:, //数字类型;添加好友回执 取值范围:0/成功,30001/请求参数错误
identifier:'', //字符串类型;账号
},
],
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.deletePendency ({
users:[],
dencyGetType:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
好友未决已读上报
pendencyReport ({params}, callback(ret))
timestamp:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.pendencyReport ({
timestamp:,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加用户到黑名单
addBlackList ({params}, callback(ret))
users:
{'','','',}
ret:
{
status:, //布尔类型,是否成功
result:[ //Json数组类型;删除返回结果
{ resultCode:, //数字类型;添加好友回执 取值范围:0/成功,30001/请求参数错误
identifier:'', //字符串类型;账号
},
]
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.addBlackList ({
users:[],
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
把用户从黑名单中移除
deleteBlackList ({params}, callback(ret))
users:
{'','','',}
ret:
{
status:, //布尔类型,是否成功
result:[ //Json数组类型;删除返回结果
{ resultCode:, //数字类型;添加好友回执 取值范围:0/成功,30001/请求参数错误
identifier:'', //字符串类型;账号
},
]
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.deleteBlackList ({
users:[],
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取黑名单列表
getBlackList ({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
blacks:[ //Json数组类型;好友列表
{identifier:'', //字符串类型;用户账号
remark:'', //字符串类型;好友备注
addWorking:'', //字符串类型;加好友理由
addSource:'', //字符串类型;好友来源
groupNames:[], //数组类型;分组名称列表
userProfile:{ //Json对象类型;用户资料
identifier:'', //字符串类型;账号
nickName:'', //字符串类型;昵称
faceUrl:'', //字符串类型;头像地址
signature:'', //字符串类型;签名
allowType:'', //字符串类型;添加好友选项,‘AllowType_Type_AllowAny’/允许所有,‘AllowType_Type_DenyAny’/拒绝所有,‘AllowType_Type_NeedConfirm’/需要同意,,iOS为数字类型,0/同意任何用户加好友 ,1/需要验证,2/拒绝任何人加好友
gender:, //数字类型;性别,1/男 ,2/女 ,0/未知
birthday:, //数字类型;生日
language:'', //数字类型;语言
location:'', //字符串类型;位置
level:, //数字类型;等级
role:, //数字类型;角色
}
},
]
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getBlackList ({
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
创建好友分组
createFriendGroup ({params}, callback(ret))
identifiers:
['','','',]
groupNames:
['','','',]
ret:
{
status:, //布尔类型,是否成功
result:[ //Json数组类型;删除返回结果
{ resultCode:, //数字类型;添加好友回执 取值范围:0/成功,30001/请求参数错误
identifier:'', //字符串类型;账号
},
]
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.createFriendGroup ({
identifiers:[],
groupNames:[],
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除好友分组
deleteFriendGroup ({params}, callback(ret))
groupNames:
['','','',]
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.deleteFriendGroup ({
groupNames:[],
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加好友到某分组
addFriendsToFriendGroup ({params}, callback(ret))
identifiers:
{'','','',}
groupName:
ret:
{
status:, //布尔类型,是否成功
result:[ //Json数组类型;删除返回结果
{ resultCode:, //数字类型;添加好友回执 取值范围:0/成功,30001/请求参数错误
identifier:'', //字符串类型;账号
},
]
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.addFriendsToFriendGroup ({
identifiers:[],
groupName:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
从某分组删除好友
deleteFriendsFromFriendGroup ({params}, callback(ret))
identifiers:
{'','','',}
groupName:
ret:
{
status:, //布尔类型,是否成功
result:[ //Json数组类型;删除返回结果
{ resultCode:, //数字类型;添加好友回执 取值范围:0/成功,30001/请求参数错误
identifier:'', //字符串类型;账号
},
]
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.deleteFriendsFromFriendGroup ({
identifiers:[],
groupName:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
重命名好友分组
renameFriendGroup ({params}, callback(ret))
oldName:
newName:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.renameFriendGroup ({
oldName:‘’,
newName:'',
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取好友分组
getFriendGroups ({params}, callback(ret))
groupNames:
{'','','',}
ret:
{
status:, //布尔类型,是否成功
groups:[ //Json数组类型;查询到的分组信息
{groupName:'', //字符串类型;分组名称
userCount:, //数字类型;分组人数
friends:['','',], //数组类型;分组内好友
}
]
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getFriendGroups ({
groupNames:[],
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
初始化离线推送配置,需登录后设置才生效
setOfflinePushSettings ({params}, callback(ret))
enabled:
c2cMsgRemindSound:
groupMsgRemindSound:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.setOfflinePushSettings ({
enabled:true,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
Android系统
可提供的1.0.0及更高版本
初始化离线推送配置,需登录后设置才生效
getOfflinePushSettings ({params}, callback(ret))
ret:
{
status:, //布尔类型,是否成功
isEnable:, //布尔类型;是否打开
c2cMsgRemindSoundPath:'', //字符串类型;c2c 消息的离线推送时的提醒声音路径
groupMsgRemindSoundPath:'', //字符串类型;群消息的离线推送时的提醒声音路径
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getOfflinePushSettings ({
enabled:true,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
Android系统
可提供的1.0.0及更高版本
设置 APNS
setAPNS ({params}, callback(ret))
openPush:
c2cSound:
groupSound:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.setAPNS({
openPush:1,
}, function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统
可提供的1.0.0及更高版本
获取自己的推送声音
getAPNS(callback(ret))
ret:
{
status:, //布尔类型,是否成功
openPush:, //数字类型;是否打开,0/不进行设置,1/开启推送,2/关闭推送
c2cSound:'', //字符串类型;c2c 消息的离线推送时的提醒声音路径
groupSound:'', //字符串类型;群消息的离线推送时的提醒声音路径
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getAPNS(function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
iOS系统
可提供的1.0.0及更高版本
设置离线推送token
setOfflineToken(callback(ret))
buzid:
thridToken:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.setOfflineToken({
buzid:,
thridToken:'',
},function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
android系统
可提供的1.0.0及更高版本
获取设备机型
getDeviceBrand(callback(ret))
ret:
{
status:, //布尔类型,是否成功
brand:'', //字符串类型;机型,取值范围:‘xiaomi’/小米,‘huawei’/华为,‘oppo’/OPPO,‘vivo’/VIVO ,‘meizu’/魅族等
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.getDeviceBrand({
},function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
android系统
可提供的1.0.0及更高版本
上报 App 应用退至后台。
doBackground(callback(ret))
c2cUnread:
groupUnread:
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.doBackground({
},function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
android系统
可提供的1.0.0及更高版本
上报 App 应用切换回前台。
doForeground(callback(ret))
ret:
{
status:, //布尔类型,是否成功
}
err:
{
code:, //数字类型;错误码
msg: '', //字符串类型;错误信息
}
var tencentIm = api.require('tencentIm');
tencentIm.doForeground({
},function(ret, err) {
if (ret) {
api.alert({
msg: JSON.stringify(ret)
})
} else {
api.alert({
msg: JSON.stringify(err)
})
}
});
android系统
可提供的1.0.0及更高版本
{
type:, //数字类型;为1时为文本消息
text:'', //字符串类型;文本消息内容
}
{
type:, //数字类型;为4时为图片消息
level:'', //数字类型;图片质量
path:'', //字符串类型;图片地址
imageList:[{ //Json数组;图片参数
type:, //数字类型;图片类型,0/普通,1/缩略图,2/大图
url:'', //字符串类型;图片url
uuid:'', //字符串类型;图片uuid
size:, //小数类型;图片大小
height:, //小数类型;图片高
width:, //小数类型;图片宽
},],
}
{
type:, //数字类型;为10时为表情消息
index:, //数字类型;自定义消息inde
data:'', //字符串类型;自定义消息内容base64字符串
}
{
type:, //数字类型;为5时为表情消息
duration:, //小数类型;语音时间
dataSize:, //小数类型;语音大小
path:'', //字符串类型;语音路径
}
{
type:, //数字类型;为11时为位置消息
desc:'', //字符串类型;位置信息描述
longitude:, //小数类型;经度
latitude:, //小数类型;纬度
}
{
type:, //数字类型;为7时为文件消息
fileName:'', //字符串类型;文件名称
fileSize:, //小数类型;文件大小
path:'', //字符串类型;文件路径
}
{
type:, //数字类型;为6时为自定义消息
data:'', //字符串类型;自定义消息数据base64字符串
ext:'', //字符串类型;base64字符串,iOS为普通字符串
sound:'', //字符串类型;提示音数据 base64字符串,iOS为普通字符串
desc:'', //字符串类型;描述,iOS为普通字符串
}
{
type:, //数字类型;为9时为群组消息
tipsType:, //数字类型;群组消息类型;1/加入群组,2/主动退出群组,3/被踢出群组,4/设置管理员,5/取消管理员,6/修改群资料,7/修改群成员信息,8/新建群(iOS不支持),9/删除群(iOS不支持)
opUser:'', //字符串类型;操作用户
groupName:'', //字符串类型;群组名称
groupId:'', //字符串类型
userList:[ //数组类型;被操作的用户
'','','',
]
}
{
type:, //数字类型;为12时为群组系统消息
sysType:, //数字类型;取值如下:
android群组通知消息类型:1/申请加群被同意,2/申请加群被拒绝,3/申请加群,4/取消管理员,5/创建群消息,6/群被解散,7/设置管理员,8/邀请加群,9/被管理员踢出群,10/主动退群,11/群已被回收,12/邀请入群请求,13/邀请加群被同意,14/邀请加群被拒绝;
iOS群组通知消息类型;1/申请加群请求(只有管理员会收到),2/申请加群被同意(只有申请人能够收到),3/申请加群被拒绝(只有申请人能够收到),4/被管理员踢出群(只有被踢的人能够收到),5/群被解散(全员能够收到),6/创建群消息(创建者能够收到),7/邀请入群通知(被邀请者能够收到),8/主动退群(主动退群者能够收到),9/设置管理员(被设置者接收),10/取消管理员(被取消者接收),11/群已被回收(全员接收),12/邀请入群请求(被邀请者接收),13/邀请加群被同意(只有发出邀请者会接收到),14/邀请加群被拒绝(只有发出邀请者会接收到),15/用户自定义通知(默认全员接收)
platform:'', //字符串类型;操作平台信息
groupId:'', //字符串类型;群id
opUser:'', //字符串类型;操作人
opReason:'', //字符串类型;操作理由
}
{
type:, //数字类型;为13时为关系变更消息
subType:, //数字类型;关系变更类型,1/增加好友消息,2/删除好友消息,3/增加好友申请,4/删除未决申请,5/黑名单增加,6/黑名单删除,7/未决已读上报,8/关系资料变更,9/推荐数据增加(仅支持iOS),10/推荐数据删除(仅支持iOS),11/已决增加(仅支持iOS),12/已决删除(仅支持iOS),13/推荐已读上报(仅支持iOS),14/已决已读上报(仅支持iOS)
requestAddFriendUserList:['',''], //数组类型;成为好友的用户列表,当subType为1时有效,iOS不支持
delRequestAddFriendUserList:['',''], //数组类型;删除好友的用户列表,subType为2时有效,iOS不支持
friendAddPendencyList:[ //数组类型;申请好友信息列表,subType为3时有效,iOS不支持
{fromUser:'', //字符串类型;添加好友操作者
addSource:'', //字符串类型;添加来源
fromUserNickName:'', //字符串类型;添加好友操作者昵称
addWording:''. //字符串类型;添加好友附言
},
],
delFriendAddPendencyList:['',], //数组类型;删除未决申请列表;subType为4时有效,iOS不支持
changeInfoList:['','',], //数组类型;资料变更好友列表;subType为8时有效,iOS不支持
addBlacklistUserList:['',], //数组类型;添加黑名单好友列表;subType为5时有效,iOS不支持
delBlacklistUserList:['',], //数组类型;删除黑名单列表;subType为6时有效,iOS不支持
userList:[{ //数组类型;被操作用户列表(仅iOS支持)
identifier:'', //字符类型;用户 identifier
nickname:'', //字符类型;用户昵称
wording:'', //字符类型;申请添加时有效,添加理由
source:'', //字符类型;申请时填写,添加来源
remark:'', //字符类型;备注,subType为8时有效
}],
pendencyReportTimestamp, //数字类型,未决已读上报时间戳,subType为7时有效
recommendReportTimestamp, //数字类型,推荐已读上报时间戳,subType为13时有效
decideReportTimestamp, //数字类型,已决已读上报时间戳,subType为14时有效
}