VideoMessage.create constructor

VideoMessage.create(
  1. String path,
  2. String thumbnail,
  3. int durationInSec, {
  4. String? roomId,
  5. String? caption,
  6. MessageExtra? extra,
  7. String? id,
  8. String? senderId,
  9. String? replyId,
  10. ChatValueTimestamp? createdAt,
})

Implementation

factory VideoMessage.create(
  String path,
  String thumbnail,
  int durationInSec, {
  String? roomId,
  String? caption,
  MessageExtra? extra,
  String? id,
  String? senderId,
  String? replyId,
  ChatValueTimestamp? createdAt,
}) {
  senderId ??= RoomManager.i.me;
  if (senderId.isEmpty) return const VideoMessage.empty();
  id ??= ChatHelper.generateMessageId();
  createdAt ??= ChatValueTimestamp.now();
  return VideoMessage._(
    id: id,
    roomId: roomId ?? '',
    senderId: senderId,
    createdAt: createdAt,
    updatedAt: createdAt,
    statuses: {senderId: MessageStatus.sending},
    replyId: replyId,
    extra: extra ?? {},
    caption: caption,
    durationInSec: durationInSec,
    thumbnail: thumbnail,
    url: path,
  );
}