Download the PHP package phenogram/bindings without Composer

On this page you can find all versions of the php package phenogram/bindings. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package bindings

🇬🇧 ENGLISH | 🇷🇺 РУССКИЙ

PHP типы для Telegram Bot API

Строго типизированные PHP классы для Telegram Bot API, основанные на официальной документации, для использования в Фреймворке Phenogram

В основном сгенерированы с помощью scrapper

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

Текущая поддерживаемая версия Telegram bot API - v7.10

Установка

Использование

Сериализатор

Пример использования можно увидеть в классе Api.

Но вот простой пример:

Его также можно использовать для десериализации запросов Telegram в типизированные PHP-классы. Единственное не совсем очевидное - вам нужно передать JSON-закодированную строку из поля result запроса Telegram, а не весь запрос.

Использование API

Клиент

Чтобы использовать API, вам сначала нужно реализовать интерфейс ClientInterface, в котором есть только один метод - sendRequest. Затем вы можете использовать класс Api для отправки запросов к API Telegram.

Реализация клиента выходит за рамки этого проекта, но вы можете посмотреть пример реализации с amphp/http-client в Фреймворке Phenogram

Самая базовая реализация с использованием ext-curl может выглядеть так:

Но я, конечно, рекомендую использовать какую-нибудь библиотеку, например Guzzle или amphp/http-client.

Выполнение запросов

Всё ещё work in progress

Основная проблема на данный момент - это загрузка файлов с MultiPart-запросами, но я думаю об этом.

Также мне нужно сделать придумать возвращаемый из Api::doRequest тип с помощью шаблонов, но пока не уверен, как это сделать, phpstan побеждает.

Заключение

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

Если вам нужен фреймворк, посмотрите на Phenogram


All versions of bindings with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package phenogram/bindings contains the following files

Loading the files please wait ....