Запросы на сервер Телеграма с разных аккаунтов

Содержание

Рассказываем, как подключить платежную систему к Telegram-боту и разместить его на сервере.

Введение

Telegram-боты обладают широкой функциональностью и решают массу задач клиентов самых разных бизнесов. Рассказываем, как создать и разместить бота для приема платежей в Telegram на Python. Видеоверсия доступна по ссылке.

В Telegram есть встроенная система оплаты, поэтому сценариев, как использовать бота для приема платежей, достаточно много. Это может быть разовая оплата заказа или ежемесячная подписка.

Платежные системы Telegram

Сейчас мессенджер поддерживает оплату в более чем 200 странах через такие шлюзы, как: Stripe, YooMoney, Sberbank, LiqPay, PayMaster и другие.

Все начинается с установки библиотеки aiogram. Сейчас, пожалуй, это самая популярная библиотека для разработки ботов на Python.

python -m pip install aiogram

Переходим в Telegram и пишем тут BotFather’у команду /newbot. Вводим имя нового бота. Важно, чтобы оно заканчивалось словом Bot.

Парсинг в Python за 10 минут!

Получаем уникальный токен нового бота. Теперь напишем код простейшего эхо-бота, чтобы проверить его работу.

Связать бота с приложением

Создаем файл config.py и вписываем в него токен, который выдал BotFather. В основном файле main.py прописываем базовый код любого бота.

Обратите внимание на один важный момент: бот должен обрабатывать каждое сообщение с серверов Telegram. Для этого при запуске бота обязательно нужно поставить аргумент skip_updates в значение False. Это спасет от проблем при обработке платежей.

Теперь можно запустить код и проверить, работает ли бот. Убедившись, что все хорошо, приступаем к подключению платежей.

Возвращаемся к BotFather’у, даем команду /mybots и выбираем из списка своего бота.

В открывшемся меню кликаем на кнопку «Payments». Из предоставленного списка выбираем нужный платежный шлюз. В качестве теста используем PayMaster. Чтобы подключить оплату в Telegram-бота, сначала нужно выполнить тест, поэтому выбираем «PayMaster Test».

Следуем простым инструкциям бота платежной системы и получаем тестовый токен PayMaster. Его сразу же можно сохранить в config.py.

TOKEN = «5432877141:AAHEwBEb2mwnZX56oaHM10o33ZBZwVkvv-s» PAYMENTS_TOKEN = «1744374395:TEST:f14d9f0d42528b780370»

Возвращаемся к коду бота. Для того, чтобы запросить оплату товаров/услуг, нужно сгенерировать invoice с деталями платежа. Отправить его клиенту и обработать результат.

Подключаем оплату

Указываем список доступных цен на продукты. В качестве цены нужно передать целочисленное значение в минимально возможных единицах валюты. Если речь идет о рублях, то стоимость нужно указывать в копейках. То есть место 500 рублей мы тут укажем 500 * 100 или же 50 000 копеек. В случае с долларами будет почти также, $1=100 центов. Если предполагается работа с другими валютами, можно использовать currencies.json от Telegram API.

Дальше в коде бота платежной системы мы создаем обработчик команды /buy. Команда будет генерировать и отправлять пользователю invoice платежа. В примере используется оплата месячной подписки.

Сам процесс генерации invoice довольно простой. Не стоит беспокоиться большому количеству аргументов. Это названия продуктов или услуг, описания, цена, валюта и т.п.

Настройки платежей

Обратите внимание на аргумент is_flexible. Его нужно указывать в значение True только в том случае, если финальная стоимость зависит от выбранного способа доставки, если речь идет о продаже какого-то физического продукта.

О других параметрах метода send_invoice вы всегда можете прочитать в официальной документации Telegram API.

Теперь нужно создать еще два обработчика: Pre Checkout Query и Successful Payment.

Pre Checkout Query отвечает за обработку и утверждение платежа перед тем, как пользователь его совершит. Так можно проверить доступность товара на складе или уточнить стоимость.

Важно, что серверам Telegram ответ нужен в течение 10 секунд. Если его не будет, платеж не пройдет.

Successful Payment отвечает за обработку успешно проведенного платежа.

