Skip to content

Подключение Avito

Avito — встроенный канал поддержки на базе Avito Messenger API. Бот принимает входящие сообщения по объявлениям через вебхук и создаёт для каждого диалога отдельную тему (топик) в Telegram-группе поддержки (или обращение в разделе "Чаты", если группа не настроена). Ответы менеджеров доставляются пользователю обратно в Avito.

Эндпоинт вебхука: POST /api/avito/bot/{secret}

Предварительные требования

Перед подключением убедитесь, что проект развёрнут по одной из инструкций:

Платный канал

Avito — платный модуль. Дополнительно потребуется активная подписка Avito «API мессенджера» — без неё Avito принимает регистрацию вебхука, но никогда не вызывает его, и сообщения не будут доставляться ни вебхуком, ни через API.

1. Создание OAuth-приложения в кабинете Avito

  1. Откройте личный кабинет Avito: Профиль → Настройки → API.
  2. Создайте новое OAuth-приложение с доступом к Messenger API.
  3. Скопируйте Client ID и Client Secret — они понадобятся на следующем шаге.

2. Настройка интеграции

  1. Перейдите в раздел "Настройки" -> "Интеграции".
  2. Нажмите на карточку "Avito".
  3. Заполните поля:
    • Client ID — идентификатор OAuth-приложения Avito;
    • Client Secret — секрет OAuth-приложения (хранится в зашифрованном виде);
    • Base URL — необязательно, по умолчанию https://api.avito.ru;
    • Секретный ключ Webhook — необязательно, но рекомендуется: строка, которая встраивается в URL вебхука для проверки входящих запросов (например, openssl rand -hex 32). Если оставить поле пустым, эндпоинт будет принимать запросы без проверки.
  4. Нажмите "Сохранить" — подключение проверяется (запрашивается токен и аккаунт Avito). Если проверка не пройдёт, ничего не сохранится и форма покажет причину ошибки.
  5. После успешной проверки ID аккаунта Avito определяется автоматически и вводить его вручную не нужно.
  6. Рядом с результатом проверки появится статус подписки «API мессенджера» — убедитесь, что он активен, иначе сообщения не будут приходить.

3. Регистрация вебхука

Выполните команду на сервере, чтобы подписать вебхук на аккаунт Avito:

bash
docker exec -it pet php artisan avito:set-webhook

Команда автоматически подставит адрес вебхука и секретный ключ, указанные на предыдущем шаге, и покажет ID подключённого аккаунта Avito.

Проверка

  1. Напишите сообщение по одному из ваших объявлений на Avito от имени обычного пользователя.
  2. В подключённой Telegram-группе появится новая тема (или обращение в разделе "Чаты", если группа не настроена).
  3. Ответьте на сообщение из темы или админ-панели — ответ должен прийти пользователю в Avito.

Ограничения текущей версии

  • Требуется активная лицензия модуля и платная подписка Avito «API мессенджера».
  • Поддерживается один аккаунт Avito на инсталляцию.

Ссылки

Выпущено под лицензией MIT. Сайт разработал Илья Лящук.