Bericht als gelezen markeren
Bevestig het WhatsApp-bericht van een contact wanneer je het hebt gelezen of bent begonnen met het afhandelen van het verzoek. Je kunt ook een typindicator tonen terwijl je een antwoord voorbereidt.
Vereisten
Je hebt een API-sleutel nodig met WhatsApp-schrijfrechten en het Bird-bericht-ID (wam_…) van een bericht dat je werkruimte heeft ontvangen. Gebruik data.whatsapp_id uit de whatsapp.received-webhook, of de id van het bericht uit het WhatsApp-log.
Vervang het voorbeeld-bericht-ID door het ID van een bericht dat je werkruimte heeft ontvangen. Initialiseer de client voor je taal met de installatiehandleiding voor TypeScript, Python, Go of PHP SDK. Voor CLI-voorbeelden installeer en authenticeer je de CLI met WhatsApp-schrijftoegang. Gebruik de API-host voor je werkruimteregio in cURL-verzoeken.
1. Markeer het ontvangen bericht als gelezen
Roep Bericht als gelezen markeren aan met het ontvangen bericht-ID. WhatsApp markeert ook eerdere berichten in hetzelfde gesprek als gelezen, dus kies het bericht dat aangeeft tot waar je hebt gelezen.
const acknowledgement = await bird.whatsapp.markRead("wam_01krdgeqcxet5s7t44vh8rt9mg", {});
console.log(acknowledgement.typing_indicator);ack = client.whatsapp.mark_read("wam_01krdgeqcxet5s7t44vh8rt9mg")
print(ack.typing_indicator)ack, err := client.Whatsapp.MarkRead(context.Background(), "wam_01krdgeqcxet5s7t44vh8rt9mg", bird.WhatsappMarkReadParams{})
if err != nil {
log.Fatal(err)
}
fmt.Println(ack.TypingIndicator)use MessageBird\Wire\Model\WhatsAppReadReceiptRequest;
$ack = $bird->whatsapp->markRead(
'wam_01krdgeqcxet5s7t44vh8rt9mg',
new WhatsAppReadReceiptRequest(),
);
var_dump($ack->getTypingIndicator());bird whatsapp mark-read wam_01krdgeqcxet5s7t44vh8rt9mgcurl -X POST "https://us1.platform.bird.com/v1/whatsapp/messages/wam_01krdgeqcxet5s7t44vh8rt9mg/read" \
-H "Authorization: Bearer $BIRD_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'Een succesvol verzoek retourneert 202 met typing_indicator: false. De bevestiging is geaccepteerd voor verwerking; het antwoord bevestigt niet dat het contact het heeft gezien. Leesbevestigingen genereren geen factureerbaar uitgaand bericht.
2. Toon typindicator terwijl je een antwoord voorbereidt
Om het bericht als gelezen te markeren en de typindicator te tonen, geef je typing_indicator: true mee in hetzelfde verzoek:
await bird.whatsapp.markRead("wam_01krdgeqcxet5s7t44vh8rt9mg", {
typing_indicator: true,
});ack = client.whatsapp.mark_read("wam_01krdgeqcxet5s7t44vh8rt9mg", typing_indicator=True)
print(ack.typing_indicator)ack, err := client.Whatsapp.MarkRead(context.Background(), "wam_01krdgeqcxet5s7t44vh8rt9mg", bird.WhatsappMarkReadParams{
TypingIndicator: bird.Ptr(true),
})
if err != nil {
log.Fatal(err)
}
fmt.Println(ack.TypingIndicator)$ack = $bird->whatsapp->markRead(
'wam_01krdgeqcxet5s7t44vh8rt9mg',
(new WhatsAppReadReceiptRequest())->setTypingIndicator(true),
);
var_dump($ack->getTypingIndicator());bird whatsapp mark-read wam_01krdgeqcxet5s7t44vh8rt9mg --typing-indicator=truecurl -X POST "https://us1.platform.bird.com/v1/whatsapp/messages/wam_01krdgeqcxet5s7t44vh8rt9mg/read" \
-H "Authorization: Bearer $BIRD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"typing_indicator": true}'WhatsApp wist de indicator wanneer je een bericht verstuurt of na 25 seconden. De aanroep herhalen is veilig. Om de typindicator te vernieuwen, laat je Idempotency-Key weg of gebruik je een nieuwe sleutel; het opnieuw afspelen van een eerder verzoek vernieuwt de indicator niet.
3. Controleer het ontvangen bericht
Haal het bericht op om read_at te inspecteren. Nadat WhatsApp de bevestiging heeft geaccepteerd, kan het ontvangen bericht dit tijdstempel bevatten terwijl het zijn received-status behoudt. Er is geen aparte bevestigingsresource of bezorgingswebhook om te volgen.
Probleemoplossing
- 404 (E15071): Controleer het bericht-ID en de werkruimte. Bird kan een bericht voor bevestiging oplossen gedurende 15 dagen; een ouder bericht kan niet als gelezen worden gemarkeerd via deze bewerking.
- 422 (E15074): Gebruik een inkomend bericht dat je werkruimte kan bevestigen. Een uitgaand bericht is geen geldig doel.
- 503 (E15073): Probeer opnieuw na een tijdelijke fout bij het oplossen van het bericht.
Vervolgstappen
Gerelateerde bronnen
Ga verder met de documentatie, gidsen en voorbeelden voor dit onderwerp. De bronnen zijn in het Engels.
Bekijk de gidsConnecting WhatsApp to Bird: from buying a number to a live channelBegrijp het conceptWhat is the 24-hour customer service window on WhatsApp?Gebruik de toolWhatsApp message builderOntdek de mogelijkheidWhatsApp
Probeer de oefening en ontvang een implementatieoverzicht