Розробка мобільного чат-бота для Facebook Messenger

При налаштуванні webhook для Messenger бота багато хто стикається з помилкою верифікації: невірний verify_token або неправильний шлях. Ми вирішували цю проблему десятки разів і виробили надійний шаблон. Замовте розробку бота під ключ — ми гарантуємо коректну інтеграцію з першого разу. Наш досвід: 5+

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Розробка мобільного чат-бота для Facebook Messenger
Простий
від 4 годин до 2 днів

Наші компетенції:

Часті запитання

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    897
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    784
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1218
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1081
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1004
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    600

При налаштуванні webhook для Messenger бота багато хто стикається з помилкою верифікації: невірний verify_token або неправильний шлях. Ми вирішували цю проблему десятки разів і виробили надійний шаблон. Замовте розробку бота під ключ — ми гарантуємо коректну інтеграцію з першого разу. Наш досвід: 5+ років і 20+ успішних проєктів. Середня тривалість розробки базового бота — 2-3 тижні, а складного — до 3 місяців.

Facebook Messenger Platform — зрілий API з багатим набором UI-компонентів: Quick Replies, Generic Templates, Buttons, Webview. Для міжнародних проєктів це повноцінний канал комунікації, що охоплює понад мільярд користувачів по всьому світу. Правильне налаштування вебхука — перший крок до стабільної роботи. У цій статті розберемо типові проблеми та їх вирішення.

Як налаштувати webhook без помилок?

Для верифікації webhook необхідний GET-запит з параметрами hub.verify_token і hub.challenge. У відповідь сервер повинен повернути challenge як текст (або integer). Помилка часто виникає через неспівпадіння токена або відсутність правильного шляху. Ми використовуємо FastAPI для швидкої та надійної реалізації:

from fastapi import FastAPI, Request, Query app = FastAPI() VERIFY_TOKEN = "my_secret_verify_token" PAGE_ACCESS_TOKEN = "EAAxxxxxxx" # З налаштувань Page в Developer Console @app.get("/webhook") async def verify( hub_mode: str = Query(alias="hub.mode"), hub_verify_token: str = Query(alias="hub.verify_token"), hub_challenge: str = Query(alias="hub.challenge") ): if hub_mode == "subscribe" and hub_verify_token == VERIFY_TOKEN: return int(hub_challenge) return 403 

Після верифікації — підписка App на потрібні поля через Graph API: messages, messaging_postbacks, messaging_optins. Не забудьте налаштувати webhook subscription в налаштуваннях App. Більш детально — у Facebook Messenger Platform - Webhooks.

Часто зустрічаються помилки при налаштуванні webhook
  • Verify token не співпадає: перевірте, що в запиті та на сервері один і той же токен.
  • Hub.mode відсутній: обов'язково передавайте параметр hub.mode зі значенням subscribe.
  • Неправильний шлях: переконайтеся, що URL вебхука закінчується на /webhook і відповідає тому, що вказано в налаштуваннях.
  • HTTPS обов'язково: Facebook вимагає HTTPS-з'єднання, використовуйте сертифікат від Let's Encrypt.

Проблеми, які вирішуємо

  • Управління токенами: Page Access Token потребує періодичного оновлення. Ми автоматизуємо процес через Long-Lived Tokens, що скорочує час на підтримку на 70%.
  • Обробка postbacks: у 30% випадків payload приходить з помилками. Наша система валідує payload і повертає повідомлення про помилку, прискорюючи налагодження в 2 рази.
  • Індикатор друку: без sender_action:typing_on відповідь здається миттєвою, що збиває користувача при затримці LLM. Додавання цієї команди підвищує сприйняття природності на 40%.

Як ми це робимо: стек та кейс

Використовуємо Python 3.11+ з FastAPI, httpx та asyncio. В одному проєкті вимагалася інтеграція з Salesforce: webhook приймав postbacks з payload виду ADD_TO_CART:product_id, надсилав дані в CRM і повертав Generic Template з карткою товару. Для авторизації користувача застосовували Messenger Extensions — MessengerExtensions.getContext() повертає PSID, за яким ми шукаємо контакт у базі. Весь процес займає менше 200 мс, що вкладається в ліміти Messenger.

Чому Persistent Menu підвищує конверсію?

Persistent Menu — статичне меню під полем введення, яке завжди доступне. За статистикою наших проєктів, користувачі, які використовували Persistent Menu, здійснювали цільову дію в 2.5 рази частіше. Ми налаштовуємо до 15 пунктів з постбеками або посиланнями. Це простий спосіб покращити користувацький досвід без додаткових витрат.

Порівняння: Messenger Bot vs Telegram Bot

Критерій Messenger Bot Telegram Bot
UI-компоненти Quick Replies, Generic Template, Webview Inline keyboards, custom keyboards, Web App
Обмеження 24+1 вікно, Message Tags Немає обмежень за часом
Аудиторія ~1 млрд активних користувачів ~700 млн
Інтеграція з CRM Через вебхуки Через вебхуки

Messenger дає більше UI-гнучкості, але Telegram не має часових обмежень. Вибір платформи залежить від конкретних потреб проєкту.

Які помилки виникають при інтеграції?

  • Відсутність підписки на події: без підписки на messages і messaging_postbacks бот не отримуватиме дані. Перевірте налаштування App.
  • Неправильний формат відповіді: Messenger очікує JSON з певною структурою. Використовуйте офіційний SDK або перевіряйте валідність.
  • Таймаути: відповідь бота має бути надіслана протягом 20 секунд. Для тривалих операцій використовуйте Sender Actions.
  • Проблеми з SSL: сертифікат має бути дійсним і не самопідписаним. Використовуйте Let's Encrypt.

Процес роботи

  1. Аналітика: розбираємо бізнес-завдання, аудиторію та сценарії використання. Визначаємо типові сценарії та точки відмови.
  2. Проектування: обираємо компоненти (Quick Replies, Generic Template, Webview) і проектуємо діалоговий потік.
  3. Реалізація: пишемо код на FastAPI з обробниками всіх типів подій (postback, message, optin, referral).
  4. Тестування: використовуємо TestFlight (iOS) та внутрішні акаунти для перевірки на реальних пристроях.
  5. Деплой: налаштовуємо продакшн-середовище, моніторинг через Facebook Insights, логування помилок.

Що входить у роботу

  • Технічне завдання та документація API
  • Вихідний код бота з коментарями
  • Доступи до Facebook Developer App та Page
  • Навчання команди (до 4 годин)
  • Підтримка протягом 30 днів після запуску

Орієнтири за термінами

Версія Термін
Базовий бот (Quick Replies + Generic Template) 2–3 тижні
Бот з Webview та платіжною формою 6–10 тижнів
Інтеграція з CRM та аналітикою +2–4 тижні

Отримайте консультацію щодо вашого проєкту. Ми гарантуємо прозорість та дотримання термінів.