diff --git a/src/Types/Message.ts b/src/Types/Message.ts index da8bd4d..bc2810a 100644 --- a/src/Types/Message.ts +++ b/src/Types/Message.ts @@ -116,6 +116,8 @@ export type AnyMediaMessageContent = ( caption?: string gifPlayback?: boolean jpegThumbnail?: string + /** if set to true, will send as a `video note` */ + ptv?: boolean } & Mentionable & Contextable & Buttonable & Templatable & WithDimensions) | { audio: WAMediaUpload diff --git a/src/Utils/messages.ts b/src/Utils/messages.ts index a38e083..c48c0fd 100644 --- a/src/Utils/messages.ts +++ b/src/Utils/messages.ts @@ -32,6 +32,7 @@ type MediaUploadData = { media: WAMediaUpload caption?: string ptt?: boolean + ptv?: boolean seconds?: number gifPlayback?: boolean fileName?: string @@ -254,6 +255,11 @@ export const prepareWAMessageMedia = async( ) }) + if(uploadData.ptv) { + obj.ptvMessage = obj.videoMessage + delete obj.videoMessage + } + if(cacheableKey) { logger?.debug({ cacheableKey }, 'set cache') options.mediaCache!.set(cacheableKey, WAProto.Message.encode(obj).finish())