文档首页/ 华为云会议 Meeting/ 客户端SDK参考/ Windows SDK/ 典型场景/ 场景10:定制会中“邀请”按钮
更新时间:2024-07-30 GMT+08:00

场景10:定制会中“邀请”按钮

描述

考虑到大部分使用SDK二次开发的场景下,第三方App不会使用华为云会议的通讯录,因此Windows SDK提供的会议界面上“邀请”按钮,只提供了一个按钮界面,并没有提供完整邀请与会者的功能,需要开发者自己实现。

业务流程

使用SDK实现“邀请”功能时,在SDK初始化完成后先调用Config接口,然后处理回调函数OnConfigResult。会议中,在“邀请”按钮单击后,再处理消息通知OnClickInjectBtn。

  1. 接口调用

    1. 在SDK初始化后,调用Config进行“邀请”按钮的定制。

  2. 处理回调函数

    处理回调函数OnConfigResult。

  3. 处理消息通知

    当“邀请”按钮单击后,再处理消息通知OnClickInjectBtn

示例代码

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
/**
* 配置邀请按钮
*/
int hwmSDKConfigUI::hwmSDKStartUIConfig()
{
    //配置“邀请”按钮
    CString inviteBtn = ("{\"frame\":{\"confMenu\" : {\"toolBar\":{\"button\":[{\"id\":\"invite\",\"showAsAction\" : \"ifRoom\",\"isCustomizedClick\" : true}]}}}}");
    string uiConfig CTools::UNICODE2UTF(inviteBtn);
    ret = hwmsdkagent::Config(uiConfig);
    return ret;
}

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
/**
* 配置接口回调
*/
void demoCallbackProc::OnConfigResult(hwmsdk::HwmErrCode ret, const char* msg)
{
    CString codeStr;
    codeStr.Format(_T("%d"), ret);
    string msgStr = CTools::UTF82MultiByte(msg);
    CString tips = _T("OnConfigResult code:") + codeStr + _T(", msg:") + CString(msgStr.c_str());
    AfxMessageBox(tips);
}

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
/**
* 按钮点击消息通知
*/
void notifyProc::OnClickInjectBtn(hwmsdkagent::HwmClickInjectBtn injectBtn, void* data, const char* id)
 {
     INT_PTR nRes;
     switch (injectBtn)
         // “邀请”按钮点击消息通知
         case hwmsdkagent::HWM_CLICK_INJECT_BTN_INVITE:
        {
            // 显示带通讯录的邀请与会人界面
            hwm_ui_demo_inviteDlg inviteDlg;
            nRes = inviteDlg.DoModal();
            break;
        }
 }