Туннели агентов¶
gateway.tunnel.agents
Peeklio — встроенный в Sapsan шлюз обратного прокси. Легкий агент, установленный рядом с камерой (за NAT), сам подключается к Sapsan и держит туннель; через этот туннель Sapsan забирает видео и трафик устройства так, как будто оно в локальной сети.
Настройка шлюза¶
rproxy:
streampoint_key: <ключ для подключения стримпоинтов>
endpoint_auth_url: http://backend.example.com/agent-auth
agents:
- agent_id: a1b2c3
password: <пароль агента>
salt: <соль>
streampoint_url: http://this-server:5080
Агентов можно авторизовать локальным списком agents или внешним бекендом endpoint_auth_url. Если задан endpoint_auth_url, используется бекенд, а список agents игнорируется. Без бекенда непустой список agents обеспечивает локальную авторизацию. Режим «только streampoint», без регистрации новых агентов, действует, когда не задан ни бекенд, ни локальные учётные данные агентов.
На стороне агента задаются адрес сервера, agent_id, пароль, интервал пингов и ACL хостов — список адресов, к которым через этого агента вообще можно подключаться; всё остальное отклоняется.
Состояние шлюза сохраняется при перезагрузке конфигурации. Изменение streampoint_key или endpoint_auth_url применяется при перезагрузке и приводит к переподключению управляющих сессий агентов с новыми настройками.
Захват потока через агента¶
У входа потока указывается via_agent с идентификатором агента:
streams:
- name: cam-behind-nat
inputs:
- rtsp:
url: rtsp://admin:password@192.168.1.10/stream0
via_agent: "agent://a1b2c3"
Адрес в url — локальный адрес камеры в сети агента. RTSP-рукопожатие и поток идут через туннель.
Поведение при ошибках¶
Ошибки подключения через агента различимы: порт закрыт (connection refused), хост не входит в ACL агента (permission denied), имя не резолвится. Сервер может дистанционно послать агенту команды reset и reboot.
Мониторинг агентов¶
GET /streamer/api-v4/rproxy/streampoint-agents возвращает счетчики по каждому агенту: пинги, байты в обе стороны, попытки/успехи/текущее число соединений. См. Admin API.
Note
Настройка самого агента и выдача ключей находятся за рамками этого руководства. Эти операции тесно интегрированы с Flussonic Watcher и выполняются средствами поставляемого решения.