# wx.joinVoIPChat(Object object)

> 基础库 2.7.0 开始支持，低版本需做[兼容处理](1003706)。

> __以 [Promise 风格](/miniprogram/dev/framework/app-service/api.md#异步-API-返回-Promise) 调用__：支持
> 
> __[用户授权](/miniprogram/dev/framework/open-ability/authorize.md)__：需要 scope.record
> 
> __小程序插件__：支持，需要小程序基础库版本不低于 [2.9.0](1003706)
> 
> __微信 Windows 版__：支持
> 
> __微信 Mac 版__：支持
> 
> __微信 鸿蒙 OS 版__：支持

> 相关文档: [多人音视频对话](/miniprogram/dev/framework/open-ability/voip-chat.md)

## 功能描述

加入 (创建) 实时语音通话，更多信息可见 [实时语音指南](/miniprogram/dev/framework/open-ability/voip-chat.md)。调用前需要用户授权 `scope.record`，若房间类型为视频房间需要用户授权 `scope.camera`。

## 参数

### Object object


```json
[
  {
    "属性": "roomType",
    "类型": "String",
    "默认值": "voice",
    "必填": "否",
    "说明": "房间类型",
    "最低版本": "",
    "子项": [
      {
        "合法值": "voice",
        "说明": "音频房间，用于语音通话"
      },
      {
        "合法值": "video",
        "说明": "视频房间，结合 [voip-room](/miniprogram/dev/component/voip-room.md) 组件可显示成员画面"
      }
    ]
  },
  {
    "属性": "signature",
    "类型": "String",
    "默认值": "",
    "必填": "是",
    "说明": "签名，用于验证小游戏的身份",
    "最低版本": ""
  },
  {
    "属性": "nonceStr",
    "类型": "String",
    "默认值": "",
    "必填": "是",
    "说明": "验证所需的随机字符串",
    "最低版本": ""
  },
  {
    "属性": "timeStamp",
    "类型": "Number",
    "默认值": "",
    "必填": "是",
    "说明": "验证所需的时间戳",
    "最低版本": ""
  },
  {
    "属性": "groupId",
    "类型": "String",
    "默认值": "",
    "必填": "是",
    "说明": "小游戏内此房间/群聊的 ID。同一时刻传入相同 groupId 的用户会进入到同个实时语音房间。",
    "最低版本": ""
  },
  {
    "属性": "muteConfig",
    "类型": "Object",
    "默认值": "",
    "必填": "否",
    "说明": "静音设置",
    "最低版本": "",
    "子项": [
      {
        "结构属性": "muteMicrophone",
        "类型": "Boolean",
        "默认值": "false",
        "必填": "否",
        "说明": "是否静音麦克风"
      },
      {
        "结构属性": "muteEarphone",
        "类型": "Boolean",
        "默认值": "false",
        "必填": "否",
        "说明": "是否静音耳机"
      }
    ]
  },
  {
    "属性": "forceCellularNetwork",
    "类型": "boolean",
    "默认值": "false",
    "必填": "否",
    "说明": "开启后，joinVoIPChat 会同时走 Wi-Fi 和蜂窝网络2种网络模式，保证实时通话体验。",
    "最低版本": "[2.29.0](1003706)"
  },
  {
    "属性": "success",
    "类型": "function",
    "默认值": "",
    "必填": "否",
    "说明": "接口调用成功的回调函数",
    "最低版本": ""
  },
  {
    "属性": "fail",
    "类型": "function",
    "默认值": "",
    "必填": "否",
    "说明": "接口调用失败的回调函数",
    "最低版本": ""
  },
  {
    "属性": "complete",
    "类型": "function",
    "默认值": "",
    "必填": "否",
    "说明": "接口调用结束的回调函数（调用成功、失败都会执行）",
    "最低版本": ""
  }
]
```

#### object.success 回调函数
##### 参数

###### Object res

| 属性 | 类型 | 说明 |
| ---- | ---- | ---- |
| openIdList  | Array.<String> | 在此通话中的成员 openId 名单 |
| errCode  | Number | 错误码 |
| errMsg  | String | 调用结果 |

## 错误
| 错误码 | 错误信息 | 说明 |
| -- | ---- | --- |
| -1 | 当前已在房间内 |   |
| -2 | 录音设备被占用，可能是当前正在使用微信内语音通话或系统通话 |   |
| -3 | 加入会话期间退出（可能是用户主动退出，或者退后台、来电等原因），因此加入失败 |   |
| -1000 | 系统错误 |   |
