Sign inGet Started

Nieobsługiwane typy wiadomości WhatsApp

Niektóre wiadomości działają w aplikacji WhatsApp, ale nie można ich odczytać przez API. Bird rejestruje je jako odebrane wiadomości z polem unsupported. Możesz zobaczyć, kto wysłał wiadomość i kiedy, ale nie możesz odczytać jej treści w dashboardzie ani przez API. Poproś nadawcę o ponowne przesłanie informacji jako tekst lub inny obsługiwany typ wiadomości.

Dlaczego odebrana wiadomość może zawierać błąd

Meta może dołączyć błąd 131051 do powiadomienia o wiadomości przychodzącej, gdy WhatsApp Cloud API nie obsługuje danej treści. Funkcja może działać w aplikacji WhatsApp, ale być niedostępna przez Cloud API.

Bird rejestruje to powiadomienie z direction: inbound i status: received. Pole last_error wiadomości może zawierać meta_error_code: "131051", mimo że Bird nie próbował jej wysłać. W tym przypadku błąd opisuje niedostępną treść przychodzącą. Nie oznacza nieudanego wysłania wychodzącego.

Znormalizowany last_error.code może odczytać undeliverable w tym odebranym rekordzie. Sprawdź direction, status i last_error.meta_error_code razem, zanim potraktujesz rekord jako błąd dostarczenia.

Meta używa też 131060 dla wiadomości, która jest obecnie niedostępna. Może to nastąpić, gdy ktoś po raz pierwszy pisze do firmy za pomocą połączonego numeru aplikacji WhatsApp Business. Ma to inne znaczenie niż błąd nieobsługiwanej treści 131051. Zobacz dokumentację Meta dotyczącą nieobsługiwanych wiadomości, aby poznać te powiadomienia.

Odczytaj typ wiadomości

Pole unsupported.type identyfikuje treść tak precyzyjnie, jak pozwala na to powiadomienie:

  • Gdy Meta podaje unsupported.type, Bird zachowuje jego wartość, na przykład poll_creation, pin lub edit.
  • Gdy Meta pomija unsupported.type, Bird zachowuje typ najwyższego poziomu wiadomości w tym polu. Wartość taka jak unsupported lub unknown nie identyfikuje akcji wykonanej przez nadawcę.
  • Gdy Meta dostarcza treść, której API w Bird nie modeluje, Bird rejestruje jej typ również tutaj, na przykład order lub system.

Nazwa typu nie zawiera brakującej treści. Na przykład poll_creation nie udostępnia pytania ani opcji wyboru, a edit nie udostępnia tekstu zastępczego. Zachowuj nierozpoznane wartości typów przy zapisywaniu wiadomości, aby Twoja integracja mogła obsłużyć nowe typy.

Bird obsługuje obrazy, odpowiedzi przyciskami, odpowiedzi z list i reakcje. Nieobsługiwane powiadomienie z jedną z tych nazw dotyczy tego konkretnego powiadomienia, a nie oznacza, że cała funkcja jest nieobsługiwana. Zobacz odbieranie obrazów, odpowiedzi interaktywne i webhooki reakcji.

Obsługa odebranego webhooka

Nieobsługiwana wiadomość emituje whatsapp.received z data.unsupported.type. Odebrany webhook nie zawiera last_error rekordu wiadomości; pobierz wiadomość przez API, gdy potrzebujesz tych informacji diagnostycznych.

Obsłuż unsupported jawnie przed przetwarzaniem treści. Pokaż, że treść jest niedostępna, zapisz typ i potwierdź webhook odpowiedzią 2xx, gdy już go obsłużysz. Ponowne przetworzenie tego samego powiadomienia nie odzyska brakującej treści. Zobacz dostarczanie webhooków, aby poznać zasady potwierdzania i ponawiania.

Rekord pozostaje widoczny w dzienniku WhatsApp. Bird traktuje go jako wiadomość przychodzącą na potrzeby okna obsługi klienta.

Przykłady do wypróbowania

Oto przykłady wartości unsupported.type. Jeśli Twoja aplikacja WhatsApp oferuje odpowiednią akcję w testowanej konwersacji, możesz ją wykonać i sprawdzić powstały rekord:

Wiadomość lub akcjaunsupported.type
Utwórz ankietępoll_creation
Zagłosuj w ankieciepoll_update
Przypnij wiadomośćpin
Edytuj wysłaną wiadomośćedit
Zachowaj znikającą wiadomość w czaciekeep_in_chat
Wyślij zaproszenie do grupygroup_invite
Niezidentyfikowana wiadomośćunknown

Dostępność zależy od aplikacji, konwersacji i konta. Możesz otrzymać typ ogólny albo w ogóle nie otrzymać powiadomienia o wiadomości przychodzącej dla danej akcji. Porównaj nadawcę, znacznik czasu i unsupported.type z wykonaną przez siebie akcją. Jeśli typ jest ogólny, nie da się na podstawie samego rekordu zidentyfikować akcji.

Następne kroki