更新页面
This commit is contained in:
690
src/components/Consultation/sdk/conferenceControl.js
Normal file
690
src/components/Consultation/sdk/conferenceControl.js
Normal file
@ -0,0 +1,690 @@
|
||||
// 会议状态-未开始
|
||||
export const CONFERENCE_STATUS_DEFAULT = 0;
|
||||
// 会议状态-进行中
|
||||
export const CONFERENCE_STATUS_PROGRESS = 1;
|
||||
// 会议状态-已结束
|
||||
export const CONFERENCE_STATUS_ENDED = 3;
|
||||
// 会议状态-已取消
|
||||
export const CONFERENCE_STATUS_CANCELED = 2;
|
||||
|
||||
// 成员是否参加过会议-否(在历史记录中有效)
|
||||
export const CONFERENCE_MEMBER_ABSENT = 0;
|
||||
// 成员是否参加过会议-是(在历史记录中有效)
|
||||
export const CONFERENCE_MEMBER_PRESENT = 1;
|
||||
|
||||
// 成员在会议中的状态-未入会
|
||||
export const CONFERENCE_MEMBER_STATE_OUT = 0;
|
||||
// 成员在会议中的状态-已入会
|
||||
export const CONFERENCE_MEMBER_STATE_IN = 1;
|
||||
// 成员在会议中的状态-呼叫中
|
||||
export const CONFERENCE_MEMBER_STATE_CALLING = 2;
|
||||
|
||||
// 成员角色-普通成员
|
||||
export const CONFERENCE_ROLE_NORMAL = 0;
|
||||
// 成员角色-主持人
|
||||
export const CONFERENCE_ROLE_HOST = 1;
|
||||
// 成员角色-创建者
|
||||
export const CONFERENCE_ROLE_CREATOR = 2;
|
||||
|
||||
// 会议类型-预约会议
|
||||
export const CONFERENCE_TYPE_BOOK = 1;
|
||||
// 会议类型-即时会议
|
||||
export const CONFERENCE_TYPE_SHORTCUT = 0;
|
||||
|
||||
// 会议主题最大长度
|
||||
export const CONFERENCE_SUBJECT_MAX_LENGTH = 64;
|
||||
|
||||
// 麦克风关闭
|
||||
export const MICROPHONE_STATUS_CLOSE = 0;
|
||||
// 麦克风打开
|
||||
export const MICROPHONE_STATUS_OPEN = 1;
|
||||
// 没有麦克风
|
||||
export const MICROPHONE_STATUS_NO = 2;
|
||||
|
||||
// 摄像头关闭
|
||||
export const CAMERA_STATUS_CLOSE = 0;
|
||||
// 摄像头打开
|
||||
export const CAMERA_STATUS_OPEN = 1;
|
||||
// 没有摄像头
|
||||
export const CAMERA_STATUS_NO = 2;
|
||||
|
||||
// 未禁言
|
||||
export const PROHIBITION_STATUS_N = 0;
|
||||
// 禁言
|
||||
export const PROHIBITION_STATUS_Y = 1;
|
||||
|
||||
// 未静音
|
||||
export const MUTE_STATUS_N = 0;
|
||||
// 静音
|
||||
export const MUTE_STATUS_Y = 1;
|
||||
|
||||
// 没有讲话
|
||||
export const SPEAKING_STATUS_N = 0;
|
||||
// 正在讲话
|
||||
export const SPEAKING_STATUS_Y = 1;
|
||||
|
||||
// 半双工模式
|
||||
export const HALFDUPLEX_CALL = 0;
|
||||
// 全双工
|
||||
export const FULLDUPLEX_CALL = 1;
|
||||
|
||||
// 未举手
|
||||
export const RAISE_HAND_N = 0;
|
||||
// 未举手
|
||||
export const RAISE_HAND_Y = 1;
|
||||
|
||||
// 举手同意发言
|
||||
export const RAISE_HAND_ALLOW = 2;
|
||||
// 举手同意拒绝
|
||||
export const RAISE_HAND_DENY = 3;
|
||||
// 举手同意忽略
|
||||
export const RAISE_HAND_IGNORE = 4;
|
||||
|
||||
export default function useConfernceModule() {
|
||||
/**
|
||||
* 是否锁定会议
|
||||
*/
|
||||
const lockConference = (data) => {
|
||||
return window.lemon.conferenceControl.lockConference(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 更新会议主题
|
||||
*/
|
||||
const updateConferenceSubject = (data) => {
|
||||
return window.lemon.conferenceControl.updateConferenceSubject(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 设置成员角色
|
||||
*/
|
||||
const setMemberRole = (data) => {
|
||||
return window.lemon.conferenceControl.setMemberRole(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加设置成员角色回调
|
||||
*/
|
||||
const addSetMemberRoleListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addSetMemberRoleListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除设置成员角色回调
|
||||
*/
|
||||
const removeSetMemberRoleListener = (callback) => {
|
||||
return window.lemon.conferenceControl.removeSetMemberRoleListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加成员入会回调
|
||||
*/
|
||||
const addMemberJoinListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addMemberJoinListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除成员入会回调
|
||||
*/
|
||||
const removeMemberJoinListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeMemberJoinListener(callback_id);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加成员离会回调
|
||||
*/
|
||||
const addMemberLeftListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addMemberLeftListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除成员离会回调
|
||||
*/
|
||||
const removeMemberLeftListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeMemberLeftListener(callback_id);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加修改会议主题回调
|
||||
*/
|
||||
const addUpdateSubjectListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addUpdateSubjectListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除修改会议主题回调
|
||||
*/
|
||||
const removeUpdateSubjectListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeUpdateSubjectListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改会议成员昵称
|
||||
*/
|
||||
const modifyMemberNickname = (data) => {
|
||||
return window.lemon.conferenceControl.modifyMemberNickname(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加修改会议成员昵称回调
|
||||
*/
|
||||
const addModifyMemberNickListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addModifyMemberNickListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除修改会议成员昵称回调
|
||||
*/
|
||||
const removeModifyMemberNickListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeModifyMemberNickListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 呼叫全部未入会成员
|
||||
*/
|
||||
const inviteMember = (data) => {
|
||||
return window.lemon.conferenceControl.inviteMember(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 呼叫全部未入会成员
|
||||
*/
|
||||
const inviteAllMember = (data) => {
|
||||
return window.lemon.conferenceControl.inviteAllMember(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加呼叫未入会成员回调
|
||||
*/
|
||||
const addInviteMemberListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addInviteMemberListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除呼叫未入会成员回调
|
||||
*/
|
||||
const removeInviteMemberListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeInviteMemberListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 踢出会议中成员
|
||||
*/
|
||||
const kickoutMember = (data) => {
|
||||
return window.lemon.conferenceControl.kickoutMember(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 设置麦克风设备
|
||||
*/
|
||||
const changeAudioInputDevice = (data) => {
|
||||
return window.lemon.conferenceControl.changeAudioInputDevice(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 设置麦克风设备
|
||||
*/
|
||||
const changeVideoInputDevice = (data) => {
|
||||
return window.lemon.conferenceControl.changeVideoInputDevice(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 摄像头开关
|
||||
*/
|
||||
const setMemberCamera = (data) => {
|
||||
return window.lemon.conferenceControl.setMemberCamera(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加摄像头开关回调
|
||||
*/
|
||||
const addMemberCameraListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addMemberCameraListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除摄像头开关回调
|
||||
*/
|
||||
const removeMemberCameraListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeMemberCameraListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 静音成员
|
||||
*/
|
||||
const setMemberMute = (data) => {
|
||||
return window.lemon.conferenceControl.setMemberMute(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 禁言成员
|
||||
*/
|
||||
const setMemberProhibition = (data) => {
|
||||
return window.lemon.conferenceControl.setMemberProhibition(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 禁言全部成员
|
||||
*/
|
||||
const setAllMemberProhibition = (data) => {
|
||||
return window.lemon.conferenceControl.setAllMemberProhibition(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加禁言回调
|
||||
*/
|
||||
const addMemberProhibitionListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addMemberProhibitionListener(
|
||||
callback
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除禁言回调
|
||||
*/
|
||||
const removeMemberProhibitionListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeMemberProhibitionListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加全部禁言回调
|
||||
*/
|
||||
const addAllMemberProhibitionListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addAllMemberProhibitionListener(
|
||||
callback
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除全部禁言回调
|
||||
*/
|
||||
const removeAllMemberProhibitionListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeAllMemberProhibitionListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加静音回调
|
||||
*/
|
||||
const addMemberMuteListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addMemberMuteListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除静音回调
|
||||
*/
|
||||
const removeMemberMuteListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeMemberMuteListener(callback_id);
|
||||
};
|
||||
|
||||
/**
|
||||
* 指定成员讲话
|
||||
*/
|
||||
const assignMemberSpeaker = (data) => {
|
||||
return window.lemon.conferenceControl.assignMemberSpeaker(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加指定成员讲话回调
|
||||
*/
|
||||
const addAssignMemberSpeakListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addAssignMemberSpeakListener(
|
||||
callback
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除指定成员讲话回调
|
||||
*/
|
||||
const removeAssignMemberSpeakListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeAssignMemberSpeakListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 取消指定成员讲话
|
||||
*/
|
||||
const cancelMemberSpeak = (data) => {
|
||||
return window.lemon.conferenceControl.cancelMemberSpeak(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加取消成员讲话回调
|
||||
*/
|
||||
const addCancelMemberSpeakListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addCancelMemberSpeakListener(
|
||||
callback
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除取消成员讲话回调
|
||||
*/
|
||||
const removeCancelMemberSpeakListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeCancelMemberSpeakListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加成员讲话状态回调
|
||||
*/
|
||||
const addMemberSpeakingStateListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addMemberSpeakingStateListener(
|
||||
callback
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除成员讲话状态回调
|
||||
*/
|
||||
const removeMemberSpeakingStateListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeMemberSpeakingStateListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加语音激励回调
|
||||
*/
|
||||
const addVoiceStimulationListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addVoiceStimulationListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除语音激励回调
|
||||
*/
|
||||
const removeVoiceStimulationListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeVoiceStimulationListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 指定显示某路流
|
||||
*/
|
||||
const specifyMemberMediaStream = (data) => {
|
||||
return window.lemon.conferenceControl.specifyMemberMediaStream(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 指定显示多路流
|
||||
*/
|
||||
const specifyMembersMediaStream = (data) => {
|
||||
return window.lemon.conferenceControl.specifyMembersMediaStream(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取布局类型
|
||||
*/
|
||||
const getLayoutType = (data) => {
|
||||
return window.lemon.conferenceControl.getLayoutType(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取布局信息
|
||||
*/
|
||||
const getLayoutInfo = () => {
|
||||
return window.lemon.conferenceControl.getLayoutInfo();
|
||||
};
|
||||
|
||||
/**
|
||||
* 切换布局信息
|
||||
*/
|
||||
const setLayoutType = (data) => {
|
||||
return window.lemon.conferenceControl.setLayoutType(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加修改布局回调
|
||||
*/
|
||||
const addSetLayoutTypeListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addSetLayoutTypeListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除修改布局回调
|
||||
*/
|
||||
const removeSetLayoutTypeListener = (callback_id) => {
|
||||
return window.lemon.conferenceControl.removeSetLayoutTypeListener(
|
||||
callback_id
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加新增会议成员回调
|
||||
*/
|
||||
const addAddMemberListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addAddMemberListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除新增会议成员回调
|
||||
*/
|
||||
const removeAddMemberListener = (callback) => {
|
||||
return window.lemon.conferenceControl.removeAddMemberListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除删除会议成员回调
|
||||
*/
|
||||
const addDeleteMemberListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addDeleteMemberListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除删除会议成员回调
|
||||
*/
|
||||
const removeDeleteMemberListener = (callback) => {
|
||||
return window.lemon.conferenceControl.removeDeleteMemberListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取本地设备列表
|
||||
*/
|
||||
const getLocalDeviceList = () => {
|
||||
return window.lemon.conferenceControl.getLocalDeviceList();
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除设备列表变化回调
|
||||
*/
|
||||
const addDeviceListChangeListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addDeviceListChangeListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除设备列表变化回调
|
||||
*/
|
||||
const removeDeviceListChangeListener = (callback) => {
|
||||
return window.lemon.conferenceControl.removeDeviceListChangeListener(
|
||||
callback
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 屏幕共享
|
||||
*/
|
||||
const setShareScreenStatus = (data) => {
|
||||
return window.lemon.conferenceControl.setShareScreenStatus(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除屏幕共享回调
|
||||
*/
|
||||
const addScreenSharingListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addScreenSharingListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除屏幕共享回调
|
||||
*/
|
||||
const removeScreenSharingListener = (callback) => {
|
||||
return window.lemon.conferenceControl.removeScreenSharingListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 截屏操作
|
||||
*/
|
||||
const startScreenshot = (data) => {
|
||||
return window.lemon.conferenceControl.startScreenshot(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 创建录屏媒体对象
|
||||
*/
|
||||
const createMediaRecorder = (data) => {
|
||||
return window.lemon.conferenceControl.createMediaRecorder(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 开始视频广播
|
||||
*/
|
||||
const broadcastVideo = (data) => {
|
||||
return window.lemon.conferenceControl.broadcastVideo(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 停止视频广播
|
||||
*/
|
||||
const stopBroadcast = () => {
|
||||
return window.lemon.conferenceControl.stopBroadcast();
|
||||
};
|
||||
|
||||
/**
|
||||
* 设置语音激励开关
|
||||
*/
|
||||
const setVoiceStimulation = (data) => {
|
||||
return window.lemon.conferenceControl.setVoiceStimulation(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 扬声器流开关
|
||||
*/
|
||||
const setMuteCall = (data) => {
|
||||
return window.lemon.conferenceControl.setMuteCall(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 切换扬声器设备
|
||||
*/
|
||||
const changeAudioOutputDevice = (data) => {
|
||||
return window.lemon.conferenceControl.changeAudioOutputDevice(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加当前进行中会议数据变更回调
|
||||
*/
|
||||
const addActiveConfigChangeListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addActiveConfigChangeListener(
|
||||
callback
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除当前进行中会议数据变更回调
|
||||
*/
|
||||
const removeActiveConfigChangeListener = (data) => {
|
||||
return window.lemon.conferenceControl.removeActiveConfigChangeListener(data);
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加会议室锁定回调
|
||||
*/
|
||||
const addLockListener = (callback) => {
|
||||
return window.lemon.conferenceControl.addLockListener(callback);
|
||||
};
|
||||
|
||||
/**
|
||||
* 移除会议室锁定回调
|
||||
*/
|
||||
const removeLockListener = (data) => {
|
||||
return window.lemon.conferenceControl.removeLockListener(data);
|
||||
};
|
||||
|
||||
return {
|
||||
lockConference,
|
||||
addLockListener,
|
||||
removeLockListener,
|
||||
removeMemberJoinListener,
|
||||
addMemberJoinListener,
|
||||
removeMemberLeftListener,
|
||||
addMemberLeftListener,
|
||||
updateConferenceSubject,
|
||||
addUpdateSubjectListener,
|
||||
removeUpdateSubjectListener,
|
||||
addModifyMemberNickListener,
|
||||
removeModifyMemberNickListener,
|
||||
addInviteMemberListener,
|
||||
removeInviteMemberListener,
|
||||
inviteMember,
|
||||
inviteAllMember,
|
||||
kickoutMember,
|
||||
setMemberCamera,
|
||||
addMemberCameraListener,
|
||||
removeMemberCameraListener,
|
||||
addMemberProhibitionListener,
|
||||
removeMemberProhibitionListener,
|
||||
addAllMemberProhibitionListener,
|
||||
removeAllMemberProhibitionListener,
|
||||
setMemberMute,
|
||||
setMemberProhibition,
|
||||
setAllMemberProhibition,
|
||||
addMemberMuteListener,
|
||||
removeMemberMuteListener,
|
||||
assignMemberSpeaker,
|
||||
cancelMemberSpeak,
|
||||
addAssignMemberSpeakListener,
|
||||
removeAssignMemberSpeakListener,
|
||||
addMemberSpeakingStateListener,
|
||||
removeMemberSpeakingStateListener,
|
||||
addVoiceStimulationListener,
|
||||
removeVoiceStimulationListener,
|
||||
specifyMemberMediaStream,
|
||||
specifyMembersMediaStream,
|
||||
getLayoutType,
|
||||
getLayoutInfo,
|
||||
setLayoutType,
|
||||
addSetLayoutTypeListener,
|
||||
removeSetLayoutTypeListener,
|
||||
modifyMemberNickname,
|
||||
setMemberRole,
|
||||
addSetMemberRoleListener,
|
||||
removeSetMemberRoleListener,
|
||||
changeAudioInputDevice,
|
||||
changeVideoInputDevice,
|
||||
addCancelMemberSpeakListener,
|
||||
removeCancelMemberSpeakListener,
|
||||
addAddMemberListener,
|
||||
removeAddMemberListener,
|
||||
addDeleteMemberListener,
|
||||
getLocalDeviceList,
|
||||
removeDeleteMemberListener,
|
||||
addDeviceListChangeListener,
|
||||
removeDeviceListChangeListener,
|
||||
setShareScreenStatus,
|
||||
addScreenSharingListener,
|
||||
removeScreenSharingListener,
|
||||
startScreenshot,
|
||||
createMediaRecorder,
|
||||
stopBroadcast,
|
||||
broadcastVideo,
|
||||
setVoiceStimulation,
|
||||
removeActiveConfigChangeListener,
|
||||
addActiveConfigChangeListener,
|
||||
setMuteCall,
|
||||
changeAudioOutputDevice,
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user