Тут можно выдать пользователю тот самый месяц подписки, за которую он заплатил или любую другую услугу.

Как бот работает на практике

Получив invoice на оплату от бота, нажимаем «Оплатить». Поскольку сначала мы проводим тестирование бота, воспользуемся специальной тестовой картой.

Вводим данные и оплачиваем подписку — все работает. При переходе на боевой проект важно не забыть выбрать правильный счет.

Теперь возвращаемся в BotFather, чтобы получить реальный токен от выбранного платежного шлюза. Если есть запрос на разные тарифы или способы оплаты, лучше запросить сразу 2-3 токена от разных платежных шлюзов. Далее нужно будет генерировать invoice с помощью токена выбранного провайдера.

Перенос бота на боевой сервер

Чтобы бот работал 24/7 вне зависимости от того, включен компьютер или нет, зальем его на реальный сервер.

Для этого воспользуемся облачным сервером линейки Shared Line от Selectel. Калькулятор панели управления позволяет выбрать гибкую конфигурацию сервера и сразу узнать, сколько будет стоить решение. Все продукты и услуги собраны у провайдера в одном месте, поэтому ими легко управлять. Арендовать сервер можно от 10 ₽/день, а в консоли есть возможность быстро масштабировать вычислительные ресурсы при необходимости.

Еще по теме:  Груз 200 Телеграмм список

Регистрируемся и входим в панель управления my.selectel.ru. Переходим в раздел «Облачная платформа» и выбираем «Серверы». Создаем сервер — после этого шага он загорится в списке как «ACTIVE».

Настраиваем конфигурацию. Для примера используем 1 ядро, 512 МБ DDR4 и 5 ГБ на диске.

Теперь переходим к выгрузке бота на боевой сервер. Сначала нужно подключиться к серверу через SSH. Для этого мы можем воспользоваться программой WinSCP для Windows. В Linux и MAC для этого есть свои встроенные инструменты.

Запускаем WinSCP. В качестве имени хоста указываем IP адрес нашего нового сервера. Логин и пароль можно взять во вкладке «Консоль» в панели управления.

Теперь перенесем сюда файлы нашего бота: config.py и main.py. Далее открываем отдельное соединение с сервером по SSH в консоли.

Для этого в WinSCP нажать кнопку и открыть PuTTY. Можно также воспользоваться командной строкой, принципиальной разницы нет.

Настройка бота с Payments 2.0

Подключившись к серверу, нужно выполнить ряд простых действий.

  • Обновить Python до версии 3.10.
  • Установить PIP.
  • Поставить библиотеку Aiogram.

Если оставить все в таком виде, то при закрытии SSH-соединения вместе с ним закроется и процесс бота. Что делать?

Есть несколько способов, как решить этот вопрос. Рассмотрим самый простой – использование команды screen.

Пишем команду screen и жмем Enter. Запускаем бота из обычного терминала и закрываем соединение.

Бот продолжит работу. Чтобы в любой момент вернуться к этому экрану, достаточно ввести команду screen -r $screen_running. На этом деплой в облаке Selectel закончен.

Заключение

Описанная схема запуска Telegram-бота не предел того, как можно настроить прием платежей. К боту всегда можно добавить дополнительные возможности: запрашивать адрес доставки или менять цену в зависимости от адреса.

Идеальное решение для pet-проектов

Сервер для решения задач, которые не требуют полной загрузки vCPU.

Зарегистрируйтесь в панели управления

И уже через пару минут сможете арендовать сервер, развернуть базы данных или обеспечить быструю доставку контента.

Инструкция

Как автоматизировать подготовку к собеседованиям с помощью Telegram-бота

29 сентября 2023

Инструкция

Как реализовать очередь в Redis

14 сентября 2023

Инструкция

Как генерировать истории с помощью ChatGPT и Telegram

Источник: selectel.ru

Как перенести чаты телеграмм на другой аккаунт

Чтобы перенести данные, пользователю нужно открыть мессенджер, выбрать необходимую переписку и создать ее архив. Отправить чат в Telegram можно через функцию «Поделиться». Кроме того, последнее обновление Telegram для iOS дает возможность пользователям удалять созданные ими группы, секретные чаты и историю звонков.

