createSoundMessageByFile
功能介绍
说明
根据文件对象创建音频消息。
注意
仅 web 端支持
- Browser/Electron/MiniProgram
函数原型
IMSDK.createSoundMessageByFile({
uuid: string;
soundPath: string;
sourceUrl: string;
dataSize: number;
duration: number;
soundType: string;
file: File;
}, operationID?: string): Promise<WsResponse<MessageItem>>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
soundPath | string | 是 | 文件绝对路径,如果没有传空字符即可 |
duration | number | 是 | 录音时长 |
uuid | string | 是 | 文件唯一 ID |
sourceUrl | string | 是 | 录音下载地址,自行上文件并通过sendMessageNotOss 发送时,需要传入远程 url,否则为空字符串 |
dataSize | string | 是 | 文件大小 |
soundType | string | 是 | 文件类型,一般为后缀名 |
file | File | 是 | 文件对象 |
返回结果
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<WsResponse<MessageItem>> | 调用成功回调 |
Promise.catch() | Promise<WsResponse> | 调用失败回调 |
代码示例
import { getSDK } from '@openim/wasm-client-sdk';
const IMSDK = getSDK();
// use in electron with ffi
// import { getWithRenderProcess } from '@openim/electron-client-sdk/lib/render';
// const { instance: IMSDK } = getWithRenderProcess();
// use in mini program
// import { OpenIMSDK } from 'open-im-sdk';
// const IMSDK = new OpenIMSDK();
IMSDK.createSoundMessageByFile({
soundPath: soundFile.path,
duration: 6,
uuid: 'uuid',
sourceUrl: '',
dataSize: soundFile.size,
soundType: soundFile.type,
file: soundFile,
})
.then(({ data }) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});