createVideoMessageFromFullPath
功能介绍
说明
创建视频消息,由SDK内部根据绝对路径提取视频信息并创建视频消息。
- iOS
- Android
- Flutter
- uni-app
- Browser/Electron/MiniProgram
- React-Native
- Unity
函数原型
Future<Message> createVideoMessageFromFullPath({
required String videoPath,
required String videoType,
required int duration,
required String snapshotPath,
String? operationID,
})
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
videoPath | String | 是 | 绝对路径 |
videoType | String | 是 | 视频类型 |
duration | int | 是 | 时长 |
snapshotPath | String | 是 | 视频封面路径 |
返回结果
名称 | 类型 | 描述 |
---|---|---|
~ | Message | 成功返回 |
代码示例
Message msg = await OpenIM.iMManager.messageManager.createVideoMessageFromFullPath(videoPath: videoPath, videoType: videoType, duration: duration, snapshotPath: snapshotPath);
//todo
函数原型
+ (OIMMessageInfo *)createVideoMessageFromFullPath:(NSString *)videoPath
videoType:(NSString *)videoType
duration:(NSInteger)duration
snapshotPath:(NSString *)snapshotPath;
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
videoPath | NSString | 是 | 绝对路径 |
videoType | NSString | 是 | 视频类型 |
duration | NSInteger | 是 | 时长 |
snapshotPath | NSString | 是 | 视频封面路径 |
返回结果
名称 | 类型 | 描述 |
---|---|---|
message | OIMMessageInfo | 成功返回 |
代码示例
OIMMessageInfo *message = [OIMMessageInfo createVideoMessageFromFullPath:@"" videoType:@"" duration:1 snapshotPath:@""];
函数原型
public Message createVideoMessageFromFullPath(String videoPath, String videoType, long duration, String snapshotPath)
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
videoPath | String | 是 | 绝对路径 |
videoType | String | 是 | 视频类型 |
duration | int | 是 | 时长 |
snapshotPath | String | 是 | 视频封面路径 |
返回结果
名称 | 类型 | 描述 |
---|---|---|
~ | Message | 成功返回 |
代码示例
Message Message= OpenIMClient.getInstance().messageManager. createVideoMessageFromFullPath( videoPath, videoType, duration, snapshotPath)
注意
仅在electron中使用ffi调用时支持
函数原型
IMSDK.createVideoMessageFromFullPath({
videoPath: string,
videoType: string,
duration: number,
snapshotPath: string,
}, operationID?: string): Promise<WsResponse<MessageItem>>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
videoPath | string | 是 | 视频文件绝对路径 |
videoType | string | 是 | 视频类型,一般为后缀名 |
duration | number | 是 | 时长 |
snapshotPath | string | 是 | 视频封面绝对路径 |
返回结果
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<WsResponse<MessageItem>> | 调用成功回调 |
Promise.catch() | Promise<WsResponse> | 调用失败回调 |
代码示例
import { getWithRenderProcess } from '@openim/electron-client-sdk/lib/render';
const { instance: IMSDK } = getWithRenderProcess();
IMSDK.createVideoMessageFromFullPath({
videoPath: 'file://...',
videoType: 'mp4',
duration: 9,
snapshotPath: 'file://...',
})
.then(({ data }) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});
函数原型
IMSDK.asyncApi('createVideoMessageFromFullPath', operationID: string, {
videoPath: string,
videoType: string,
duration: number,
snapshotPath: string,
}): Promise<MessageItem>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 |
videoPath | string | 是 | 视频文件绝对路径 |
videoType | string | 是 | 视频类型,一般为后缀名 |
duration | number | 是 | 时长 |
snapshotPath | string | 是 | 视频封面绝对路径 |
返回结果
通过
openim-uniapp-polyfill
包将函数 Promise 化,调用时需要使用then
和catch
判断并处理成功和失败回调。
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<MessageItem> | 调用成功回调 |
Promise.catch() | Promise<CatchResponse> | 调用失败回调 |
代码示例
import IMSDK from 'openim-uniapp-polyfill';
IMSDK.asyncApi('createVideoMessageFromFullPath', IMSDK.uuid(), {
videoPath: '',
videoType: 'mp4',
duration: 12,
snapshotPath: '',
})
.then((data) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});
函数原型
OpenIMSDKRN.createVideoMessageFromFullPath({
videoPath: string,
videoType: string,
duration: number,
snapshotPath: string,
}, operationID: string): Promise<MessageItem>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
videoPath | string | 是 | 视频文件绝对路径 |
videoType | string | 是 | 视频类型,一般为后缀名 |
duration | number | 是 | 时长 |
snapshotPath | string | 是 | 视频封面绝对路径 |
operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 |
返回结果
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<MessageItem> | 调用成功回调 |
Promise.catch() | Promise<CatchResponse> | 调用失败回调 |
代码示例
import OpenIMSDKRN from "open-im-sdk-rn";
OpenIMSDKRN.createVideoMessageFromFullPath({
videoPath: '',
videoType: 'mp4',
duration: 12,
snapshotPath: '',
}, 'operationID')
.then((data) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});
函数原型
public static Message CreateVideoMessageFromFullPath(string videoFullPath, string videoType, long duration, string snapshotFullPath);
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
videoPath | string | 是 | 绝对路径 |
videoType | string | 是 | 视频类型 |
duration | long | 是 | 时长 |
snapshotFullPath | string | 是 | 视频封面路径 |
返回结果
名称 | 类型 | 描述 |
---|---|---|
message | Message | 成功返回 |
代码示例
var msg = IMSDK.CreateVideoMessageFromFullPath(videoFullPath,videoType,duration,snapshotFullPath);