Как отправить чат в Telegram?

  • Откройте мессенджер Telegram.
  • Выберите нужную переписку.
  • Создайте архив чата.
  • Отправьте архив через функцию «Поделиться».

Как удалить группы, секретные чаты и историю звонков в Telegram?

  • Обновите Telegram для iOS.
  • Зайдите в настройки своего профиля.
  • Выберите «Управление группами и каналами».
  • Удалите необходимые группы и секретные чаты.
  • Выберите «История звонков» и удалите ее.

Как сохранить чат в Telegram с фотографиями и видео?

  • Войдите в нужный чат.
  • Нажмите на имя контакта или группы.
  • Выберите «Экспорт чата».
  • Отправьте его на почту или в другой мессенджер.
  • Сохраните на компьютер.

Как сохранить чат в Telegram без фотографий и видео?

  • Войдите в нужный чат.
  • Нажмите на имя контакта или группы.
  • Выберите «Экспорт чата».
  • Отправьте его на почту или в другой мессенджер.
  • Сохраните на компьютер.

Как сменить номер телефона в аккаунте Telegram?

  • Зайдите в настройки своего профиля.
  • Нажмите на текущий номер телефона.
  • Выберите «Сменить номер».
  • Введите новый номер и подтвердите авторизацию полученным кодом из СМС.
  1. Как экспортировать чаты из Телеграма
  2. Как перенести данные телеграмм на другой номер
  3. Как переслать всю переписку в телеграмме
  4. Как импортировать диалог Телеграм
  5. Как экспортировать чаты
  6. Как получить всю переписку в телеграмме
  7. Как объединить аккаунты телеграмм
  8. Как передать аккаунт телеграмм
  9. Что будет с Телеграмом если поменять симку
  10. Как сохранить переписку в телеграмм при смене телефона
  11. Можно ли как то восстановить переписку в телеграмме
  12. Где находится облако в телеграмме
  13. Где находится архив в телеграмме
  14. Что такое импортировать контакты в Телеграм
  15. Как сделать Экспорт чата в Телеграм на андроид
  16. Что такое Экспорт данных в телеграмме
  17. Как скопировать с Телеграма
  18. Как скачать архив с телеграмма
  19. Можно ли передать Телеграм канал
  20. Как сделать синхронизацию в телеграмме
  21. Как скачать телеграмм чтобы никто не узнал
  22. Можно ли вычислить человека в телеграмме
  23. Что будет если я удалю телеграмм
  24. Как увидеть удалённые сообщения в телеграмме
  25. Как разделить чаты тг
  26. Как войти в аккаунт телеграмм без номера телефона
  27. Как поделиться Телеграм без номера
  28. Как отвязать аккаунт от телеграмма
  29. Как отправить сразу много сообщений в телеграмме
  30. Как экспортировать чат в Телеграм на другой телефон
  31. Как сделать Экспорт в Телеграме
  32. Как скачать данные из телеграмм

Как экспортировать чаты из Телеграма

Для сохранения конкретного чата войдите в него, нажмите на имя контакта или группы, затем нажмите «Экспорт чата» и отправьте его, например, на почту или в другой мессенджер, а потом сохраните на компьютер. Чат можно сохранить с фотографиями и видео или без них.

Как перенести данные телеграмм на другой номер

Смена номера в аккаунте Telegram

Для этого зайдите в настройки своего профиля, нажмите на текущий номер телефона и кликните «Сменить номер». Затем введите новый номер и подтвердите авторизацию полученным кодом из СМС. Таким образом все ваши данные (переписки, медиафайлы, контакты) будут перенесены на новый номер.

Как переслать всю переписку в телеграмме

Экспорт истории с помощью Telegram Desktop.

В ПК-версии мессенджера есть функция, позволяющая полностью скачать всю переписку, включая медиафайлы, стикеры и ссылки. Для этого в меню «трех точек» нажмите «Экспорт истории» и выберите данные, которые хотите выгрузить.

Как импортировать диалог Телеграм

