tencentIm

原生插件概述

tencentIm 原生插件封装了腾讯云通信IM。云通信(Instant Messaging,IM)承载亿级 QQ 用户即时通讯技术,立志成为企业数字化转型的通信助手,为您提供全方位立体化的通信能力,让通信触达全球,智联万物。

iOS相关远程推送

如何使用远程推送

集成推送功能流程如下文所示。此过程中涉及到的 AppID 即为 Bundle Identifie,与 Yonbuilder 移动开发平台上的包名是同一个东西,在 Yonbuilder 移动开发平台上应用的概览里可以查看。

  1. 登录苹果开发者中心申请推送证书,本过程操作详情参考配置腾讯云推送证书

  2. 将上一步生成的 p12 证书上传到腾讯云通信IM,在【应用列表】页面,单击目标应用所在列的【应用配置】,进入【基础配置】页面。单击 iOS 推送证书区域的【+添加证书】,选择证书类型,上传 iOS 证书(p.12),设置证书密码,单击【确定】。

  3. 将 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

android使用此原生插件之前必须先配置 config 文件,配置方法如下:

  • 名称:tencentIm
  • 参数:appid
  • 配置示例:
 <feature name="tencentIm">
        <param name="appid" value="1400213323" />
    </feature>
  • 字段描述:

appid:腾讯云通信控制平台获取。

原生插件接口

init

初始化,其他接口都需要在初始化之后调用

init({params}, callback(ret))

params

appid:

  • 类型:数字类型
  • 描述:用户标识接入 SDK 的应用 ID,腾讯云通信控制平台,此参数仅支持iOS

logLevel:

  • 类型:数字类型
  • 描述:(可选项)打印log级别
  • 默认:2,iOS默认:0
  • 取值范围:0/OFF,2/VERBOSE(iOS不支持),3/DEBUG,4/INFO,5/WARN,6/ERROR

addLogListener:

  • 类型:布尔类型
  • 描述:(可选项)是否监听log,如果监听将在回调返回
  • 默认:false

logPrint:

  • 类型:布尔类型
  • 描述:(可选项)是否将log打印到控制台,iOS不支持
  • 默认:false

logPath:

  • 类型:字符串类型
  • 描述:(可选项)log日志输入位置,支持fs路径,iOS不支持
  • 默认值:设备sdk卡/tencent/imsdklogs/(包名)/

enableReadReceipt:

  • 类型:布尔类型
  • 描述:(可选项)是否开启消息已读回执,仅支持iOS
  • 默认:true

enableAutoReport:

  • 类型:布尔类型
  • 描述:(可选项)是否开启自动已读上报,仅支持iOS
  • 默认:true

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    log:{							//JSON对象类型;log内容,仅当addLogListener为true时可能返回
        level:,           //数字类型;log级别,与参数logLevel对应
        tag:'',           //字符串类型;日志tag,iOS不支持
        msg:'',         //字符串类型;日志内容
    }
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

监听用户状态

