neteaseIMUIKit

概述

网易云信 IM 即时通讯组件 neteaseIMUIKit 是基于网易云信二十余年的 IM 即时通讯云平台封装的组件,提供了一整套即时通讯基础能力,同时提供配套 UI。通过该组件您可以将即时通讯、实时网络能力快速集成至企业自身应用中,构建出自己的即时通讯场景。

限时优惠活动

如果您在用友平台下载了该组件,且通过用友平台在云信控制台注册账号并开通 IM 服务云信将提供特别的渠道版套餐,低至五折接入,可在开通账号后联系云信销售或技术支持。

点击 立即注册 前往云信控制台开通 IM 服务。

推荐有礼

推荐好友使用云信 IM 即时通讯产品,返佣奖励高至 20%,上不封顶!

点击 网易云信 8 周年庆 即可参与,合法致富机会,赶紧牢牢抓住!

Demo 体验

平台 二维码
Android
iOS

Demo 效果图:

技术支持

网易云信提供多种服务,包括客服、技术支持、热线服务、全流程数据监控等,建议扫码添加我们的技术支持,协助接入、测试以及定制需求。

微信咨询 在线咨询 电话咨询
点击在线咨询 4009-000-123

准备工作

步骤1 创建应用

  1. 登录网易云信控制台

    如果您在用友平台下载了该组件,可通过此专属链接登录云信控制台进行注册与开通服务,云信将提供特别的渠道版套餐,低至五折接入,可在开通账号后联系云信销售或技术支持。

  2. 如果您是首次登录控制台,控制台会弹出一个新手向导窗口,单击去创建

  3. 完成实名认证后,在控制台首页单击创建应用

    创建应用

  4. 填写应用的基本信息,如应用名称、行业类型和应用环境。

    应用信息

  5. 单击确定完成创建应用。

  6. 应用配置导航栏中,单击AppKey 管理页签,查看该应用的 AppKey。

    查看应用的AppKey

步骤2 注册 IM 测试账号

如仅需简单体验或者快速测试,请按照以下步骤在云信控制台创建测试账号。正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

  1. 在控制台首页应用管理选择应用进入应用配置页面,然后单击 IM即时通讯 专业版下的功能配置按钮进入 IM 即时通讯配置页。

  2. 在顶部选择基础功能页签,单击测试账号管理下的子功能配置

  3. 单击新建账号,在弹窗填写账号昵称密码后,单击确定

    在云信控制台创建的 IM 账户信息与服务端的账户信息相对应:

    • 账号:accid
    • 密码:token
    • 昵称:name
  4. (可选)对于创建好的测试账号,您可以在控制台进行修改昵称,重置密码,以及禁用操作。

步骤3 配置 AppKey

您可以通过以下两种方式,将在网易云信控制台获取的 AppKey 配置到您的应用中。

方式一:在 config 文件中配置

名称:neteaseIMUIKit

参数:appKey

配置示例:

<feature name="neteaseIMUIKit">
    <param name="appKey" value="appkey123456" />
</feature>

字段描述:

appKey:云信 IM 应用的唯一标识,通过云信控制台创建应用时获取。

方式二:调用接口传入

调用 initConfig 接口配置初始化参数时,配置 appKey

步骤4 (可选)配置推送证书

  1. 在控制台首页应用管理选择应用进入应用配置页面,然后单击 IM即时通讯 专业版下的功能配置按钮进入 IM 即时通讯配置页。

  2. 顶部选择证书管理页签,进入推送证书配置页。在对应的iOS APNS P8、iOS APNS P12、iOS PushKit 推送证书中,单击添加证书

  3. 填写证书信息并上传证书文件后,单击确定

    • 证书名称与 p12/p8 证书一一对应,服务器将根据证书名称来自动选择 p12/p8 文件。
    • ⽣产环境或开发环境,请选择与该证书⽣成时相同的环境类型。

插件接口

initConfig

配置初始化参数。

initConfig({params})

params

appKey:

  • 类型:String
  • 描述:云信 IM 应用的唯一标识,通过云信控制台创建应用时获取。

account:

  • 类型:String
  • 描述:云信 IM 账号, 即 accid。若需简单体验或者快速测试,可在云信控制台创建测试账号,若正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