В Telegram появилась функция переноса чатов из WhatsApp и других мессенджеров:

  • Откройте чат, который хотите перенести.
  • Свайпните влево и выберите опцию «Экспорт чата».
  • Выберите экспорт в Telegram.
  • Выберите чат в Telegram для импорта.
Еще по теме:  Как написать сообщение в группе Телеграмм

Как экспортировать чаты

Откройте WhatsApp > нажмите Другие опции > Настройки > Чаты > Резервная копия чатов > РЕЗЕРВНОЕ КОПИРОВАНИЕ. Функцию экспорта истории чатов можно использовать как для индивидуальных, так и для групповых чатов. Откройте индивидуальный или групповой чат. Нажмите Другие опции > Ещё > Экспорт чата.

Как получить всю переписку в телеграмме

Быстрое выделение сразу нескольких сообщений

Если вы хотите выделить сразу несколько сообщений для пересылки или удаления, то просто проведите по ним двумя пальцами одновременно сверху-вниз или снизу-вверх. Просто и понятно!

Как объединить аккаунты телеграмм

Как пользоваться двумя аккаунтами Telegram на одном смартфоне:

  • Сколько аккаунтов можно добавить: до 3 штук, номера не должны совпадать.
  • Открываем Telegram, заходим в раздел Настройки (Settings).
  • Нажимаем на свой профиль.
  • Выбираем Добавить аккаунт (Add account).

Как передать аккаунт телеграмм

Откройте настройки канала/группы и зайдите в раздел «Администраторы». Добавьте админа, которому собираетесь передавать права, и выдайте ему все разрешения. Нажмите на появившуюся внизу кнопку «Передать права на канал/группу». Нажмите «Сменить владельца» и введите пароль от двухэтапной аутентификации.

Что будет с Телеграмом если поменять симку

Если вы не выйдете из своей учётной записи и выберите «Сменить номер», то в этом случае старый телефон поменяется на новый, все переписки будут перенесены и ваши друзья узнают о смене мобильного.

Как сохранить переписку в телеграмм при смене телефона

Чтобы перенести данные, пользователю нужно открыть мессенджер, выбрать необходимую переписку и создать ее архив. Отправить чат в Telegram можно через функцию «Поделиться». Кроме того, последнее обновление Telegram для iOS дает возможность пользователям удалять созданные ими группы, секретные чаты и историю звонков.

Можно ли как то восстановить переписку в телеграмме

Политика Telegram в отношении конфиденциальности пользовательских данных такова, что пересылаемая информация не архивируется. При удалении сообщения, фото или видео из чата оно также исчезает с серверов и его нельзя восстановить. То же самое касается и самих чатов.

Где находится облако в телеграмме

Чтобы зайти в облако мессенджера Telegram на устройствах с операционной системой Android, необходимо: Запустить приложение Telegram на своем смартфоне Нажать на кнопку «гамбургер» (кнопка в виде трех параллельных горизонтальных линий) В открывшемся меню выбрать «Избранное»

Где находится архив в телеграмме

Посмотреть заархивированные чаты и каналы

Чтобы её увидеть, зайдите в Telegram и пальцем потяните вниз список чатов. Папка с архивом появится сверху, над остальными чатами. Теперь в неё можно зайти и просмотреть все заархивированные переписки, каналы и группы. Папку с архивом можно закрепить в общем списке.

Что такое импортировать контакты в Телеграм

Функция импорта позволяет загружать внешний список идентификаторов Telegram, собранный на других платформах, и использовать его в канале автоматизации Telegram в ManyChat.

Как сделать Экспорт чата в Телеграм на андроид

Все, что вам нужно сделать, это открыть разговор, который вы хотите экспортировать, щелкнуть меню из трех точек в правом верхнем углу, затем «Еще», а затем «Экспортировать чат».

Что такое Экспорт данных в телеграмме

Экспорт данных — это операция, позволяющая выгрузить информацию из вашего аккаунта в Telegram, чтобы сохранить ее на безопасном носителе в случае удаления профиля или при другом сценарии.

Как скопировать с Телеграма

Как скопировать ссылку на чужой профиль:

Как скачать архив с телеграмма

Как выкачать свои данные из Telegram: Установите десктопную версию Telegram. Зайдите в основные настройки, затем в раздел «Конфиденциальность и безопасность» и нажмите на пункт «Экспорт данных из Telegram»

