Zaloguj sięRozpocznij bezpłatny okres próbny
Meta Tech Provider

Odpowiadaj na wiadomości WhatsApp za pomocą chatflow we Flowise

Ustaw jako cel webhooka numeru niewielki odbiornik, na przykład przepływ w n8n lub trasę we własnym kodzie. Przekazuje on każdą wiadomość do Prediction API Flowise, używając numeru nadawcy jako identyfikatora sesji, a potem odsyła odpowiedź przez Cloud API z tokenem numeru i identyfikatorem numeru telefonu.

POST /api/v1/prediction/:id

Endpoint Flowise, który wysyła wiadomość do przepływu i zwraca jego odpowiedź.

Headers

Custom MCP we Flowise przez Streamable HTTP przyjmuje adres URL i nagłówki, na przykład token typu bearer.

24 hours

Po zamknięciu tego okna do klienta można wysyłać tylko wcześniej zatwierdzone szablony wiadomości.

Dlaczego Flowise potrzebuje czegoś przed sobą?

Ponieważ webhook Meta i API Flowise używają różnych formatów. Meta weryfikuje adres docelowy żądaniem GET, które musi zwrócić hub.challenge jako surową treść odpowiedzi, a następnie dostarcza każdą wiadomość jako zagnieżdżony JSON w żądaniu POST. Prediction API Flowise oczekuje żądania POST na /api/v1/prediction/ z identyfikatorem przepływu na końcu oraz polem question. Żadna ze stron nie dostosuje się do drugiej, więc tłumaczy odbiornik.

Odbiornikiem może być węzeł Webhook w n8n, trasa w Pythonie lub Node albo dowolna funkcja serverless. Odpowiada na weryfikacyjne żądanie GET, sprawdza długi losowy sekret umieszczony w adresie URL webhooka, od razu odsyła Meta odpowiedź 200, a dopiero potem wykonuje pracę. Sekret w adresie URL to uwierzytelnianie, które tu działa: Meta podpisuje dostawy sekretem aplikacji Tech Provider, który nigdy nie jest udostępniany, więc po Twojej stronie nie da się zweryfikować nagłówka X-Hub-Signature-256.

Jak odbiornik powinien wywoływać Prediction API?

Z tekstem klienta jako question i numerem WhatsApp klienta jako sesją. Flowise przyjmuje overrideConfig w każdym żądaniu, a sessionId w nim sprawia, że węzły pamięci prowadzą jedną rozmowę na osobę, zamiast mieszać wszystkich w jednym wątku. Numer nadawcy z payloadu webhooka to do tego stabilny, naturalny klucz.

Jeśli chatflow jest chroniony kluczem API, odbiornik wysyła go jako token typu bearer. Ustaw streaming na false, chyba że odbiornik potrafi złożyć strumień, ponieważ WhatsApp dostarcza jedną gotową wiadomość, a nie token po tokenie.

Odpowiedź wychodzi jako wiadomość tekstowa Cloud API z tego samego numeru. Jest to bezpłatne i dozwolone w 24-godzinnym oknie otwartym przez wiadomość klienta. Wszystko, co przepływ chce wysłać później, na przykład przypomnienie, musi być zatwierdzonym szablonem.

Prediction request the receiver sends for one WhatsApp message
POST https://your-flowise-host/api/v1/prediction/<flow-id>
Authorization: Bearer <flowise-api-key>
Content-Type: application/json

{
  "question": "do you have anything friday?",
  "streaming": false,
  "overrideConfig": { "sessionId": "14155550188" }
}

Czy agent Flowise może korzystać z serwera MCP EasyCoexistence?

Obecnie nie. Custom MCP we Flowise łączy się z serwerem Streamable HTTP za pomocą adresu URL i zestawu nagłówków, zwykle statycznego tokenu typu bearer przechowywanego w zmiennej Flowise. Serwer MCP EasyCoexistence uwierzytelnia przez OAuth, z logowaniem w przeglądarce i tokenami, które sam wydaje, więc nie ma statycznego klucza, który można wstawić do nagłówka.

Działający podział polega na tym, że przepływ decyduje, a odbiornik wysyła. Przepływ zwraca tekst do wysłania albo nazwę szablonu, gdy klient milczy od ponad doby, a odbiornik wykonuje wywołanie Cloud API z tokenem numeru. Dzięki temu token nigdy nie trafia do Flowise, a reguła 24 godzin jest egzekwowana w kodzie przez sprawdzenie, kiedy kontakt ostatnio pisał, zamiast polegać na modelu, który może o niej zapomnieć.

Wiadomości przychodzące nadal docierają wyłącznie przez webhook, niezależnie od sposobu wysyłania.

Typowe błędy

  • Pominięcie sessionId. Wtedy wszyscy klienci dzielą jedną pamięć, a dane jednej osoby mogą pojawić się w odpowiedzi dla innej.
  • Czekanie na Flowise przed odpowiedzią dla Meta. Wolna odpowiedź 200 jest ponawiana, więc ta sama wiadomość zostaje przetworzona dwa razy.
  • Pozwolenie, by przepływ wysłał dowolny tekst dobę później. Poza oknem Meta odrzuca go z błędem 131047.
Z EasyCoexistence zrobisz to

Połącz numer na easycoexistence.com, wskaż swój odbiornik jako cel webhooka, a token i identyfikator numeru telefonu odczytaj w panelu. Od US$ 9 za numer miesięcznie, w miarę dodawania numerów spada do US$ 1, a pierwsze 3 dni są bezpłatne.

Najczęściej zadawane pytania

Czy Flowise ma węzeł WhatsApp?

Nie ma go w dokumentacji. Dostęp odbywa się przez Prediction API, dlatego między Meta a przepływem stoi odbiornik.

Czy odbiornikiem może być n8n?

Tak. Węzeł Webhook odbiera wiadomość, węzeł HTTP Request wywołuje Flowise, a kolejny węzeł HTTP Request wysyła odpowiedź przez Cloud API.

Jak zatrzymać bota, gdy człowiek odpowie z telefonu?

Obserwuj zdarzenia echo. Odpowiedź wysłana z aplikacji WhatsApp Business trafia do odbiornika, który może wstrzymać przepływ dla tego kontaktu.

Czy EasyCoexistence przechowuje rozmowę?

Nie. Meta dostarcza wiadomości bezpośrednio do Twojego odbiornika. Flowise zachowuje tylko to, co skonfigurowano w jego węzłach pamięci.

Czytaj dalej

Gotowy, aby zacząć?

Skonfiguruj WhatsApp Coexistence w kilka minut, nie miesięcy. Aplikacja nadal działa na telefonie.

Rozpocznij bezpłatny okres próbny

Zweryfikowano w

Flowise na WhatsApp, oficjalne Cloud API