Решив заняться бессовестным копипастом (а точнее его автоматизацией) постов с чужого Telegram-канала в свой, я первым делом полез в документацию по телеграм-ботам. Но как выяснилось, боты не только не имеют методов для получения сообщений, их просто-напросто нельзя добавить в чужой канал.
Решение нужно было на PHP и следующий час был потрачен на его поиск. Удивительно, как об этом мало информации (хотя нет, не удивительно… кто вообще пишет такое на PHP. ). В общем, дорога со StackOverflow привела к MadelineProto. На библиотеку довольно мало ссылок в сети.
Что такое Madeline? Это Telegram-клиент на PHP, предоставляющий методы для работы как от имени пользователя, так и от имени бота. Цель статьи — в первую очередь сократить путь поиска Madeline и привлечь к нему внимание. Также интересно узнать у хабравчан что есть подобное на других ЯП?
Ну и разумеется, опубликовать для примера кусочек кода, который решил мою задачу:
Источник: habr.com
Что такое «двойное дно» и зачем оно в Telegram
MadelineProto
Эту библиотеку можно использовать для простого взаимодействия с Telegram без использования bot API, как и в официальных приложениях. Он может войти в систему с помощью номера телефона (MTProto API) или с помощью токена бота (MTProto API, API бота не задействован!).
Внутреннее управление одноранговыми узлами: вы можете предоставить простой идентификатор чата bot API или имя пользователя для отправки сообщения или вызова других методов mtproto! Вы можете легко войти в систему как пользователь (поддерживается 2FA) или как бот! Простая обработка ошибок! Он легко настраивается с большим количеством различных настроек!
Бот Поддержка идентификатора файла API / объекта (даже для пользователей)! Привязка Lua, оболочка lua для скриптов td-cli, секретные чаты, MTProto 2.0, PFS, PFS в секретных чатах. MadelineProto может делать все, что могут делать официальные клиенты, и даже больше! Для правильной работы MadelineProto требуются расширения mbstring, xml, json, fileinfo, gmp.
Особенности
- Это позволяет вам делать все, что могут делать официальные клиенты, программно!
- Это полностью асинхронно
- Он может быть проксирован (MTProxy, HTTP, socks5 и многое другое).
- Его можно легко сериализовать
- Он включал обработку обновлений с помощью обратных вызовов или длительного опроса
- Простые в использовании оболочки для загрузки файлов и вызова методов mtproto
Разделы
Метки
- php mysql chat scripts
- category
- delphi bot chat
- secret message
Дата регистрации проекта
Лицензия
Affero GNU Public License
Языки разработки
Скриншоты
Похожие проекты
TinySprite
Простой в использовании редактор спрайтов MSX, который запускается непосредственно в вашем браузере.
Создаем простого бота для Telegram на PHP за один час!
Для этого не требуется Java, и он также работает на 100% в автономном режиме!
Поддерживает наложение спрайтов MSX2.
sourceror — The jamascript compiler.
Этот проект направлен на создание простого в использовании компилятора Jamascript, использующего графический движок третьей стороны и расширенную функциональность.
Azul Papiro
Редактор текстовых мультиплатформенных документов с предрасположенностью к переносному тексту на java. Soporta Asociación de archivos, Drag n’ Drop и acciones ilimitadas para deshacer. PD: Проект для обеспечения безопасности в каскаде. (solamente educativo).
OpenPunch
Электронная система пробивания и хронометража для спортивного ориентирования.
grue
«grue» — это irc-бот, разработанный на perl для Linux, который позволяет группе людей играть в игру Infocom / Z Machine.
Open Spacestation
The Festa Philosophy
Философия Festa представляет собой комбинацию архитектуры JEE5, языка, специфичного для конкретной предметной области, на основе UML и генератора кода. С Festa качество и производительность разработки веб-приложений на Java значительно улучшатся.
Glest Asset Manager
Glest Asset Manager — это проект по созданию программы управления модами для Glest и усовершенствованного движка Glest.
deva
Deva — это бесплатный проект с открытым исходным кодом для проверки всех этапов поведения драйвера для ядра Linux и создания превосходных отчетов как в картинках, так и в литературных композициях. С другой стороны, полные правила модульного тестирования можно легко разработать и настроить.
DevHub Фильтровать проблемы, действия и уведомления
DevHub — это мобильное и настольное приложение, которое поможет вам управлять уведомлениями GitHub и быть в курсе действий репозитория. Сохраняйте пользовательские поисковые запросы, применяйте фильтры и не пропустите ничего важного.
Создавайте столбцы для важных для вас репозиториев и людей; получайте push-уведомления на рабочем столе; управляйте уведомлениями, проблемами, запросами на извлечение и действиями; делайте закладки на потом. Выберите один из двух режимов: рабочий стол или панель меню; включите push-уведомления только для нужных вам столбцов. Все столбцы поддержка общего набора фильтров, таких как бот, метка, статус проблемы, текст и т.д. Столбцы Вопросов и запросов на извлечение являются особенными: они предоставляют вам все возможности расширенного поиска на GitHub (фильтрация по назначению, количеству комментариев и т.д. Создайте столбец для каждого пользователя и посмотрите, что они делают с коммитами, комментариями, проблемами, запросами на извлечение, тегами, релизами и т.д.
TakePhoto Библиотека инструментов для съемки фотографий и выбора из альбомов
TakePhotoIt — это библиотека инструментов с открытым исходным кодом для получения фотографий (фотосъемки или выбора из альбомов и файлов), обрезки изображений и сжатия изображений на устройствах Android. Последняя версия — 4.1.0. Для версий ниже 3.0 и описания API см. TakePhoto2.0+ для получения подробной информации.
Поддержка автоматического управления разрешениями (не нужно заботиться о разрешениях SD-карты и камеры и т.д.). Поддержка персонализированной настройки параметров обрезки и сжатия. Предоставляет собственный инструмент обрезки (опционально). Поддержка интеллектуального выбора и обработки исключений при обрезке.
Поддержка автоматического восстановления после повторного использования фотоактивности. takePhoto не только поддерживает настройку связанных параметров, но и поддерживает настройку пользовательского интерфейса. Ниже приводится введение в настройку пользовательского интерфейса альбома takePhoto и инструментов обрезки.
Источник: webfile.ru
MadelineProto, a PHP MTProto telegram client
What’s this?
This library can be used to easily interact with Telegram without the bot API, just like the official apps.
It can login with a phone number (MTProto API), or with a bot token (MTProto API, no bot API involved!).
Getting started
Try this code now! or run this code in a browser or in a console.
Tip: if you receive an error (or nothing), send us the error message and the MadelineProto.log file that was created in the same directory (if running from a browser).
Documentation
- Creating a client
- Logging in
- Automatic
- Manual (user)
- Manual (bot)
- Logout
- Simple
- Simple (manual)
- Composer from scratch
- Composer from existing project
- Event driven
- Event driven multithreaded
- Webhook multithreaded
- Callback multithreaded
- List of exception types
- Pretty TL trace
- Getting the TL trace
- FULL API Documentation with descriptions
- Peers
- Files
- Secret chats
- Entities (Markdown inline keyboards)
- bot API objects
- No result
- Queues
- Uploading Voice
- Extracting download info
- Download to directory
- Download to file
- Download to browser (streaming)
- Full chat info with full list of participants
- Full chat info
- Reduced chat info (very fast)
- As user
- As bot
- Requesting a call
- Playing mp3 files
- Playing streams
- Changing audio quality
- Requesting secret chats
- Accepting secret chats
- Checking secret chat status
- Sending secret messages
- Use pre-built Socks5 proxy
- Use pre-built HTTP proxy
- Build your own proxy
- Translation
- Contribution guide
- Credits
Very complex and complete examples
You can find examples for nearly every MadelineProto function in
- tests/testing.php — examples for making/receiving calls, making secret chats, sending secret chat messages, videos, audios, voice recordings, gifs, stickers, photos, sending normal messages, videos, audios, voice recordings, gifs, stickers, photos.
- bot.php — examples for sending normal messages, downloading any media
- secret_bot.php — secret chat bot
- multiprocess_bot.php — multithreaded bot
- magna.php — examples for receiving calls
- userbots/pipesbot.php — examples for creating inline bots and using other inline bots via a userbot
- userbots/MadelineProto_bot.php — Multi-function bot
- userbots/pwrtelegram_debug_bot — Multi-function bot
Описание
Async PHP client/server API for the telegram MTProto protocol
Источник: gitflic.ru