Можно ли передать Телеграм канал

Откройте настройки канала/группы и зайдите в раздел «Администраторы». Добавьте админа, которому собираетесь передавать права, и выдайте ему все разрешения. Нажмите на появившуюся внизу кнопку «Передать права на канал/группу». Нажмите «Сменить владельца» и введите пароль от двухэтапной аутентификации.

Как сделать синхронизацию в телеграмме

Telegram для Android

Нажмите на иконку с тремя полосками, чтобы открыть боковое меню. Перейдите в раздел «Настройки» → «Конфиденциальность». Пролистайте вниз до пункта «Синхронизировать контакты».

Как скачать телеграмм чтобы никто не узнал

Скрыть номер телефона можно следующим образом: в настройках конфиденциальности нужно выбрать опцию «номер телефона» и установить для параметра «кто может видеть мой номер телефона» значение «никто». После этого появится новая опция — «кто может найти меня по моему номеру».

Можно ли вычислить человека в телеграмме

Telegram позволяет за несколько минут вычислить точные координаты своих пользователей, использующих встроенный сервис «Люди рядом». Алгоритм обнаружения прост, что дает возможность следить за нужным человеком даже тем, у кого нет никаких навыков хакинга.

Что будет если я удалю телеграмм

Вручную удалить все чаты, которые могут представлять какой-либо компромат на вас. После того, как вы удалите Телеграм, ваши переписки останутся доступными для того, с кем вы переписывались.

Как увидеть удалённые сообщения в телеграмме

Как восстановить удаленные сообщения в каналах Telegram?:

  • Перейдите на страницу своего Telegram-канала.
  • Коснитесь верхняя панель для входа в настройки канала.
  • Нажать на «значок карандаша» наверху.
  • Нажмите на «Недавние действия» кнопку.
  • Теперь вы можете найти удаленный пост.

Как разделить чаты тг

Мессенджер предлагает функцию «Папки», которая позволяет разделять рабочие и личные чаты. Для ее активации откройте приложение Telegram на своем телефоне. Перейдите в раздел Настройки > Папки чата. По умолчанию можно добавлять личные (не групповые и личные чаты) и непрочитанные в панель папок.

Как войти в аккаунт телеграмм без номера телефона

Если раньше для входа достаточно было просто указать пару «логин-пароль», то теперь доступ открывается только после введения кода, который приходит на личный телефон. Его необходимо ввести в специальное поле и доступ будет разрешен.

Как поделиться Телеграм без номера

Просто откройте раздел «Contacts» («Контакты») в приложении, и перейдите в раздел Add People Nearby («Добавить людей поблизости»), чтобы поделиться своим контактом в Telegram с пользователями поблизости (раздел должен быть открыт у вас и у собеседника).

Как отвязать аккаунт от телеграмма

В любом браузере перейти по ссылке https://my.telegram.org/delete:

  • На сайте ввести номер телефона учетной записи, которую нужно удалить
  • В мессенджере придет сообщение с паролем, который нужно ввести в браузере
  • В открывшемся окне выбрать «Deactivate account»
  • В открывшемся окне выбрать «Yes, delete my account»
Еще по теме:  Как восстановить фотографию которую удалил пользователь в Телеграм

Как отправить сразу много сообщений в телеграмме

Как сделать массовую рассылку сообщений в Телеграм:

  • Настройте список получателей (если это отправка в разные чаты).
  • Напишите текст сообщения.
  • Добавьте кнопку.
  • Дополните сообщения элементами: картинка, файл, видео, гифка или эмодзи.
  • Добавьте ссылку, если нужно.
  • Настройте время отправки.
  • Запустите рассылку.

Как экспортировать чат в Телеграм на другой телефон

Чтобы перенести данные, пользователю нужно открыть мессенджер, выбрать необходимую переписку и создать ее архив. Отправить чат в Telegram можно через функцию «Поделиться». Кроме того, последнее обновление Telegram для iOS дает возможность пользователям удалять созданные ими группы, секретные чаты и историю звонков.

Как сделать Экспорт в Телеграме

