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

查询外部通讯录头像

通知描述

该接口用于实现视频画面窗口中,未打开摄像头时,显示自定义头像。使用该接口需要先在“界面配置”接口中把isUseExternalAddressBook设置成true,并在这个通知接口中返回需要需要显示头像的图片给SDK。

方法定义

1
virtual void OnQueryContactAvatar(const char account[HWM_MAX_ACCOUNT_LEN], const char thirdUserId[HWM_MAX_ACCOUNT_LEN], const char sipNumber[HWM_MAX_NUMBER_LEN], char* avatarPath,int pathLen) {};

注意事项

用户侧需要在OnQueryContactAvatar通知方法里,根据account账号、thirdUserId第三方账户、sipNumber(sip号码)查询自己的通讯录,获取到avatarPath头像路径,并赋值到avatarPath里面,路径长度上限为pathLen。

参数描述

表1

参数

类型

描述

account

char[]

登录华为云会议的账号信息。

thirdUserId

char[]

登录华为云会议的第三方用户Id。

sipNumber

char[]

账号对应的sip号码。

avatarPath

char*

查询通讯录返回的头像路径。

pathLen

int

最大路径长度。

示例代码

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
/**
* 查询外部通讯录头像
*/
void demoNotifyProc::OnQueryContactAvatar(const char* account, const char* thirdUserId, const char* sipNumber, char* avatarPath, int pathLen)
{
    Cdemo* app = (Cdemo*)AfxGetApp();
    if (!app || (strlen(account) == 0 && strlen(thirdUserId) == 0 && strlen(sipNumber) == 0))
    {
        //窗口已经关闭或数据为空
        return;
    }
 
    string sAccount = account;
    string sThirdUserId = thirdUserId;
    string sSipNumber = sipNumber;
 
    /* 根据用户层自己的逻辑 + account thirdUserId sipNumber 获取到头像图片路径信息并复制到avatarPath char数组内*/
    // 测试使用时,在D:\\picture\\路径下放置一张图片test.png
    strcpy_s(avatarPath, pathLen, "D:\\picture\\test.png");
}