Перейти к содержимому
falang.ruEN

Прокси для интеграций

Некоторые API недоступны из региона, где работает ваше развёртывание Falang, — например Telegram или OpenAI из России либо российские маркетплейсы из-за рубежа. Не нужно переносить всё развёртывание: администратор запускает небольшой прокси там, откуда эти API доступны, и указывает, какие интеграции должны им пользоваться. Остальной трафик идёт напрямую, как и раньше.

Прокси — отдельный сервис falang-proxy из папки proxy/ репозитория (Node 24, без зависимостей). Соберите и запустите его на хосте в нужном регионе:

Окно терминала
cd proxy
docker build -t falang-proxy .
docker run -d --restart unless-stopped \
-e PROXY_TOKENS=длинный-случайный-секрет \
-p 8080:8080 falang-proxy
ПеременнаяПо умолчаниюНазначение
HTTP_PORT8080Порт, который слушает прокси.
PROXY_TOKENSобязательнаСписок допустимых токенов через запятую. Без неё сервис не запустится.
PROXY_ALLOWED_PORTS443,80

Порты, к которым прокси может подключаться; * — любые. Лучше оставлять список узким.

PROXY_EXPOSE_STATSfalseВключает счётчик соединений по адресам назначения; нужен только для тестовых стендов.

Проверить, что сервис жив, можно командой curl http://your-proxy:8080/health — он отвечает 200 ok без авторизации.

Берегите токен. Falang передаёт токен в заголовке Proxy-Authorization каждого запроса к прокси. Поставьте перед прокси HTTPS-терминацию (обратный прокси, а в Falang укажите адрес с https://) или держите его в частной сети. Трафик, который проходит через туннель к HTTPS-API, остаётся зашифрованным end-to-end: прокси видит только хост и порт, но не содержимое запросов.

  1. Откройте админ-приложение и перейдите на страницу Proxy.

  2. Введите URL прокси (http://… или https://…) и токен. Если настройки уже сохранены, оставьте поле токена пустым — сохранённый токен не изменится.

  3. В поле Integrations выберите вендоров, трафик которых нужно пустить через прокси. Список можно искать, он разделён на встроенные интеграции и модули ActivePieces.

  4. Нажмите Save. Reset удаляет URL, токен и выбор — весь трафик снова идёт напрямую.

Маршрутизируется только трафик выбранных интеграций; решение принимается для каждого запроса отдельно:

  • действия, вопросы и выборы этих интеграций, выполняемые в раннере workflow;
  • работа бэкенда для них: long polling и настройка вебхука Telegram, обработчики входящих вебхуков, загрузка вариантов выпадающих полей, «Sync structure» и обмен OAuth2-токена;

  • выбранные модули ActivePieces (действия, опрос триггеров, загрузка вариантов).

Что через прокси не идёт:

  • интеграции с базами данных (PostgreSQL, MySQL) — их соединения это обычный TCP, а не HTTP, поэтому выбор таких интеграций ни на что не влияет;

  • внутренние вызовы Falang (бэкенд, файловое хранилище, сервисы media и ActivePieces);
  • сам чат ИИ-агента — у него собственные настройки адреса;
  • модули ActivePieces, которые создают собственный HTTP-агент или открывают «сырые» TCP-соединения (SMTP, IMAP, MongoDB и подобные).

  • Бэкенд — примерно за 15 секунд.
  • Поды раннеров запущенных workflow — примерно за 30 секунд, пересборка и перезапуск не нужны.
  • Сервис ActivePieces — примерно за 30 секунд.
  • 407 Proxy Authentication Required — токен в админ-приложении не совпадает ни с одним значением PROXY_TOKENS на прокси.

  • 403 Forbidden — прокси не разрешил порт назначения. Если API вендора работает на нестандартном порту, добавьте его в PROXY_ALLOWED_PORTS (или укажите *).

  • Отказ в соединении или таймаут — прокси недоступен из развёртывания; проверьте /health с хоста бэкенда и файрволы по пути.

  • Вызов по-прежнему не проходит — убедитесь, что вендор отмечен на странице Proxy; журнал самого прокси (одна строка на запрос, без токена) покажет, дошёл ли запрос.