Подключение бота
Автоматическое подключение
1. Войдите на сайт через Телеграм и в разделе Мои боты добавьте Телеграм-токен (полученный от @BotFather) вашего бота. Вы попадете на страницу настроек бота.
2. Нажмите "ВКЛ" в разделе "автоматическое подключение":
Готово, ваш бот уже начал передавать статистику!
TGViz работает параллельно с вашим ботом и не вмешивается в его работу: не замедляет, не нарушает его стабильность, мы ни при каких обстоятельствах не отправляем никакие рассылки вашим пользователям (только ваши рассылки, которые вы сами настроете через наш сервис).
С автоматическим подключением будут логироваться все действия ваших пользователей. Вам в полном объеме будут доступны функции настройки рассылок, показов. Ограничение: для корректной работы "Обязательной подписки" автоматическое подключение не подходит - так как ваш бот должен не обрабатывать полученное событие в случае срабатывания механики. Это возможно только при подключении по API.
Подключение по API
Если ваш бот большой (от 100к MAU), если вам нужна бОльшая гибкость в том, какие данные вы хотите передавать, а также если вы хотите настроить "Обязательные подписки" - рекомендуем подключаться по API. Обратите внимание - нельзя одновременно передавать данные в автоматическом режиме и по API: API вернет 409 Conflict Error: необходимо сначала отключить автоматический режим.
API
API TGViz принимает объекты Update. Для получения полной картины в статистике, желательно передавать все Update-ы от Телеграм в момент их получения.
Для этого отправьте Post-запрос к (Swagger UI -https://api.tgviz.com/docs)
curl -X POST \ 'https://api.tgviz.com/v1/post-update' \ --header 'X-TGViz-Bot-Token: <TGVIZ-API-TOKEN>' \ --header 'Content-Type: application/json' \ --data-raw '{ "update_id": 12345678, "message": { ... объект message }, ... другие объекты входящие в Update }'
Где вместо TGVIZ-API-TOKEN подставьте токен, сгенерированный TGViz-ом для бота (можно найти вверху страницы настроек каждого бота). Токен уникален для каждого бота - так система сможет верно залогировать переданные вами данные именно для этого бота. В каждом боте используйте его персональный токен.
В payload передайте объект Update. Не вносите изменений в структуру Update, иначе данные не пройдут валидацию на нашей стороне (API ответит ошибкой 422)
Python
Используйте нашу библиотеку, осуществляющую процессинг передачи Update-ов:
pip install tgviz
В описании библиотеки на Github вы найдете примеры подключения, в том числе для библиотек aiogram и python-telegram-bot. Процессор удобнее всего использовать в middleware, передавая в него Update и handler: он сам залогирует данные, наш сервис сам отправит рекламный пост, если он настроен в системе, а процессор пропустит обработку в случае, если сработает механика "обязательной подписки".
Подключение бота на конструкторе
Во многих Low-code / No-code конструкторах есть возможность передачи сырых данных (Update от Телеграм). В таком случае вам необходимо передавать эти данные нам так же, как описано в разделе "Подключение по API".
Еще варианты
Если вы не нашли подходящего способа подключения, у вас возникли проблемы или есть идея как сделать еще удобнее - пожалуйста, напишите нам! Мы обязательно найдем лучший способ.