token:

  • 类型:String
  • 描述:云信 IM 账号对应的登录密钥。若为测试账号,则在云信控制台获取 Token;若为正式账号,则通过云信服务端接口注册账号时获取 Token。

gaodeMapAppkey:

  • 类型:String
  • 描述:高德地图 Appkey

apnsCername:

  • 类型:String, 选填
  • 描述:云信 APNs 推送证书名称,您需要提前在云信控制台进行 APNs 推送证书配置

pkCername:

  • 类型:String, 选填
  • 描述:云信 PushKit 推送证书名称,您需要提前在云信控制台进行 PushKit 推送证书配置

示例代码

var demo = api.require('neteaseIMUIKit');
demo.initConfig({
    appKey: "appkey123456789",
    account: "123456789",
    token: "123456789",
    gaodeMapAppkey:"gaode123456",
    apnsCername: "",
    pkCername: ""
});

可用性

iOS系统

可提供的1.0.0及更高版本

initSDK

初始化 IM 即时通讯 SDK。

initSDK()

示例代码

var demo = api.require('neteaseIMUIKit');
demo.initSDK()

可用性

iOS系统

可提供的1.0.0及更高版本

login

登录 IM。

login({params}, callback(ret))

params

appKey:

  • 类型:String
  • 描述:云信 IM 应用的唯一标识,通过云信控制台创建应用时获取。

account:

  • 类型:String
  • 描述:云信 IM 账号, 即 accid。若需简单体验或者快速测试,可在云信控制台创建测试账号,若正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

token:

  • 类型:String
  • 描述:云信 IM 账号对应的登录密钥。若为测试账号,则在云信控制台获取 Token;若为正式账号,则通过云信服务端接口注册账号时获取 Token。

callback(ret)

ret:

  • 类型:JSON 对象

  • 内部字段:

    {
        code:200,                   // Int 类型;失败登录返回 code(登录成功返回 200)
        msg:'',                     // String 类型;失败登录接口信息
        loginInfo:{                 // 登录信息
            account:"123456",       // String 类型;云信 IM 账号(accid)
            token:"456789"          // String 类型;登录密钥
        }
    }
    

示例代码

var demo = api.require('neteaseIMUIKit');
demo.login({
    account: '123465',
    token: '456789'
}, function(ret, err) {
    if (ret.code != 200) {
        var msg = '登录失败\n错误码:' + ret.code + '\n错误信息:' + ret.msg;
        api.toast({
            msg: msg,
            location: 'middle'
        });
    } else {
        api.toast({
            msg: '登录成功',
            location: 'middle'
        });
    }
});

可用性

iOS系统

可提供的1.0.0及更高版本

logout

登出 IM。

logout(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;登出失败返回 code(登出成功返回 200)
    msg:''                      // String 类型;登出失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.logout(function(ret) {
    if (ret.code != 200) {
        var msg = '登出失败\n错误码:' + ret.code + '\n错误信息:' + ret.msg;
        api.toast({
            msg: msg,
            location: 'middle'
        });
    } else {
        api.toast({
            msg: '登出成功',
            location: 'middle'
        });
    }
});

可用性

iOS系统

可提供的1.0.0及更高版本

configChatPage

聊天页面 UI 自定义配置,未配置则使用默认值。

configChatPage({params})

params

showTitleBar:

  • 类型:Bool
  • 描述:是否展示 TitleBar
  • 默认值:true

showTitleBarRightIcon:

  • 类型:Bool
  • 描述:是否展示标题栏右侧图标按钮
  • 默认值:true

showReadStatus:

  • 类型:Bool
  • 描述:是否展示已读未读状态
  • 默认值:true

messageTextSize:

  • 类型:Int
  • 描述:标题字体大小
  • 默认值:16

messageTextColor:

  • 类型:String
  • 描述:文本消息字体颜色
  • 默认值:#333333

timeTextSize:

  • 类型:Int
  • 描述:消息列表中,时间字体大小
  • 默认值:14

timeTextColor:

  • 类型:String
  • 描述:消息列表中,时间字体颜色
  • 默认值:#B3B7BC

bgColor:

  • 类型:String
  • 描述:会话页面背景色
  • 默认值:#FFFFFF

示例代码

var demo = api.require('neteaseIMUIKit');
demo.configChatPage({
    messageTextColor:'#FF0000',
    showTitleBarRightIcon:false,
    timeTextColor:'#FF7700',
    bgColor:'#FF7700'
});

