# GameServerManager.onRoomInfoChange(function listener)

> __微信 鸿蒙 OS 版__：支持

## 功能描述

监听房间信息更新

## 参数

### function listener

的监听函数

#### 参数

##### Object res


```json
[
  {
    "属性": "res",
    "类型": "Object",
    "说明": "",
    "子项": [
      {
        "结构属性": "appId",
        "类型": "string",
        "说明": "小游戏 appId"
      },
      {
        "结构属性": "roomIdStr",
        "类型": "number",
        "说明": "房间 ID"
      },
      {
        "结构属性": "roomState",
        "类型": "number",
        "说明": "房间状态",
        "子项": [
          {
            "合法值": "1",
            "说明": "组队中"
          },
          {
            "合法值": "2",
            "说明": "该房间的对局游戏已开始"
          },
          {
            "合法值": "3",
            "说明": "该房间的对局游戏已结束"
          },
          {
            "合法值": "4",
            "说明": "房间已销毁"
          },
          {
            "合法值": "5",
            "说明": "房间连接已建立，等待对战连接建立"
          }
        ]
      },
      {
        "结构属性": "maxMemberNum",
        "类型": "number",
        "说明": "房间最多可容纳人数"
      },
      {
        "结构属性": "createTimestamp",
        "类型": "number",
        "说明": "创建时间"
      },
      {
        "结构属性": "updateTimestamp",
        "类型": "number",
        "说明": "最近更新时间"
      },
      {
        "结构属性": "gameTick",
        "类型": "number",
        "说明": "游戏下发帧的时间间隔，单位 ms"
      },
      {
        "结构属性": "startPercent",
        "类型": "number",
        "说明": "需要满足百分比的玩家都发送了开始指令才能启动游戏。有效范围 0~100，0 表示只要有一个人调用开始就启动，100 表示要求所有人都开始才能启动。"
      },
      {
        "结构属性": "roomExtInfo",
        "类型": "string",
        "说明": "游戏自定义的关于房间的扩展信息"
      },
      {
        "结构属性": "gameLastTime",
        "类型": "number",
        "说明": "游戏对局时长，单位 s"
      },
      {
        "结构属性": "udpReliabilityStrategy",
        "类型": "number",
        "说明": "UDP可靠性策略， 0：全冗余 N：固定冗余N帧"
      },
      {
        "结构属性": "memberList",
        "类型": "Array.<Object>",
        "说明": "成员列表",
        "子项": [
          {
            "结构属性": "isReady",
            "类型": "boolean",
            "说明": "玩家准备状态"
          },
          {
            "结构属性": "role",
            "类型": "number",
            "说明": "角色",
            "子项": [
              {
                "合法值": "0",
                "说明": "普通成员"
              },
              {
                "合法值": "1",
                "说明": "房主"
              }
            ]
          },
          {
            "结构属性": "posNum",
            "类型": "number",
            "说明": "座位号，从 0 开始"
          },
          {
            "结构属性": "headimg",
            "类型": "string",
            "说明": "头像 URL（房间 needUserInfo 为 true 时才会有）"
          },
          {
            "结构属性": "nickname",
            "类型": "string",
            "说明": "用户昵称（房间 needUserInfo 为 true 时才会有）"
          },
          {
            "结构属性": "clientId",
            "类型": "number",
            "说明": "用户在房间内的唯一标识"
          },
          {
            "结构属性": "enableToStart",
            "类型": "boolean",
            "说明": "是否已做好游戏开始准备（调用过 startGame）"
          },
          {
            "结构属性": "memberExtInfo",
            "类型": "string",
            "说明": "游戏自定义的关于成员的扩展信息"
          }
        ]
      },
      {
        "结构属性": "seed",
        "类型": "string",
        "说明": "游戏随机种子"
      }
    ]
  }
]
```