Перейдите в раздел «Продвинутые настройки». Пролистайте меню вниз и откройте вкладку «Экспорт данных из Telegram». Поставьте галочки напротив сведений, которые нужно сохранить, а также выберите путь сохранения и формат файла. Нажмите кнопку «Экспортировать».

Как скачать данные из телеграмм

Также Telegram позволяет сохранить данные из отдельных чатов или каналов.Telegram:

  • Перейти в «Настройки».
  • Выбрать «Продвинутые настройки».
  • Выбрать пункт «Экспорт данных из Telegram».
  • Как перенести телеграмм с одного номера на другой
  • Как сохранить переписки в телеграмм при смене телефона
  • Как экспортировать все чаты в Телеграм

Для переноса данных в Telegram необходимо открыть мессенджер, выбрать нужную переписку и создать ее архив. Этот архив можно отправить в другой мессенджер или на почту, а затем сохранить на компьютере. Кроме того, для переноса данных на другой номер телефона необходимо зайти в настройки профиля, нажать на текущий номер телефона и выбрать опцию «Сменить номер». В Telegram Desktop есть функция, позволяющая скачать всю переписку, включая медиафайлы, стикеры и ссылки. Также в Telegram появилась функция переноса чатов из других мессенджеров, для этого необходимо выбрать нужный чат и экспортировать его в Telegram. Последнее обновление Telegram для iOS позволяет пользователям удалять созданные ими группы, секретные чаты и историю звонков.

Источник: gostevushka.ru

Бот Телеграм на PHP

Примеры как зарегистрировать бота в Telegram, описание и взаимодействие с основными методами API. Документация на core.telegram.org и tlgrm.ru (неофициальный, на русском).

Все запросы к API должны осуществляться по HTTPS, подойдет бесплатный сертификат «Let’s Encrypt».

Регистрация бота

Регистрация бота в Telegram

Следующим сообщением отправляем название для бота, обязательно на конце имени должно быть слово «bot» или «_bot». Ответным сообщением получим токен:

Получение токена к bot API Telegram

Тут же можно настроить описание и аватарку:

/setname Имя
/setdescription Краткое описание
/setabouttext Описание бота
/setuserpic Юзерпик

