Предварительные требования
Перед началом убедитесь, что у вас есть:- Python 3.8 или выше установлен
- API ключ AgentInbox
- Менеджер пакетов
pip - Базовое знакомство с Python и командами терминала
Установка
Сначала установите необходимые пакеты Python:Шаг 1: настройка учетной записи на Ngrok
Ngrok создает безопасный туннель от открытого URL на ваш локальный сервер разработки, позволяя AgentInbox отправлять веб-хуки на вашу машину во время разработки.1.1 Создайте учетную

запись ngrok
Посетите ngrok.com и нажмите “Sign up”, чтобы создать бесплатную учетную запись.
1.2 выберите вашу платформу и установите
Шаг 2: создание входящего ящика на AgentInbox
Прежде чем вы сможете получать веб-хуки, вам нужен входящий ящик для получения сообщений. Создайте один, используя API AgentInbox:client_id обеспечивает, что многократное запуск этого кода не создаст дублирующиеся входящие ящики. Если входящий ящик уже существует, он вернет существующий.
Шаг 3: настройка веб-хука на AgentInbox
3.1 запустите туннель ngrok
В терминале запустите туннель ngrok, чтобы открыть ваш локальный сервер (мы будем использовать порт 3000):
https://your-subdomain.ngrok-free.app). Это открытый URL, который AgentInbox будет использовать для отправки веб-хуков.
При просмотре приемника веб-хука в браузере используйте URL
http://127.0.0.1:3000, показанный в строке “Web Interface”, а не URL ngrok. URL ngrok предназначен только для внешних сервисов, таких как AgentInbox.Почему localhost? Safari более строг, чем Chrome/Firefox, при просмотре серверов разработки через HTTPS туннели ngrok. Safari блокирует локальные WebSockets и некоторые скрипты, специфичные для разработки, что вызывает бесконечное отображение спиннера загрузки на странице из-за Hot Module Replacement (HMR). Это ожидаемое поведение разработки, а не проблема документации. Использование localhost или статических сборок избегает этой проблемы.3.2 зарегистрируйте веб-хук с помощью AgentInbox
Теперь зарегистрируйте конечную точку веб-хука с помощью AgentInbox:Шаг 4: пример кода для получения веб-хуков
Создайте файл с именемwebhook_receiver.py со следующим кодом:
Запуск приемника веб-хука
- Убедитесь, что ngrok работает в одном окне терминала
- В другом терминале запустите приемник веб-хука:
- Отправьте тестовое письмо на ваш входящий ящик AgentInbox
- Смотрите на выходе консоли события входящих веб-хуков
Просмотр результата
Откройте браузер и посетитеhttp://127.0.0.1:3000, чтобы увидеть страницу статуса, подтверждающую, что ваш приемник веб-хука работает:
Тестирование вашей настройки
Чтобы протестировать вашу настройку веб-хука:- Отправьте письмо на адрес вашего входящего ящика (например,
webhook-demo@agentinbox.to) - Проверьте выход консоли приемника веб-хука
- Вы должны увидеть подробности события веб-хука, напечатанные немедленно
Теперь, когда ваш веб-хук работает, вы можете расширить функцию
receive_webhook() для:- Автоматического ответа на сообщения
- Обработки вложений
- Маршрутизации писем на различные обработчики на основе содержимого
- Интеграции с вашими рабочими процессами ИИ-агентов
Решение проблем
Веб-хук не получает события
Веб-хук не получает события
- Убедитесь, что ngrok работает и URL переадресации соответствует вашей регистрации веб-хука
- Проверьте, что ваше приложение Flask работает на правильном порту (3000)
- Убедитесь, что URL вашего веб-хука заканчивается на
/webhooks - Проверьте ошибки как в консоли Flask, так и в веб-интерфейсе ngrok
Туннель Ngrok отключается
Туннель Ngrok отключается
Бесплатные учетные записи ngrok имеют ограничение сеанса в 2 часа. Туннель отключится, и вам потребуется перезапустить ngrok и обновить URL вашего веб-хука с AgentInbox.
Порт уже используется
Порт уже используется
Если порт 3000 уже используется, выберите другой порт:
- Измените порт в
app.run(port=XXXX) - Обновите команду ngrok:
ngrok http XXXX
Рассмотрение производства
Для производственных развертываний:- Используйте выделенный сервер: разверните приемник веб-хука на облачный сервис (AWS, GCP, Heroku и т. д.) вместо использования ngrok
- Реализуйте проверку веб-хука: проверяйте входящие запросы аутентичны ли они от AgentInbox
- Добавьте обработку ошибок: реализуйте логику повторных попыток и отчетность об ошибках
- Используйте асинхронную обработку: верните 200 немедленно и обрабатывайте веб-хуки в фоновых задачах
- Мониторьте здоровье веб-хука: установите логирование и оповещения для неудачных доставок веб-хуков