可用性

iOS系统

可提供的1.0.0及更高版本

configConversationPage

会话列表页面 UI 自定义配置,未配置则使用默认值。

configConversationPage()

params

titleBarTitle:

  • 类型:String
  • 描述:标题栏的文案
  • 默认值:"云信IM"

titleBarTitleColor:

  • 类型:String
  • 描述:标题栏的颜色值
  • 默认值:"#000000"

showTitleBar:

  • 类型:Bool
  • 描述:是否展示界面顶部的标题栏
  • 默认值:true

showTitleBarLeftIcon:

  • 类型:Bool
  • 描述:是否展示标题栏左侧图标
  • 默认值:true

showTitleBarRightIcon:

  • 类型:Bool
  • 描述:是否展示标题栏最右侧图标
  • 默认值:true

showTitleBarRight2Icon:

  • 类型:Bool
  • 描述:是否展示标题栏次最右侧图标
  • 默认值:true

itemBgColor:

  • 类型:String
  • 描述:未被置顶的会话项的背景色
  • 默认值:"#FFFFFF"

itemStickTopBgColor:

  • 类型:String
  • 描述:置顶的会话项的背景色
  • 默认值:"#F3F5F7"

itemTitleSize:

  • 类型:Int
  • 描述:会话标题字体大小
  • 默认值:16

itemTitleColor:

  • 类型:String
  • 描述:会话标题字体颜色
  • 默认值:#333333

itemContentSize:

  • 类型:Int
  • 描述:会话消息缩略内容的字体大小
  • 默认值:13

itemContentColor:

  • 类型:String
  • 描述:会话消息缩略内容的字体颜色
  • 默认值:"#999999"

itemDateSize:

  • 类型:Int
  • 描述:会话时间字体大小
  • 默认值:12

itemDateColor:

  • 类型:String
  • 描述:会话时间字体颜色
  • 默认值:"#CCCCCC"

示例代码

var demo = api.require('neteaseIMUIKit');
demo.configConversationPage({
    itemTitleColor:'#FF0000',
    showTitleBarLeftIcon:false,
    showTitleBarRightIcon:false,
    itemTitleSize:20,
    itemDateSize:10,
    itemBgColor:'#FF7700'
});

可用性

iOS系统

可提供的1.0.0及更高版本

configContactPage

通讯录页面 UI 个性化配置,未配置则使用默认值。

configContactPage({params})

params

titleBarTitle:

  • 类型:String
  • 描述:标题内容
  • 默认值:"通讯录"

titleColor:

  • 类型:String
  • 描述:标题字体颜色
  • 默认值:"#000000"

showTitleBar:

  • 类型:Bool
  • 描述:是否展示标题栏
  • 默认值:true

showTitleBarRightIcon:

  • 类型:Bool
  • 描述:是否展示标题栏的最右侧图标
  • 默认值:true

showTitleBarRight2Icon:

  • 类型:Bool
  • 描述:是否展示标题栏的右二侧图标
  • 默认值:true

showHeader:

  • 类型:Bool
  • 描述:是否在通讯录界面显示 Header
  • 默认值:true

indexTitleColor:

  • 类型:String
  • 描述:检索标题的字体颜色
  • 默认值:"#B3B7BC"

divideLineColor:

  • 类型:String
  • 描述:通讯录间隔线的颜色
  • 默认值:"#DBDDE4"

示例代码

var demo = api.require('neteaseIMUIKit');
demo.configContactPage({
    divideLineColor:'#FF0000',
    showTitleBarRightIcon:false
});

可用性

iOS系统

可提供的1.0.0及更高版本

toChatPage

跳转到聊天页面。

toChatPage({params})

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型(0-单聊,1-群组)

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toChatPage({
    sessionType:0,
    sessionId:'123456'
});

可用性

iOS系统

可提供的1.0.0及更高版本

toConversationPage

跳转到会话列表页面。

toConversationPage({params})

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toConversationPage();

可用性

iOS系统

可提供的1.0.0及更高版本

toContactPage

跳转到通讯录页面。

toContactPage({params})

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toContactPage();

可用性

iOS系统

可提供的1.0.0及更高版本

toUserInfoPage

跳转到用户信息页面。

toUserInfoPage({params})