setUserStatusListener({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    userStatus:'',             //字符串类型,用户状态,取值:offline/被踢下线,sigExpired/签名过期需要刷新,userSig 重新登陆(iOS不支持),onReConnFailed/断线重连失败(android不支持)
    code:0,            //数字类型;错误码,onReConnFailed返回,android不支持
   err:''              //字符串类型;错误信息,onReConnFailed返回,android不支持
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

监听链接状态

setConnectListener({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   status:,                       //布尔类型,是否成功
   action:'',               //字符串类型;链接状态;取值范围:‘connected’/链接成功,‘disConnected’/链接失败,‘wifiNeedAuth’/等待wifi链接(iOS不支持),‘onDisconnect’/网络连接断开(android不支持),‘onConnecting’/连接中(android不支持)
   code:0,            //数字类型;错误码,disConnected、onDisconnect返回,android不支持
   err:''              //字符串类型;错误信息,disConnected、onDisconnect返回,android不支持
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
   
    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

设置群组事件监听

setGroupEventListener({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    tipsType:,            //数字类型;1/加入群组,2/主动退出群组,3/被踢出群组,4/设置管理员,5/取消管理员,6/修改群资料,7/修改群成员信息,8/新建群(iOS不支持),9/删除群(iOS不支持)
    opUser:'',          //字符串类型;操作者账号
    groupName:'',       //字符串类型;群组名称,iOS返回为群组 ID
    userList:[                 //Json数组类型;被操作账号集合
    '','','',
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

设置会话监听

seConversationListener({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    onRefresh:true,            //布尔类型,为false时刷新部分会话,否则conversations不会返回,仅支持iOS
    conversations:[{        //Json数组类型;刷新的会话
    peer:'',   			//字符串类型;聊天标识,iOS单聊时为对方账号,群聊时为群组Id
    type:,   			//数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话  
    },
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

消息扩展设置

seMessageExtConfig({params}, callback(ret))

params

enableStorage:

  • 类型:布尔类型
  • 描述:(可选项)是否允许消息本地存储
  • 默认:true

enableReadReceipt:

  • 类型:布尔类型
  • 描述:(可选项)是否开启消息已读回执
  • 默认:true

enableRecentContact:

  • 类型:布尔类型
  • 描述:(可选项)是否开启漫游最近联系人
  • 默认:true

enableAutoReport:

  • 类型:布尔类型
  • 描述:(可选项)是否开启自动已读上报
  • 默认:true

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

添加消息撤回监听

setMessageRevokedListener({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    conversationId:''        //字符串类型;撤回消息所在会话id
    conversationType:,    //数字类型;撤回消息会话类型,1/单聊,2/群聊,3/系统消息
    }

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

添加消息已读回执监听

setMessageReceiptListener({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    
    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

登陆

login({params}, callback(ret))

params

identifier:

  • 类型:字符串类型
  • 描述:用户帐号

userSig:

  • 类型:字符串类型
  • 描述:用户帐号签名,由私钥加密获得

busiId:

  • 类型:数字类型
  • 描述:企业证书 ID,进入【基础配置】页面,在iOS 推送证书区域的(证书ID),此参数仅支持iOS

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    token:,                        //布尔类型,是否为设置token返回
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

登出

logout({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

初始化本地存储,在未登录的情况下加载本地存储。

initStorage({params}, callback(ret))

params

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

获取本地聊天记录

getLocalMessage({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话
  • 默认:1

count:

  • 类型:数字类型
  • 描述:聊天记录条数

continue:

  • 类型:布尔类型
  • 描述:(可选项)是否获取上次获取的消息之前的消息,需要与上次获取时peer相同
  • 默认值:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
    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

获取登陆账户

getLoginUser(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    user:'',                       //字符串类型;登陆的账户
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

获取会话

getConversation({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    conversation:{
    peer:'',   			//字符串类型;聊天标识
    type:,   			//数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话  
    }
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

发送字符串信息

sendText({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话

text:

  • 类型:字符串类型
  • 描述:消息内容

onlineMessage:

  • 类型:布尔类型
  • 描述:(可选项)是否发送在线消息,iOS不支持
  • 默认值:false

offlinePushInfo:

  • 类型:JSON 对象
    • 描述:(可选项)消息离线推送配置信息
  • 内部字段:
{
    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:不弹窗,由应用自行处理
      
    }
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

发送图片信息

sendImage({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话

imagePath:

  • 类型:字符串类型
  • 描述:图片路径,支持fs格式

imageLevel:

  • 类型:数字类型
  • 描述:发送图片质量
  • 取值范围:0/原图,1/高压缩图,2/高清图
  • 默认:0

onlineMessage:

  • 类型:布尔类型
  • 描述:(可选项)是否发送在线消息,iOS不支持
  • 默认值:false

offlinePushInfo:

  • 类型:JSON 对象
    • 描述:(可选项)消息离线推送配置信息
  • 内部字段:
{
    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:不弹窗,由应用自行处理
      
    }
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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及更高版本

sendFace

表情消息发送,IM SDK 并不提供表情包,如果开发者有表情包,可使用 index 存储表情在表情包中的索引,由用户自定义,或者直接使用data存储表情二进制信息以及字符串 key,都由用户自定义,IM SDK 内部只做透传。

sendFace({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话

index:

  • 类型:数字类型
  • 描述:表情索引

faceData:

  • 类型:字符串类型
  • 描述:图片自定义数据base64字符串

onlineMessage:

  • 类型:布尔类型
  • 描述:(可选项)是否发送在线消息,iOS不支持
  • 默认值:false

offlinePushInfo:

  • 类型:JSON 对象
    • 描述:(可选项)消息离线推送配置信息
  • 内部字段:
{
    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:不弹窗,由应用自行处理
      
    }
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

发送语音消息

sendSound({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话

duration:

  • 类型:数字类型
  • 描述:语音时长

soundPath:

  • 类型:字符串类型
  • 描述:语音存储路径,支持fs路径

onlineMessage:

  • 类型:布尔类型
  • 描述:(可选项)是否发送在线消息,iOS不支持
  • 默认值:false

offlinePushInfo:

  • 类型:JSON 对象
    • 描述:(可选项)消息离线推送配置信息
  • 内部字段:
{
    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:不弹窗,由应用自行处理
      
    }
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

发送位置消息

sendLocation({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话

desc:

  • 类型:字符串类型
  • 描述:位置描述

longitude:

  • 类型:小数类型
  • 描述:经度

latitude:

  • 类型:小数类型
  • 描述:维度

onlineMessage:

  • 类型:布尔类型
  • 描述:(可选项)是否发送在线消息,iOS不支持
  • 默认值:false

offlinePushInfo:

  • 类型:JSON 对象
    • 描述:(可选项)消息离线推送配置信息
  • 内部字段:
{
    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:不弹窗,由应用自行处理
      
    }
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

发送小文件

sendFile({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话

filePath:

  • 类型:字符串类型
  • 描述:文件路径,支持fs格式

fileName:

  • 类型:字符串类型
  • 描述:文件名称

onlineMessage:

  • 类型:布尔类型
  • 描述:(可选项)是否发送在线消息,iOS不支持
  • 默认值:false

offlinePushInfo:

  • 类型:JSON 对象
    • 描述:(可选项)消息离线推送配置信息
  • 内部字段:
{
    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:不弹窗,由应用自行处理
      
    }
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

发送自定义消息

sendCustom({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话

data:

  • 类型:字符串类型
  • 描述:自定义数据,Base64字符串

desc:

  • 类型:字符串类型
  • 描述:自定义描述

ext:

  • 类型:字符串类型
  • 描述:推送ext字段,Base64字符串,iOS为正常字符串

sound:

  • 类型:字符串类型
  • 描述:自定义声音数据,Base64字符串,iOS为正常字符串

onlineMessage:

  • 类型:布尔类型
  • 描述:(可选项)是否发送在线消息,iOS不支持
  • 默认值:false

offlinePushInfo:

  • 类型:JSON 对象
    • 描述:(可选项)消息离线推送配置信息
  • 内部字段:
{
    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:不弹窗,由应用自行处理
      
    }
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

添加新消息监听

addNewMessageListener({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
    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

获取所有会话

getConversations({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    conversations:[        //Json数组;会话
    {
    peer:'',   			//字符串类型;聊天标识
    type:,   			//数字类型;聊天类型;1/单聊会话,2/群组会话,3/系统会话  
    },
    ],
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

获取聊天记录

getMessage({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话
  • 默认:1

count:

  • 类型:数字类型
  • 描述:聊天记录条数

continue:

  • 类型:布尔类型
  • 描述:(可选项)是否获取上次获取的消息之前的消息,需要与上次获取时peer相同
  • 默认值:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
    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

删除会话

deleteConversation({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话
  • 默认:1

delMessage:

  • 类型:布尔类型
  • 描述:是否删除消息记录
  • 默认:true

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    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

删除本地消息记录

deleteLocalMessage({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话
  • 默认:1

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取未读消息数量

getUnReadMessageNum({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话
  • 默认:1

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    count:,                     //数字类型;未读消息数量
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

会话进行已读上报

setRead({params}, callback(ret))

params

peer:

  • 类型:字符串类型
  • 描述:聊天标识(群组id 或对方账号)

type:

  • 类型:数字类型
  • 描述:聊天类型;1/单聊会话,2/群组会话,3/系统会话
  • 默认:1

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

创建群组

createGroup({params}, callback(ret))

params

groupType:

  • 类型:字符串类型
  • 描述:群组类型
  • 取值范围:私有群(Private)、公开群(Public)、 聊天室(ChatRoom)、音视频聊天室(AVChatRoom)和在线成员广播大群(BChatRoom)

groupName:

  • 类型:字符串类型
  • 描述:群组名称

groupId:

  • 类型:字符串类型
  • 描述:(可选项)群id

notification:

  • 类型:字符串类型
  • 描述:(可选项)群公告

introduction:

  • 类型:字符串类型
  • 描述:(可选项)群简介

faceUrl:

  • 类型:字符串类型
  • 描述:(可选项)群头像url

maxMemberNum:

  • 类型:数字类型
  • 描述:(可选项)最大成员数

groupAddOpt:

  • 类型:数字类型
  • 描述:添加群条件
  • 取值范围:0/禁止添加,1/群主邀请,2/任何人都可以添加
  • 默认值:2

members:

  • 类型:Json数组类型
  • 描述:(可选项)初始成员,iOS不支持
  • 内部字段:
['',         //字符串类型,成员账号
'',
''
]

membersInfos:

  • 类型:Json数组类型
  • 描述:(可选项)初始成员,android不支持
  • 内部字段:
[{'成员账号':'成员角色'}]
成员角色取值如下:
0:群成员
1:群管理员
2:群主

customInfo:

  • 类型:Json对象类型
  • 描述:(可选项)自定义信息,设置群自定义字段,需要先到控制台配置相应的 key
    • 内部字段:
{'key':'value', 
'key1':'value', 
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    groupId:'',                 //字符串类型;群id
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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及更高版本

inviteGroupMember

邀请用户进群, 私有群:群成员无需受邀用户同意,直接将其拉入群中。 公开群/聊天室:不允许群成员邀请他人入群。只能由 App 管理员通过 REST API 邀请他人入群。 音视频聊天室:不允许任何人(包括 App 管理员)邀请他人入群。

inviteGroupMember({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

members:

  • 类型:Json数组类型
  • 描述:邀请成员
  • 内部字段:
['',         //字符串类型,成员账号
'',
''
]

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    results:[                    //添加结果
    { member:'',       //字符串类型;成员
      result:,              //数字类型;添加结果,0:添加失败;1:添加成功;2:原本是群成员,3:等待对方处理(android不支持)
    }
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

申请入群

  1. 私有群:不能由用户主动申请入群。
  2. 公开群、聊天室:可以主动申请进入。
  3. 直播大群:可以任意加入群组。
  4. 如果群组设置为需要审核,调用doGroupPendency接口同意或者拒绝入群
  5. 如果群主设置为任何人可加入,则直接入群成功。

applyJoinGroup({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

reason:

  • 类型:字符串类型
  • 描述:入群原因

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否申请成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

退出群组,私有群:全员可退出群组。公开群、聊天室和直播大群:群主不能退出。

quitGroup({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

删除群组成员,私有群:只有创建者可删除群组成员。公开群和聊天室:只有管理员和群主可以踢人。直播大群:不能踢人。

deleteGroupMember({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

members:

  • 类型:Json数组类型
  • 描述:要删除的成员
  • 内部字段:
['',         //字符串类型,成员账号
'',
''
]

reason:

  • 类型:字符串类型
  • 描述:(可选项删除原因

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    results:[                    //删除结果
    { member:'',       //字符串类型;成员
      result:,              //数字类型;添加结果,0:删除失败;1:删除成功;2:不是群成员
    }
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取群成员列表

getGroupMembers({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否申请成功
    members:[                    //删除结果
    { member:'',           //字符串类型;成员
      joinTime:,              //数字类型;加入时间
      role:,                     //数字类型;群内角色
    }
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取加入群组列表

getGroupList({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    groups:[                    //Jsong数组类型;已添加群组
    { groupId:'',           //字符串类型;群id
      groupName:'',       //字符串类型;群组名称
      groupType:'',          //字符串类型;群组类型
      faceUrl:'',              //字符串类型;群组头像
      isSilenceAll:,        //布尔类型;是否设置了全员禁言
    }
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

解散群组, 对于私有群:任何人都无法解散群组。 对于公开群、聊天室和直播大群:群主可以解散群组。

deleteGroup({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

转让群组

modifyGroupOwner({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

identifier:

  • 类型:字符串类型
  • 描述:新群主账号

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

查询群组资料,在群组内使用此接口

getGroupDetailInfo({params}, callback(ret))

params

groupIds:

  • 类型:Json数组
  • 描述:查询群组id数组

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
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

非群成员获取群资料

getGroupPublicInfo({params}, callback(ret))

params

groupIds:

  • 类型:数组类型
  • 描述:群组id

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    groupInfos:[			//Json数组,群组信息
    {groupId:'',             //字符串类型;群组id
    groupName:'',          //字符串类型;群组名称
    groupOwner:'',        //字符串类型;群主账号
    createTime:,           //数字类型;创建时间
    lastInfoTime:,         //数字类型;最后群组信息修改时间
    lastMsgTime:,         //数字类型;最后消息时间
    memberNum:,        //数字类型;成员数量
    maxMemberNum:,    //数字类型;最大成员数量
    groupIntroduction:'',     //字符串类型;群简介
    groupNotification:'',       //字符串类型;群公告
    faceUrl:'',                        //字符串类型;群头像类型
    groupType:'',                //字符串类型;群类型
    onlineMemberNum:,     //数字类型;在线群成员数量
    isSilenceAll:,                  //布尔类型;是否全部群成员禁言
    }
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取个人在群里资料

getSelfInfoInGroup({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:查询群组id数组

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    info:		//Json对象类型;个人信息
    {
    joinTime:,         //数字类型;加入时间
    megFlag:,         //数字类型;iOS不支持
    msgSeq:,         //数字类型;iOS不支持
    nameCard:'',    //字符串类型;群内名称
    rule:,              //数字类型;群内类别
    silenceSeconds:,       //数字类型;禁言时间,iOS为禁言结束时间
    tinyId:,             //数字类型;iOS不支持
    user:,              //字符串类型;账号
    },
    
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取群内成员资料

getGroupMembersInfo({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

identifiers:

  • 类型:Json数组类型
  • 描述:查询的账号

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    infos:[		//Json数组类型;群成员信息
    {
    joinTime:,         //数字类型;加入时间
    megFlag:,         //数字类型;iOS不支持
    msgSeq:,         //数字类型;iOS不支持
    nameCard:'',    //字符串类型;群内名称
    rule:,              //数字类型;群内类别
    silenceSeconds:,       //数字类型;禁言时间
    tinyId:,             //数字类型;iOS不支持
    user:,              //字符串类型;账号
    },
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

修改群资料

modifyGroupInfo({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

groupName:

  • 类型:字符串类型
  • 描述:(可选项)群名称
  • 默认:不修改

notification:

  • 类型:字符串类型
  • 描述:(可选项)群公告
  • 默认:不修改

introduction:

  • 类型:字符串类型
  • 描述:(可选项)群简介
  • 默认:不修改

faceUrl:

  • 类型:字符串类型
  • 描述:(可选项)群头像url
  • 默认:不修改

groupAddOpt:

  • 类型:数字类型
  • 描述:添加群条件
  • 取值范围:0/禁止添加,1/群主邀请,iOS为需要管理员审批,2/任何人都可以添加
  • 默认值:2(仅iOS支持默认值,android默认不设置)

maxMemberNum:

  • 类型:数字类型
  • 描述:最大成员数,iOS不支持

visable:

  • 类型:布尔类型
  • 描述:群成员是否对外展示
  • 默认值:false

silenceAll:

  • 类型:布尔类型
  • 描述:是否全员禁言
  • 默认值:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

修改成员群身份,只有群主或者管理员可以进行对群成员的身份进行修改。 直播大群不支持修改用户群内身份。

modifyMemberRoleType({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

identifier:

  • 类型:字符串类型
  • 描述:用户账号

roleType:

  • 类型:数字类型
  • 描述:群内身份
  • 取值范围:300/管理员,200/普通群员,
  • 默认:200

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

群成员禁言并设置时长。只有群主或者管理员可以进行对群成员进行禁言。

modifyMemberSilence({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

identifier:

  • 类型:字符串类型
  • 描述:用户账号

silenceTime:

  • 类型:数字类型
  • 描述:禁言时间

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

设置成员群名称。

modifyMemberNameCard({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

identifier:

  • 类型:字符串类型
  • 描述:用户账号

nameCard:

  • 类型:字符串类型
  • 描述:群名称

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

设置群消息接收选项

setReceiveMessageOpt({params}, callback(ret))

params

groupId:

  • 类型:字符串类型
  • 描述:群id

identifier:

  • 类型:字符串类型
  • 描述:用户账号,iOS不支持

reciveOpt:

  • 类型:数字类型
  • 描述:消息接收选项
  • 取值范围:android:1/不接收群消息,2/接收群消息 不提醒,3/接收消息并提醒,iOS:0/接收消息,1/不接收消息,服务器不进行转发,2/接受消息,不进行 iOS APNs 推送
  • 默认:2

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

拉取群组未决信息

getGroupPendencyList({params}, callback(ret))

params

timestamp:

  • 类型:数字类型
  • 描述:翻页时间戳,首次填写0,后面用返回的时间戳

numPerPage:

  • 类型:数字类型
  • 描述:每页数量

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
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

上报未决消息为已读,

reportGroupPendency({params}, callback(ret))

params

timestamp:

  • 类型:数字类型
  • 描述:时间戳,此时间戳以前的消息均置为已读。上报已读后,仍然可以拉取到这些未决信息,但可通过对已读时戳的判断判定未决信息是否已读。

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

处理未决信息

doGroupPendency({params}, callback(ret))

params

timestamp:

  • 类型:数字类型
  • 描述:时间戳,此时间戳查询到的消息

numPerPage:

  • 类型:数字类型
  • 描述:每页数量

doPendency

  • 类型:Json数组类型
  • 描述:要处理的消息
  • 内部字段
[{
 id:'',                      //字符串类型;消息id,开发者自行定义用于处理成功时返回
groupId:'',                 //字符串类型;群组id
toUser:'',                   //字符串类型;被邀请人
addTimer:.               //数字类型;邀请创建时间
accept:,                   //布尔类型;是否同意
handledMsg:'',         //字符串类型;此处理附加信息
} 
]

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    succeedIds:[             //Json数组,成功处理的id
    '', '',
    ],
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取服务器保存的自己资料

getRemoteSelfProfile({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取本地保存的自己资料

getLocalSelfProfile({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取好友资料

getUsersProfile({params}, callback(ret))

params

forceUpdate:

  • 类型:布尔类型
  • 描述:是否强制从后台拉取数据。否则先从本地查找,本地没有再从服务器获取
  • 默认:false

users:

  • 类型:数组类型
  • 描述:要获取资料的用户 identifier 列表
  • 内部字段:
['','','',]

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取好友本地存储资料

getUserLocalProfile({params}, callback(ret))

params

user:

  • 类型:字符串类型
  • 描述:要获取资料的用户 identifier

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
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

修改自己资料

modifySelfProfile ({params}, callback(ret))

params

nickName:

  • 类型:字符串类型
  • 描述:(可选项)昵称

faceUrl:

  • 类型:字符串类型
  • 描述:(可选项)头像

allowType:

  • 类型:字符串类型
  • 描述:(可选项)好友申请
  • 取值范围 :‘AllowType_Type_AllowAny’/允许所有,‘AllowType_Type_DenyAny’/拒绝所有,‘AllowType_Type_NeedConfirm’/需要同意

gender:

  • 类型:数字类型
  • 描述:(可选项)性别
  • 取值范围:0/未知,1/男,2/女

birthday:

  • 类型:数字类型
  • 描述:(可选项)生日

location:

  • 类型:字符串类型
  • 描述:(可选项)位置

language:

  • 类型:数字类型
  • 描述:(可选项)语言

signature:

  • 类型:字符串类型
  • 描述:(可选项)签名

level:

  • 类型:数字类型
  • 描述:(可选项)等级

role:

  • 类型:数字类型
  • 描述:(可选项)角色

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取好友列表

getFriendList ({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

修改好友信息

modifyFriend ({params}, callback(ret))

params

identifier:

  • 类型:字符串类型
  • 描述:好友账号

remake:

  • 类型:字符串类型
  • 描述:(可选项)备注

group:

  • 类型:数组类型
  • 描述:(可选项)分组

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

添加好友

addFriend ({params}, callback(ret))

params

identifier:

  • 类型:字符串类型
  • 描述:好友账号

remake:

  • 类型:字符串类型
  • 描述:备注,最大96字节

addWording :

  • 类型:字符串类型
  • 描述:请求说明,最大120字节

addSource :

  • 类型:字符串类型
  • 描述:添加来源 ,不能超过8个字节,并且需要添加“AddSource_Type_”前缀

friendGroup:

  • 类型:字符串类型
  • 描述:分组名

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    resultCode:,            //数字类型;添加好友回执  取值范围:0/添加成功,30001/请求参数错误,30010/自己好友数已达上限,30014/对方好友数已达上限,30515/被加好友在自己黑名单,30516/被加好友设置为禁止加好友,30525/已被被添加好友添加黑名单,30539/等待好友同意
    identifier:'',          //字符串类型;添加账号
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

删除好友

deleteFriends ({params}, callback(ret))

params

identifiers:

  • 类型:数组类型
  • 描述:要删除的好友账号
  • 内部字段:
['','','',]

delBoth:

  • 类型:布尔类型
  • 描述:是否从双方好友列表都移除掉,false时只从自己好友列表中移除
  • 默认值:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    result:[                        //Json数组类型;删除返回结果
    {  resultCode:,            //数字类型;添加好友回执  取值范围:0/删除成功,30001/请求参数错误,30010/自己好友数已达上限,30014/对方好友数已达上限,30515/被删好友在自己黑名单,30516/被删好友设置为禁止加好友,30525/已被被添加好友添加黑名单,30539/等待好友同意
    identifier:'',          //字符串类型;账号
    },
    
    ],
  
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

同意/拒绝好友申请

doResponse ({params}, callback(ret))

params

identifier:

  • 类型:字符串类型
  • 描述:申请好友的账号

remark:

  • 类型:字符串类型
  • 描述:(可选项)备注

responseType:

  • 类型:数字类型
  • 描述:回应类别;0/单项建立好友,1/建立双向好友,2/拒绝好友请求

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
     resultCode:,            //数字类型;回执  取值范围:0/操作成功,30001/请求参数错误,30010/自己好友数已达上限,30014/对方好友数已达上限,30515/被加好友在自己黑名单,30516/被加好友设置为禁止加好友,30525/已被被添加好友添加黑名单,30539/等待好友同意
    identifier:'',          //字符串类型;添加账号
  
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

获取好友未决列表

getPendencyList ({params}, callback(ret))

params

seq:

  • 类型:数字类型
  • 描述:序列号,server 返回的 seq。如果 seq 是 server 最新的,则不返回数据。翻页过程中,需要使用客户端原始 seq 请求

timestamp:

  • 类型:数字类型
  • 描述:翻页时间戳,server 返回0时表示没有更多数据,第一次请求填0

numPerPage:

  • 类型:数字类型
  • 描述:每页数量

dencyGetType:

  • 类型:数字类型
  • 描述:拉取类型
  • 取值范围:0/自己发起,1/他人发起,2/自己发起和他人发起

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    seq:,                   //数字类型;序列号
    timestamp:,       //数字类型;翻页时间戳
    unReadCount:,     //数字类型;未读数量
    pendencyList:[        //Json数组;信息列表
     { identifier:'',              //字符串类型;用户id
     addTime:,                   //数字类型;添加时间
     addSoure:'',                //字符串类型;来源
     addWorking:'',           //字符串类型;附言
     nickName:'',             //字符串类型;昵称
     pendencyGetType:,      //数字类型;未决请求类型,1/别人发给我的,2/我发给别人的,3/别人发给我的 和 我发给别人的。仅拉取时有效
     }
    ]
  
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

删除好友未决消息

deletePendency ({params}, callback(ret))

params

users:

  • 类型:数组类型
  • 描述:要删除的未决用户 ID 列表
  • 内部字段:
{'','','',}

dencyGetType:

  • 类型:数字类型
  • 描述:拉取类型
  • 取值范围:0/自己发起,1/他人发起,2/自己发起和他人发起

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    result:[                        //Json数组类型;删除返回结果
    {  resultCode:,            //数字类型;添加好友回执  取值范围:0/成功,30001/请求参数错误
    identifier:'',          //字符串类型;账号
    },
    ],
  
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

好友未决已读上报

pendencyReport ({params}, callback(ret))

params

timestamp:

  • 类型:数字类型
  • 描述:已读时间戳,此时间戳之前置为已读

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

添加用户到黑名单

addBlackList ({params}, callback(ret))

params

users:

  • 类型:数组类型
  • 描述:要添加黑名单的用户 ID 列表
  • 内部字段:
{'','','',}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    result:[                        //Json数组类型;删除返回结果
    {  resultCode:,            //数字类型;添加好友回执  取值范围:0/成功,30001/请求参数错误
    identifier:'',          //字符串类型;账号
    },
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

把用户从黑名单中移除

deleteBlackList ({params}, callback(ret))

params

users:

  • 类型:数组类型
  • 描述:要添加黑名单的用户 ID 列表
  • 内部字段:
{'','','',}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    result:[                        //Json数组类型;删除返回结果
    {  resultCode:,            //数字类型;添加好友回执  取值范围:0/成功,30001/请求参数错误
    identifier:'',          //字符串类型;账号
    },
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

获取黑名单列表

getBlackList ({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    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:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

创建好友分组

createFriendGroup ({params}, callback(ret))

params

identifiers:

  • 类型:数组类型
  • 描述:要添加到分组中的好友
    • 内部字段:
['','','',]

groupNames:

  • 类型:数组类型
  • 描述:分组名称列表,必须是当前不存在的分组
    • 内部字段:
['','','',]

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
      result:[                        //Json数组类型;删除返回结果
    {  resultCode:,            //数字类型;添加好友回执  取值范围:0/成功,30001/请求参数错误
    identifier:'',          //字符串类型;账号
    },
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

删除好友分组

deleteFriendGroup ({params}, callback(ret))

params

groupNames:

  • 类型:数组类型
  • 描述:分组名称列表
    • 内部字段:
['','','',]

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

添加好友到某分组

addFriendsToFriendGroup ({params}, callback(ret))

params

identifiers:

  • 类型:数组类型
  • 描述:要添加到分组中的好友
    • 内部字段:
{'','','',}

groupName:

  • 类型:字符串类型
  • 描述:要添加好友到哪个分组

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
     result:[                        //Json数组类型;删除返回结果
    {  resultCode:,            //数字类型;添加好友回执  取值范围:0/成功,30001/请求参数错误
    identifier:'',          //字符串类型;账号
    },
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

从某分组删除好友

deleteFriendsFromFriendGroup ({params}, callback(ret))

params

identifiers:

  • 类型:数组类型
  • 描述:要添加到分组中的好友
    • 内部字段:
{'','','',}

groupName:

  • 类型:字符串类型
  • 描述:要添加好友到哪个分组

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
     result:[                        //Json数组类型;删除返回结果
    {  resultCode:,            //数字类型;添加好友回执  取值范围:0/成功,30001/请求参数错误
    identifier:'',          //字符串类型;账号
    },
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

重命名好友分组

renameFriendGroup ({params}, callback(ret))

params

oldName:

  • 类型:字符串类型
  • 描述:原来分组名称

newName:

  • 类型:字符串类型
  • 描述:新的分组名称

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

获取好友分组

getFriendGroups ({params}, callback(ret))

params

groupNames:

  • 类型:数组类型
  • 描述:(可选项)分组名称列表,必须是当前不存在的分组,不传则查询所有分组
    • 内部字段:
{'','','',}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    groups:[                     //Json数组类型;查询到的分组信息
    {groupName:'',          //字符串类型;分组名称
    userCount:,              //数字类型;分组人数
    friends:['','',],           //数组类型;分组内好友
    }
    ]
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

初始化离线推送配置,需登录后设置才生效

setOfflinePushSettings ({params}, callback(ret))

params

enabled:

  • 类型:布尔类型
  • 描述:(可选项)是否开启离线推送
  • 默认值:true

c2cMsgRemindSound:

  • 类型:字符串类型
  • 描述:(可选项)c2c 消息的离线推送时的提醒声音路径,支持fs格式,传入'null'恢复默认

groupMsgRemindSound:

  • 类型:字符串类型
  • 描述:(可选项)群 消息的离线推送时的提醒声音路径,支持fs格式,传入'null'恢复默认

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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 **

初始化离线推送配置,需登录后设置才生效

getOfflinePushSettings ({params}, callback(ret))

params

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
    isEnable:,               //布尔类型;是否打开
    c2cMsgRemindSoundPath:'',        //字符串类型;c2c 消息的离线推送时的提醒声音路径
    groupMsgRemindSoundPath:'',    //字符串类型;群消息的离线推送时的提醒声音路径
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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及更高版本

setAPNS

设置 APNS

setAPNS ({params}, callback(ret))

params

openPush:

  • 类型:数字类型
  • 描述:(可选项)是否开启离线推送,0/不进行设置,1/开启推送,2/关闭推送
  • 默认值:0

c2cSound:

  • 类型:字符串类型
  • 描述:(可选项) 单聊声音

groupSound:

  • 类型:字符串类型
  • 描述:(可选项)群组声音

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                       //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取自己的推送声音

getAPNS(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                 //布尔类型,是否成功
    openPush:,               //数字类型;是否打开,0/不进行设置,1/开启推送,2/关闭推送
    c2cSound:'',             //字符串类型;c2c 消息的离线推送时的提醒声音路径
    groupSound:'',           //字符串类型;群消息的离线推送时的提醒声音路径
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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及更高版本

setOfflineToken

设置离线推送token

setOfflineToken(callback(ret))

params

buzid:

  • 类型:数字类型
  • 描述: 在腾讯云控制台上传第三方推送证书后分配的证书ID

thridToken:

  • 类型:字符串类型
  • 描述: 三方推送注册后获取的regId或token,可通过三方推送原生插件获取,小米推送:mipush,华为推送:huaweiPush,OPPO推送:oppoPush等

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                 //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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

获取设备机型

getDeviceBrand(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                 //布尔类型,是否成功
    brand:'',              //字符串类型;机型,取值范围:‘xiaomi’/小米,‘huawei’/华为,‘oppo’/OPPO,‘vivo’/VIVO ,‘meizu’/魅族等
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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及更高版本

doBackground

上报 App 应用退至后台。

doBackground(callback(ret))

params

c2cUnread:

  • 类型 :数字类型
  • 描述 :c2c未读消息
  • 默认值:0

groupUnread:

  • 类型 :数字类型
  • 描述 :group未读消息
  • 默认值:0

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                 //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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及更高版本

doForeground

上报 App 应用切换回前台。

doForeground(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:,                 //布尔类型,是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
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及更高版本

附录

消息内容elems--文本消息

  • 类型:JSON 对象
  • 描述:文本消息
  • 内部字段:
{
type:,         //数字类型;为1时为文本消息
text:'',          //字符串类型;文本消息内容
}

消息内容elems--图片消息

  • 类型:JSON 对象
  • 描述:图片消息
  • 内部字段:
{
type:,         //数字类型;为4时为图片消息
level:'',          //数字类型;图片质量
path:'',        //字符串类型;图片地址
imageList:[{     //Json数组;图片参数
type:,         //数字类型;图片类型,0/普通,1/缩略图,2/大图
url:'',          //字符串类型;图片url
uuid:'',      //字符串类型;图片uuid
size:,         //小数类型;图片大小
height:,      //小数类型;图片高
width:,       //小数类型;图片宽
},], 
}

消息内容elems--表情消息

  • 类型:JSON 对象
  • 描述:表情消息
  • 内部字段:
{
type:,         //数字类型;为10时为表情消息
index:,        //数字类型;自定义消息inde
data:'',         //字符串类型;自定义消息内容base64字符串
}

消息内容elems--语音消息

  • 类型:JSON 对象
  • 描述:语音消息
  • 内部字段:
{
type:,         //数字类型;为5时为表情消息
duration:,        //小数类型;语音时间
dataSize:,         //小数类型;语音大小
path:'',         //字符串类型;语音路径
}

消息内容elems--位置消息

  • 类型:JSON 对象
  • 描述:位置消息
  • 内部字段:
{
type:,         //数字类型;为11时为位置消息
desc:'',          //字符串类型;位置信息描述
longitude:,     //小数类型;经度
latitude:,        //小数类型;纬度
}

消息内容elems--文件消息

  • 类型:JSON 对象
  • 描述:文件消息
  • 内部字段:
{
type:,         //数字类型;为7时为文件消息
fileName:'',         //字符串类型;文件名称
fileSize:,           //小数类型;文件大小
path:'',             //字符串类型;文件路径
}

消息内容elems--自定义消息

  • 类型:JSON 对象
  • 描述:自定义消息
  • 内部字段:
{
type:,         //数字类型;为6时为自定义消息
data:'',  //字符串类型;自定义消息数据base64字符串
ext:'',          //字符串类型;base64字符串,iOS为普通字符串
sound:'',    //字符串类型;提示音数据 base64字符串,iOS为普通字符串
desc:'',     //字符串类型;描述,iOS为普通字符串
}

消息内容elems--群组消息

  • 类型:JSON 对象
  • 描述:群组消息
  • 内部字段:
{
type:,         //数字类型;为9时为群组消息
tipsType:,      //数字类型;群组消息类型;1/加入群组,2/主动退出群组,3/被踢出群组,4/设置管理员,5/取消管理员,6/修改群资料,7/修改群成员信息,8/新建群(iOS不支持),9/删除群(iOS不支持)
opUser:'',      //字符串类型;操作用户
groupName:'',         //字符串类型;群组名称
groupId:'',                //字符串类型
userList:[                  //数组类型;被操作的用户
'','','',
]
}

消息内容elems--群组系统消息

  • 类型:JSON 对象
  • 描述:群组系统消息
  • 内部字段:
{
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:'',       //字符串类型;操作理由

}

消息内容elems--关系变更消息

  • 类型:JSON 对象
  • 描述:关系变更消息
  • 内部字段:
{
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时有效                            


}
是否仍需要帮助? 请保持联络!
最后更新于 2024/04/24