Далее нужно поставить «Webhook» чтобы все сообщения из Telegram приходили на PHP скрипт ( https://example.com/bot.php ). Для этого нужно пройти по ссылке в которой подставлены полученный токен и адрес скрипта. https://api.telegram.org/bot /setWebhook?url= https://example.com/bot.php

В ответе будет

При смене токена, установку вебхука нужно повторить.

Входящие сообщения

Сообщения приходят POST-запросом, с типом application/json . Получить его в PHP можно следующим образом:

$data = file_get_contents(‘php://input’); $data = json_decode($data, true);
Чтобы посмотреть входящие данные, их придется дампить в файл:
file_put_contents(__DIR__ . ‘/message.txt’, print_r($data, true));

Текстовое сообщение

Запрос от Телеграм:

Array ( [update_id] => 17584194 [message] => Array ( [message_id] => 26 [from] => Array ( [id] => 123456789 [is_bot] => [first_name] => UserName [language_code] => ru-US ) [chat] => Array ( [id] => 123456789 [first_name] => UserName [type] => private ) [date] => 1541888068 [text] => Привет бот! ) )

Получим текст сообщения:

if (!empty($data[‘message’][‘text’]))

Фотографии

При отправки фото боту, на скрипт приходит массив превьюшек, последним элементом будет оригинальное фото. Максимальный размер файла 20МБ.

Запрос от Телеграм:

Array ( [update_id] => 17584194 [message] => Array ( [message_id] => 38 [from] => Array ( [id] => 123456789 [is_bot] => [first_name] => UserName [language_code] => ru-US ) [chat] => Array ( [id] => 123456789 [first_name] => UserName [type] => private ) [date] => 1541924962 [photo] => Array ( [0] => Array ( [file_id] => AgADAgADUqexG7u8OEudBvlhgMzKC1agOQ8ABC6Bx26USA7Mw3gAAgI [file_size] => 1196 [width] => 51 [height] => 90 ) [1] => Array ( [file_id] => AgttAgADUqoxG7u8OEudBvlhgMzKC1agOQ8ABKwp_3jDPrIlxHgAAgI [file_size] => 21146 [width] => 180 [height] => 320 ) [2] => Array ( [file_id] => AgADAgADUqyxG7u8OEudBvlhgMzKC1agOQ8ABAN8gJWpUT1MxXgAAgI [file_size] => 90940 [width] => 449 [height] => 800 ) [3] => Array ( [file_id] => AgADAgADUqouu7u8OEudBvlhgMzKC1agOQ8ABIqVC1nEpbLDwngAAgI [file_size] => 114363 [width] => 719 [height] => 1280 ) ) ) )

Чтобы скачать файл нужно отправить POST или GET запрос на получение c параметром file_id изображения по URL: https://api.telegram.org/bot /getFile В ответ придет информация о файле:

Array ( [ok] => 1 [result] => Array ( [file_id] => AgADAgADUqoxG5u88E0dBvlhgMzKC1agOQ8ABIqVC1nEpbLDwngAAgI [file_size] => 114363 [file_path] => photos/file_1.jpg ) )

Далее его можно скачать по ссылке: https://api.telegram.org/file/bot / В PHP сохранение файла на сервер можно реализовать следующим образом:

$token = ‘123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11’; if (!empty($data[‘message’][‘photo’])) < $photo = array_pop($data[‘message’][‘photo’]); $ch = curl_init(‘https://api.telegram.org/bot’ . $token . ‘/getFile’); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, array(‘file_id’ =>$photo[‘file_id’])); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, false); $res = curl_exec($ch); curl_close($ch); $res = json_decode($res, true); if ($res[‘ok’]) < $src = ‘https://api.telegram.org/file/bot’ . $token . ‘/’ . $res[‘result’][‘file_path’]; $dest = __DIR__ . ‘/’ . time() . ‘-‘ . basename($src); copy($src, $dest); >>

Документ

Запрос от Телеграм:

Array ( [update_id] => 17474201 [message] => Array ( [message_id] => 44 [from] => Array ( [id] => 123456789 [is_bot] => [first_name] => UserName [language_code] => ru-US ) [chat] => Array ( [id] => 123456789 [first_name] => UserName [type] => private ) [date] => 1541925844 [document] => Array ( [file_name] => IMG_7947.JPG [mime_type] => image/jpeg [thumb] => Array ( [file_id] => AAQCABMNv_QOAATwQugveIZBldZ3AAIC [file_size] => 2644 [width] => 67 [height] => 90 ) [file_id] => BQADAgADtQEAAqu9OEhzn2cEz8LpkgI [file_size] => 1976218 ) ) )
Скачивание файлов происходит по такой же схеме как у фотографий.
if (!empty($data[‘message’][‘document’])) < $file_id = $data[‘message’][‘document’][‘file_id’]; $ch = curl_init(‘https://api.telegram.org/bot’ . $token . ‘/getFile’); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, array(‘file_id’ =>$file_id)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, false); $res = curl_exec($ch); curl_close($ch); $res = json_decode($res, true); if ($res[‘ok’]) < $src = ‘https://api.telegram.org/file/bot’ . $token . ‘/’ . $res[‘result’][‘file_path’]; $dest = __DIR__ . ‘/’ . time() . ‘-‘ . basename($src); copy($src, $dest); >>

Ответы бота

Отправка текста

$response = array( ‘chat_id’ => $data[‘message’][‘chat’][‘id’], ‘text’ => ‘Хай!’ ); $ch = curl_init(‘https://api.telegram.org/bot’ . $token . ‘/sendMessage’); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $response); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, false); curl_exec($ch); curl_close($ch);

Отправка картинки

$response = array( ‘chat_id’ => $data[‘message’][‘chat’][‘id’], ‘photo’ => curl_file_create(__DIR__ . ‘/image.png’) ); $ch = curl_init(‘https://api.telegram.org/bot’ . $token . ‘/sendPhoto’); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $response); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, false); curl_exec($ch); curl_close($ch);

Отправка файла

Пример скрипта

Источник: snipp.ru

Рейтинг
( Пока оценок нет )
Загрузка ...