MCPcopy
hub / github.com/42wim/matterbridge / PostVideoMessage

Method PostVideoMessage

bridge/whatsappmulti/whatsapp.go:281–311  ·  view source on GitHub ↗

Post a video message from the bridge to WhatsApp

(msg config.Message, filetype string)

Source from the content-addressed store, hash-verified

279
280// Post a video message from the bridge to WhatsApp
281func (b *Bwhatsapp) PostVideoMessage(msg config.Message, filetype string) (string, error) {
282 groupJID, _ := types.ParseJID(msg.Channel)
283
284 fi := msg.Extra["file"][0].(config.FileInfo)
285
286 caption := msg.Username + fi.Comment
287
288 resp, err := b.wc.Upload(context.Background(), *fi.Data, whatsmeow.MediaVideo)
289 if err != nil {
290 return "", err
291 }
292
293 var message proto.Message
294
295 message.VideoMessage = &proto.VideoMessage{
296 Mimetype: &filetype,
297 Caption: &caption,
298 MediaKey: resp.MediaKey,
299 FileEncSha256: resp.FileEncSHA256,
300 FileSha256: resp.FileSHA256,
301 FileLength: goproto.Uint64(resp.FileLength),
302 Url: &resp.URL,
303 }
304
305 b.Log.Debugf("=> Sending %#v as a video", msg)
306
307 ID := whatsmeow.GenerateMessageID()
308 _, err = b.wc.SendMessage(context.TODO(), groupJID, &message, whatsmeow.SendRequestExtra{ID: ID})
309
310 return ID, err
311}
312
313// Post audio inline
314func (b *Bwhatsapp) PostAudioMessage(msg config.Message, filetype string) (string, error) {

Callers 1

SendMethod · 0.95

Calls 1

SendMessageMethod · 0.80

Tested by

no test coverage detected