更新时间:2024-07-30 GMT+08:00

场景8:邮件链接入会

描述

通过邮件会议通知中的会议链接入会时(会议链接如:https://bmeeting.huaweicloud.com/#/j/981924330/e11ddec62ee760734fcf2ba55b79937eac2aa68677caf659),链接里面的是会议ID(即举例中的981924330)和会议的Random码(即举例中的e11ddec62ee760734fcf2ba55b79937eac2aa68677caf659)。

在华为云会议账号登录后或者登录前,都可以使用该接口通过分享会议链接中的会议ID和48位密码映射值Random加入会议。

业务流程

使用SDK加入已经存在的会议时,先调用JoinConfByRandom接口,然后处理回调函数OnJoinConfByRandom和消息通知OnConfState、OnConfInfo

  1. 接口调用

    1. 组装数据结构HwmJoinConfByRandomInfo。
    2. 调用JoinConfByRandom开始入会,第1步中的数据作为参数。

  2. 处理回调函数

    处理回调函数OnJoinConfByRandomResult。

  3. 处理消息通知

    处理消息通知OnConfState。

  4. 处理消息通知

    处理消息通知OnConfInfo。

示例代码

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
// 通过会议ID和Random加入会议
int demoJoinConfByRandomDlg::clickJoinConfByRandom()
{
    // 填写会议ID和密码映射值等;Random入会时,支持配置会场名称
    hwmsdkagent::HwmJoinConfByRandomInfo data;
    memset(&data, 0, sizeof(hwmsdkagent::HwmJoinConfByRandomInfo));
 
    strncpy_s(data.confId, GetMeetingID().c_str(), HWM_MAX_CONF_ID_LEN);
    strncpy_s(data.random, GetAccessCode().c_str(), HWM_MAX_RANDOM_LEN);
    strncpy_s(data.name, GetParticipantName().c_str(), HWM_MAX_DISPLAY_NAME_LEN);
    
    int ret = hwmsdkagent::JoinConfByRandom(&data);
    return ret;
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
/**
* 会议Id和Random入会接口回调
*/
void demoCallbackProc::OnJoinConfByRandomResult(hwmsdk::HwmErrCode ret, const char* reason)
{
    CString codeStr;
    codeStr.Format(_T("%d"), ret);
    string msgStr = CTools::UTF82MultiByte(msg);
    CString tips = _T("OnJoinConfByRandomResult code:") + codeStr + _T(", msg:") + CString(msgStr.c_str());
    AfxMessageBox(tips);
}

OnConfState和OnConfInfo的事件通知跟创建会议场景相同,请参考创建会议的示例代码

48位密码映射值为分享会议/复制会议信息中的链接所携带的部分字符串。

https://bmeeting.huaweicloud.com/#/j/987297025/227b2d708b7e5a24ce8de2159772239b1672c0a85ba70d85