浏览 SDKs · uni-app / uni-app x
平台
SDKsuni-app / uni-app x商业版

发起群聊通话

邀请指定群成员加入音频或视频通话。

复制

发起群聊音频或视频通话邀请。该操作只邀请 inviteeUserIDList 中列出的群成员,不会因为填写 groupID 自动邀请全群。

import {
  OpenIMSessionTypeWriteGroup,
  signalingInviteInGroup,
} from '@/uni_modules/unix-openim-sdk'

const invitation = {
  inviterUserID: currentUserID,
  inviteeUserIDList: selectedGroupMemberIDs,
  customData: JSON.stringify({ source: 'group-call' }),
  groupID,
  roomID: createCallRoomID(),
  timeout: 30,
  mediaType: 'video',
  sessionType: OpenIMSessionTypeWriteGroup,
  platformID: currentOpenIMPlatform,
}

const result = await signalingInviteInGroup({
  invitation,
  offlinePushInfo,
})

invitation 和 offlinePushInfo 的字段含义见发起单聊通话。群聊场景需要特别注意:

  • groupID 必须是当前群组 ID。
  • inviteeUserIDList 应排除发起人、空值和重复用户。
  • 每次通话使用新的 roomID,不要直接复用 groupID。
  • sessionType 使用当前群会话实际采用的类型;普通工作群使用 OpenIMSessionTypeWriteGroup。

Promise 成功后返回 OpenIMSignalingInviteResult | null。客户端通话状态应按 roomID 建立和合并,各成员状态结合具体用户 ID 维护;busyLineUserIDList 只表示部分成员忙线,不影响其他成员的邀请,调用成功也不表示任何成员已经接听。完整事件监听见处理通话事件。