WhatsApp-Videonachrichten
Eine Videonachricht enthält eine öffentliche URL, die WhatsApp beim Senden abruft, mit einer optionalen Beschriftung darunter.
Video senden
Setzen Sie video.url:
const msg = await bird.whatsapp.send({
to: "+16505551234",
from: "+13124495648",
video: { url: "https://cdn.example.com/unboxing.mp4" },
});
console.log(msg.id, msg.status);msg = client.whatsapp.send(
to="+16505551234",
from_="+13124495648",
video={"url": "https://cdn.example.com/unboxing.mp4"},
)
print(msg.id, msg.status)package main
import (
"context"
"fmt"
"log"
"os"
bird "github.com/messagebird/bird-sdk-go"
"github.com/messagebird/bird-sdk-go/option"
)
func main() {
client, err := bird.NewClient(option.WithAPIKey(os.Getenv("BIRD_API_KEY")))
if err != nil {
log.Fatal(err)
}
msg, err := client.Whatsapp.Send(context.Background(), bird.WhatsappSendParams{
To: "+16505551234",
From: "+13124495648",
Video: &bird.WhatsAppVideoSend{Url: "https://cdn.example.com/unboxing.mp4"},
})
if err != nil {
log.Fatal(err)
}
fmt.Println(msg.Id, *msg.Status)
}$video = (new WhatsAppMessageSendRequestVideo())
->setUrl('https://cdn.example.com/unboxing.mp4');
$message = $bird->whatsapp->send(
to: '+16505551234',
from: '+13124495648',
video: $video,
);
echo $message->getId(), ' ', $message->getStatus();bird whatsapp send \
--from +13124495648 \
--to +16505551234 \
--video https://cdn.example.com/unboxing.mp4{
"name": "whatsapp_send",
"arguments": {
"from": "+13124495648",
"to": "+16505551234",
"video": {
"url": "https://cdn.example.com/unboxing.mp4"
}
}
}curl -X POST "https://us1.platform.bird.com/v1/whatsapp/messages" \
-H "Authorization: Bearer $BIRD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+16505551234",
"from": "+13124495648",
"video": {
"url": "https://cdn.example.com/unboxing.mp4"
}
}'Die vollständige Struktur ergänzt ein optionales caption:
Codebeispiel
{
"to": "+16505551234",
"from": "+13124495648",
"video": {
"url": "https://cdn.example.com/unboxing.mp4",
"caption": "How to set it up"
}
}video hat kein filename-Feld. from ist bei jeder Service-Nachricht erforderlich: eine Nummer, die Ihr Workspace besitzt, keine von Bird verwaltete.
Limits
| Feld | Grenzwert | Geprüft von |
|---|---|---|
| Dateigröße | 16 MB | nur WhatsApp, beim Abruf (async) |
| Format | MP4-Container, H.264-Video, AAC-Audio | nur WhatsApp, beim Abruf (async) |
| caption | bis zu 1024 Zeichen | Bird, bei Annahme (422) |
| url | absolut, https, hat einen Host, kein rohes Leerzeichen | Bird, bei Annahme (422) |
Bird prüft die URL-Struktur und die Länge der Beschriftung, bevor etwas eingereiht wird. Dateigröße, Container und Codec werden nicht geprüft; das kann nur der eigene Abruf von WhatsApp beim Senden. Siehe im Hub Medien per URL senden und Wenn Medien fehlschlagen.
Ein eingehendes Video lesen
Ein eingehendes Video enthält dasselbe video-Objekt, zusätzlich ein id und mime_type, die Bird beim Abruf der Datei ermittelt hat. Beide fehlen bei einem ausgehenden Rücklesen, da Bird die gesendete Datei nie selbst abgerufen hat. Siehe WhatsApp-Video empfangen für den vollständigen eingehenden Lesevorgang, die whatsapp.received-Payload und worauf Sie achten sollten.
Limits und Fehlerfälle
- Das Kundenservice-Fenster muss offen sein. Video ist eine Service-Nachricht und kann nur innerhalb eines offenen Fensters zugestellt werden; siehe im Hub Kundenservice-Fenster.
- Bird lehnt http ab; WhatsApp selbst würde es abrufen. Siehe im Hub Medien per URL senden für die vollständige Strukturprüfung.
- Ein abgelehnter Abruf wird trotzdem berechnet. Siehe im Hub Wenn Medien fehlschlagen für media_rejected und die Tatsache, dass bei Fehlschlag trotzdem Kosten anfallen. Der Ablehnungstext von WhatsApp für Video wurde nicht unabhängig gemessen wie der für Bilder; betrachten Sie die Zuordnung daher als per Analogie abgeleitet, nicht als pro Ursache bestätigt.
- WhatsApp speichert eine abgerufene URL etwa 10 Minuten im Cache. Wird dieselbe URL innerhalb dieses Zeitfensters erneut gesendet, wird der erste Abruf wiederverwendet; ändern Sie die URL, um einen neuen Abruf zu erzwingen.
- Ein animiertes GIF ist kein eigener Typ. WhatsApp hat keinen gif-Nachrichtentyp; ein animiertes GIF, das Sie senden, kommt beim Empfänger an und würde auch bei Ihnen eingehend als gewöhnliches video mit einem MP4-MIME-Typ ankommen.
Nächste Schritte
- WhatsApp-Service-Nachrichten: das Kundenservice-Fenster und das Modell, das alle Service-Nachrichten teilen
- Bilder: dieselbe Struktur für ein Foto oder eine Grafik
- Audio: für eine Sprachnachricht oder einen Audioclip
- WhatsApp-Nachrichten senden: der Request-Envelope, das 202-Modell und sicheres erneutes Versuchen
Verwandte Ressourcen
Weiter mit der Dokumentation, Anleitungen und Beispielen zu diesem Thema. Die Ressourcen sind auf Englisch.
Anleitung ansehenConnecting WhatsApp to Bird: from buying a number to a live channelDas Konzept verstehenWhat is the 24-hour customer service window on WhatsApp?Das Tool verwendenWhatsApp message builderDie Funktion erkundenWhatsApp
Übung ausprobieren und ein Implementierungs-Briefing erhalten