params

account:

  • 类型:String
  • 描述:云信 IM 账号, 即 accid。若需简单体验或者快速测试,可在云信控制台创建测试账号,若正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toUserInfoPage({
    account:'123456'
});

可用性

iOS系统

可提供的1.0.0及更高版本

toSearchPage

跳转到搜索页面。

toSearchPage()

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toSearchPage();

可用性

iOS系统

可提供的1.1.0及更高版本

getNotificationList

获取所有验证消息(好友申请)。

getNotificationList({params}, callback(ret))

params

limit:

  • 类型:Int, 选填
  • 描述:本次获取的条数上限。

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{   
    // 验证消息列表 
    notificationList: {
        notificationId: 123456789,  // Int 类型,消息通知 ID
        type: 0,                    // Int 类型,消息通知类型
        timestamp: 123456789,       // Int 类型,消息通知时间戳
        sourceID: "123456789",      // String 类型,发送方账号
        targetID: "123456789",      // String 类型,接收方账号,即用户账号或群组 ID
        postscript: "123456789",    // String 类型,附言
        read: true,                 // Bool 类型,消息是否已读
        handleStatus: 0,            // Int 类型,消息处理状态
        notifyExt:""                // String 类型,系统通知下发的自定义扩展信息
    }
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.getNotificationList({}, function(ret){
    api.alert({
        msg:JSON.stringify(ret.notificationList)
    });
});

可用性

iOS系统

可提供的1.1.0及更高版本

markAllNotificationsAsRead

标记所有验证消息为已读。

markAllNotificationsAsRead()

示例代码

var demo = api.require('neteaseIMUIKit');
demo.markAllNotificationsAsRead();

可用性

iOS系统

可提供的1.1.0及更高版本

deleteAllNotifications

删除所有验证消息通知。

deleteAllNotifications()

示例代码

var demo = api.require('neteaseIMUIKit');
demo.deleteAllNotifications();

可用性

iOS系统

可提供的1.1.0及更高版本

getFriendList

获取好友列表。

getFriendList(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型,失败返回 code(成功返回 200)
    msg:'',                     // String 类型,失败错误信息
    friendList: {               // 好友属性
        userId: "123456789",    // String 类型,好友的用户账号
        alias: "",              // String 类型,备注名
        ext: "",                // String 类型,扩展字段
        serverExt: "",          // String 类型,服务器扩展字段
        userInfo: {
            nickName: "",       // String 类型,用户昵称
            avatarUrl: "",      // String 类型,用户头像 URL
            thumbAvatarUrl: "", // String 类型,用户头像缩略图 URL
            sign: "",           // String 类型,用户签名
            gender: 0,          // Int 类型,用户性别(0: 未知, 1: 男, 2: 女)
            email: "",          // String 类型,用户邮箱
            birth: "",          // String 类型,用户生日
            mobile: "",         // String 类型,用户手机号
            ext: ""             // String 类型,用户自定义扩展字段
        }
    }
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.getFriendList({}, function(ret){
    api.alert({
        msg:JSON.stringify(ret.friendList)
    });
});

可用性

iOS系统

可提供的1.1.0及更高版本

getBlackList

获取黑名单列表。

getBlackList(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    // 黑名单属性
    blackList: {
    userId: "123456789",    // String 类型,黑名单用户账号
    alias: "",              // String 类型,备注名
    ext: "",                // String 类型,扩展字段
    serverExt: "",          // String 类型,服务器扩展字段
    userInfo: {
        nickName: "",       // String 类型,用户昵称
        avatarUrl: "",      // String 类型,用户头像 URL
        thumbAvatarUrl: "", // String 类型,用户头像缩略图 URL
        sign: "",           // String 类型,用户签名
        gender: 0,          // Int 类型,用户性别(0: 未知, 1: 男, 2: 女)
        email: "",          // String 类型,用户邮箱
        birth: "",          // String 类型,用户生日
        mobile: "",         // String 类型,用户手机号
        ext: ""             // String 类型,用户自定义扩展字段
        }
    }
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.getBlackList({}, function(ret){
    api.alert({
        msg:JSON.stringify(ret.blackList)
    });
});

可用性

iOS系统

可提供的1.1.0及更高版本

toBlackListPage

跳转到黑名单列表页面。

toBlackListPage()

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toBlackListPage();

可用性

iOS系统

可提供的1.1.0及更高版本

getTeamList

获取群聊信息列表。

getTeamList(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    // 群组属性
    teamList: {
        teamId: "123456789",       // String 类型,群组ID
        teamName: "",              // String 类型,群组名称
        avatarUrl: "",             // String 类型,群组头像 URL
        thumbAvatarUrl: "",        // String 类型,群组头像缩略图 URL,仅适用于使用云信上传服务进上传的资源,否则该字段无效。
        type: 0,                   // Int 类型,群组类型(0: 普通群, 1: 高级群, 2: 超大群)
        owner: "",                 // String 类型,群所有者账号,普通群拥有者即群创建者,但高级群可以进行所有权转让
        intro: "",                 // String 类型,群简介
        announcement: "",          // String 类型,群公告
        memberCount: 0,            // Int 类型,群成员数量
        level: 0,                  // Int 类型,群等级
        createTime: 0,             // Int 类型,群创建时间
        joinMode: 0,               // Int 类型,加入群的模式,仅适用于高级群(0: 自由加入;1: 需要验证;2: 不允许任何人加入)
        inviteMode: 0,             // Int 类型,群邀请模式,仅适用于高级群、超大群(0: 只允许管理员/群主邀请;1: 允许所有人邀请)
        beinviteMode: 0,           // Int 类型,群被邀请模式,仅适用于高级群、超大群(0: 需要被邀请方同意;1: 不需要被邀请方同意)
        updateInfoMode: 0,         // Int 类型,群信息修改权限,仅适用于高级群(0: 只有管理员/群主可以修改;1: 所有人都可以修改)
        updateClientCustomMode: 0, // Int 类型,群客户端自定义信息修改权限,仅适用于高级群(0: 只有管理员/群主可以修改;1: 所有人都可以修改)
        serverCustomInfo: "",      // String 类型,服务器自定义信息,应用方可以自行拓展这个字段做个性化配置,客户端不可以修改这个字段
        clientCustomInfo: "",      // String 类型,客户端自定义信息,应用方可以自行拓展这个字段做个性化配置,客户端可以修改这个字段
        notifyStateNewMsg: 0,      // Int 类型,群消息通知状态(0: 接受任何群消息通知;1: 不接受任何群消息通知;2: 只接受管理员的群消息通知(仅高级群支持,超大群不支持))
        allMuteMode: 0,            // Int 类型,群全员禁言状态,仅适用于高级群、超大群(0: 取消全员禁言;1: 全员禁言,不包括管理员;3: 全员禁言,包括群主和管理员(注意这里是 3)
    }
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.getTeamList({}, function(ret){
    api.alert({
        msg:JSON.stringify(ret.teamList)
    });
});

可用性

iOS系统

可提供的1.1.0及更高版本

toTeamListPage

跳转我的群聊列表页面。

toTeamListPage()

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toTeamListPage();

可用性

iOS系统

可提供的1.1.0及更高版本

toFindFriendPage

跳转添加好友页面。

toFindFriendPage()

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toFindFriendPage();

可用性

iOS系统

可提供的1.1.0及更高版本

addFriend

添加好友、通过/拒绝好友请求。

addFriend({params}, callback(ret))

params

account:

  • 类型:String
  • 描述:云信 IM 账号, 即 accid。若需简单体验或者快速测试,可在云信控制台创建测试账号,若正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

operationType:

  • 类型:Int
  • 描述:操作类型
    • 0-添加好友(无需验证)
    • 1-请求添加好友(需要验证)
    • 2-通过添加好友请求
    • 3-拒绝添加好友请求
  • 默认值:0

message:

  • 类型:String, 选填
  • 描述:附言

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.addFriend({
    account: '123456',
    operationType: 1
});

可用性

iOS系统

可提供的1.1.0及更高版本

deleteFriend

删除好友。

deleteFriend({params}, callback(ret))

params

account:

  • 类型:String
  • 描述:云信 IM 账号, 即 accid。若需简单体验或者快速测试,可在云信控制台创建测试账号,若正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

deleteAlias:

  • 类型:Bool, 选填
  • 描述:是否同时删除备注
  • 默认值:true

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.deleteFriend({
    account: '123456'
});

可用性

iOS系统

可提供的1.1.0及更高版本

addToBlacklist

将用户添加到黑名单。

addToBlacklist({params}, callback(ret))

params

account:

  • 类型:String
  • 描述:云信 IM 账号, 即 accid。若需简单体验或者快速测试,可在云信控制台创建测试账号,若正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.addToBlacklist({
    account: '123456'
});

可用性

iOS系统

可提供的1.1.0及更高版本

removeFromBlacklist

将用户移除黑名单。

removeFromBlacklist({params}, callback(ret))

params

account:

  • 类型:String
  • 描述:云信 IM 账号, 即 accid。若需简单体验或者快速测试,可在云信控制台创建测试账号,若正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败接口信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.removeFromBlacklist({
    account: '123456'
});

可用性

iOS系统

可提供的1.1.0及更高版本

getUserInfo

从本地获取用户资料。若本地获取不到,则返回服务端数据。

getUserInfo({params}, callback(ret))

params

account:

  • 类型:String
  • 描述:云信 IM 账号, 即 accid。若需简单体验或者快速测试,可在云信控制台创建测试账号,若正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型,失败返回 code(成功返回 200)
    msg:'',                     // String 类型,失败错误信息
    user: {                     // 好友属性
        userId: "123456789",    // String 类型,用户账号
        alias: "",              // String 类型,备注名
        ext: "",                // String 类型,扩展字段
        serverExt: "",          // String 类型,服务端扩展字段
        userInfo: {             // 用户资料,仅当用户选择托管信息到云信时有效
            nickName: "",       // String 类型,用户昵称
            avatarUrl: "",      // String 类型,用户头像 URL
            thumbAvatarUrl: "", // String 类型,用户头像缩略图 URL
            sign: "",           // String 类型,用户签名
            gender: 0,          // Int 类型,用户性别(0: 未知, 1: 男, 2: 女)
            email: "",          // String 类型,用户邮箱
            birth: "",          // String 类型,用户生日
            mobile: "",         // String 类型,用户手机号
            ext: "",            // String 类型,用户自定义扩展字段
        }
    }
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.getUserInfo({
    account: '123456'
}, function(ret){
    api.alert({
        msg:JSON.stringify(ret.user)
    });
});

可用性

iOS系统

可提供的1.1.0及更高版本

updateFriendAlias

更新好友备注。

updateFriendAlias({params}, callback(ret))

params

account:

  • 类型:String
  • 描述:云信 IM 账号, 即 accid。若需简单体验或者快速测试,可在云信控制台创建测试账号,若正式生产环境请通过云信服务端接口注册云信 IM 正式账号。

alias:

  • 类型:String
  • 描述:好友备注

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.updateFriendAlias({
    account: '123456',
    alias: 'APICloud alias'
});

可用性

iOS系统

可提供的1.1.0及更高版本

updateMyUserInfo

更新自己的用户资料。

updateMyUserInfo({params}, callback(ret))

params

avatar:

  • 类型:String
  • 描述:用户头像 URL

nickName:

  • 类型:String
  • 描述:用户昵称

gender:

  • 类型:Int
  • 描述:用户性别,0: 未知, 1: 男, 2: 女

mobile:

  • 类型:String
  • 描述:用户手机号,请使用合法手机号

birth:

  • 类型:String
  • 描述:用户生日,具体格式为 yyyy-MM-dd

email:

  • 类型:String
  • 描述:用户邮箱,请使用合法邮箱

sign:

  • 类型:String
  • 描述:好友备注信息

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.updateMyUserInfo({
    gender: 1,
    mobile: '12312341234'
});

可用性

iOS系统

可提供的1.1.0及更高版本

deleteRecentSession

删除最近会话。

deleteRecentSession({params}, callback(ret))

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

isDeleteRoamMessage:

  • 类型:Bool
  • 描述:是否删除该会话的服务端漫游消息。false-仅删除本地会话,true-删除本地会话的同时删除服务端漫游消息
  • 默认值:false

shouldMarkAllMessagesReadInSessions:

  • 类型:Bool
  • 描述:是否标记会话中所有消息为已读。false-仅删除本地会话;true-删除本地会话的同时标记会话中所有消息为已读
  • 默认值:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.deleteRecentSession({
    sessionId: '123456',
    sessionType: 0
});

可用性

iOS系统

可提供的1.1.0及更高版本

addStickTop

添加一条置顶会话。

addStickTop({params}, callback(ret))

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

ext:

  • 类型:String
  • 描述:扩展字段,长度上限为 512 字符

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型,失败返回 code(成功返回 200)
    msg:'',                     // String 类型,失败错误信息
    stickTopSessionInfo: {      // 置顶会话属性
        session: {              // 会话属性
            sessionId: "",      // String 类型,会话ID
            sessionType:0       // Int 类型,会话类型(0: P2P, 1: Team)
        },
        ext: "",                // String 类型,扩展字段,长度上限为 512 字符
        createTime: 0,          // Double 类型,置顶会话的时间戳,单位秒
        updateTime: 0           // Double 类型,更新会话的时间戳,单位秒
    }
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.addStickTop({
    sessionId: '123456',
    sessionType: 0
});

可用性

iOS系统

可提供的1.1.0及更高版本

removeStickTop

移除一条置顶会话(取消置顶)。

removeStickTop({params}, callback(ret))

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

ext:

  • 类型:String
  • 描述:扩展字段,长度上限为 512 字符

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型,失败返回 code(成功返回 200)
    msg:'',                     // String 类型,失败错误信息
    stickTopSessionInfo: {      // 置顶会话属性
        session: {              // 对应的会话
            sessionId: "",      // String 类型,会话 ID
            sessionType:0       // Int 类型,会话类型(0: P2P, 1: Team)
        },
        ext: "",                // String 类型,扩展字段,最大512 字符
        createTime: 0,          // Double 类型,置顶会话的时间戳,单位秒
        updateTime: 0           // Double 类型,更新会话的时间戳,单位秒
    }
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.removeStickTop({
    sessionId: '123456',
    sessionType: 0
});

可用性

iOS系统

可提供的1.1.0及更高版本

toCreateGroupPage

跳转到创建讨论组(人员选择)页面。

toCreateGroupPage()

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toCreateGroupPage();

可用性

iOS系统

可提供的1.1.0及更高版本

toCreateTeamPage

跳转到创建高级群(人员选择)页面。

toCreateTeamPage()

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toCreateTeamPage();

可用性

iOS系统

可提供的1.1.0及更高版本

toChatSettingPage

跳转到聊天设置页面。

toChatSettingPage({params})

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toChatSettingPage({
    sessionId: "123456",
    sessionType: 1
});

可用性

iOS系统

可提供的1.1.0及更高版本

toTeamInfoPage

跳转到群信息页面。

toTeamInfoPage({params}, callback(ret))

params

teamId:

  • 类型:String
  • 描述:群组 ID

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toTeamInfoPage({
    teamId: "123456"
});

可用性

iOS系统

可提供的1.1.0及更高版本

toTeamMemberListPage

跳转群成员列表页面。

toTeamMemberListPage({params})

params

teamId:

  • 类型:String
  • 描述:群组 ID

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toTeamMemberListPage({
    teamId: "123456"
});

可用性

iOS系统

可提供的1.1.0及更高版本

toPinListPage

跳转到标记会话页面。

toPinListPage({params})

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toPinListPage({
    sessionId: "123456",
    sessionType: 1
});

可用性

iOS系统

可提供的1.1.0及更高版本

toTeamHistoryPage

跳转到群历史消息搜索页面。

toTeamHistoryPage({params})

params

teamId:

  • 类型:String
  • 描述:群组 ID

示例代码

var demo = api.require('neteaseIMUIKit');
demo.toTeamHistoryPage({
    teamId: "123456"
});

可用性

iOS系统

可提供的1.1.0及更高版本

updateTeamNick

更新群组内的昵称。

updateTeamNick({params}, callback(ret))

params

teamId:

  • 类型:String
  • 描述:群组 ID

account:

  • 类型:String
  • 描述:用户账号(accid)

newNick:

  • 类型:String
  • 描述:新的群昵称

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.updateTeamNick({
    teamId: '123456',
    account: '456789',
    newNick: 'APIClould new nick'
});

可用性

iOS系统

可提供的1.1.0及更高版本

quitTeam

退出群聊/讨论组。

  • 当群主退出群聊,则群组解散。
  • 当群主退出讨论组,若剩自己一人则讨论组解散;若转移群主权限后退出,讨论组仍存在。

quitTeam({params}, callback(ret))

params

teamId:

  • 类型:String
  • 描述:群组 ID

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.quitTeam({
    teamId: '123456'
});

可用性

iOS系统

可提供的1.1.0及更高版本

transferTeamOwner

转让群主身份。

transferTeamOwner({params}, callback(ret))

params

teamId:

  • 类型:String
  • 描述:群组 ID

newOwnerId:

  • 类型:String
  • 描述:新群主用户账号(accid)

isLeave:

  • 类型:Bool
  • 描述:转让的同时是否同时离开群组
  • 默认值:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.transferTeamOwner({
    teamId: '123456',
    newOwnerId: '456789',
    isLeave: true
});

可用性

iOS系统

可提供的1.1.0及更高版本

dismissTeam

解散群聊。

dismissTeam({params}, callback(ret))

params

teamId:

  • 类型:String
  • 描述:群组 ID

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.dismissTeam({
    teamId: '123456'
});

可用性

iOS系统

可提供的1.1.0及更高版本

sendTextMessage

发送文本消息。

sendTextMessage({params}, callback(ret))

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

text:

  • 类型:String
  • 描述:消息内容

remoteExt:

  • 类型:JSON
  • 描述:服务端扩展字段,您可以在客户端设置该字段并发送至对端,长度限制 1K。

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.sendTextMessage({
    sessionId: '123456',
    sessionType: 0,
    text: 'APICloud text message'
});

可用性

iOS系统

可提供的1.1.0及更高版本

sendAudioMessage

发送语音消息。

sendAudioMessage({params}, callback(ret))

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

filePath:

  • 类型:String
  • 描述:语音源文件路径,必须为本地路径(fs://、widget://)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.sendAudioMessage({
    sessionId: '123456',
    sessionType: 0,
    filePath: 'widget://res/APIClould audio.aac'
});

可用性

iOS系统

可提供的1.1.0及更高版本

sendImageMessage

发送图片消息

sendImageMessage({params}, callback(ret))

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

filePath:

  • 类型:String
  • 描述:图片源文件路径,必须为本地路径(fs://、widget://)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.sendImageMessage({
    sessionId: '123456',
    sessionType: 0,
    filePath: 'widget://res/APIClould logo.png'
});

可用性

iOS系统

可提供的1.1.0及更高版本

sendVideoMessage

发送视频消息。

sendVideoMessage({params}, callback(ret))

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

filePath:

  • 类型:String
  • 描述:视频源文件路径,必须为本地路径(fs://、widget://)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.sendVideoMessage({
    sessionId: '123456',
    sessionType: 0,
    filePath: 'widget://res/APIClould vedio.mp4'
});

可用性

iOS系统

可提供的1.1.0及更高版本

sendFileMessage

发送文件消息。

sendFileMessage({params}, callback(ret))

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

filePath:

  • 类型:String
  • 描述:源文件路径,必须为本地路径(fs://、widget://)

displayName:

  • 类型:String, 选填
  • 描述:文件显示名称

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.sendFileMessage({
    sessionId: '123456',
    sessionType: 0,
    filePath: 'widget://res/APIClould logo.png',
    displayName: 'APIClould logo.png'
});

可用性

iOS系统

可提供的1.1.0及更高版本

sendLocationMessage

发送地理位置消息。

sendLocationMessage({params}, callback(ret))

params

sessionId:

  • 类型:String
  • 描述:会话 ID,如果当前会话类型为单聊,则会话 ID 为聊天对象账号;如果当前会话类型为群组,则会话 ID 为群组 ID。

sessionType:

  • 类型:Int
  • 描述:会话类型,0-单聊, 1-群组

latitude:

  • 类型:Double
  • 描述:纬度

longitude:

  • 类型:Double
  • 描述:经度

title:

  • 类型:String
  • 描述:地理位置标题

address:

  • 类型:String
  • 描述:地理位置描述

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;失败返回 code(成功返回 200)
    msg:'',                     // String 类型;失败错误信息
}

示例代码

var demo = api.require('neteaseIMUIKit');
demo.sendLocationMessage({
    sessionId: '123456',
    sessionType: 0,
    latitude: 100,
    longitude: 200,
    title: 'APIClould location',
    address: '用友省用友市用友区用友路用友大厦二期'
});

可用性

iOS系统

可提供的1.1.0及更高版本

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