uziins / laravel-telegram-bot
Integrates PHP Telegram Bot into Laravel.
Requires
- ext-pcntl: *
- illuminate/support: ~7|~8|~9
- longman/telegram-bot: ^0.80
Requires (Dev)
- phpunit/phpunit: ~9.0
- symfony/process: ^5.3
This package is auto-updated.
Last update: 2024-04-13 18:18:16 UTC
README
Installation
Install this package through Composer. Run this command in your project's terminal:
composer require uziins/laravel-telegram-bot
Usage
For further basic configuration of this Laravel package you do not need to create any configuration files.
Database migration
php artisan migrate
Publish config file
php artisan vendor:publish --tag="telegram-config"
Publish routes file
php artisan vendor:publish --tag="telegram-routes"
Artisan terminal commands for the Webhook usage (remember, that you need an HTTPS server for it):
# Use this method to specify a url and receive incoming updates via an outgoing webhook php artisan telegram:set-webhook # List of available options: # --d|drop-pending-updates : Drop all pending updates # --a|all-update-types : Explicitly allow all updates (including "chat_member") # --allowed-updates= : Define allowed updates (comma-seperated) # Use this method to remove webhook integration if you decide to switch back to getUpdates php artisan telegram:delete-webhook # List of available options: # --d|drop-pending-updates : Pass to drop all pending updates
Artisan terminal commands for the Telegram getUpdates method:
# Fetches Telegram updates periodically php artisan telegram:fetch # List of available options: # --a|all-update-types : Explicitly allow all updates (including "chat_member") # --allowed-updates= : Define allowed updates (comma-seperated)
Artisan terminal command for Telegram Server logging out:
# Sends a logout to the currently registered Telegram Server
php artisan telegram:logout
Artisan terminal command for closing Telegram Server:
# Sends a close to the currently registered Telegram Server
php artisan telegram:close
Artisan terminal command for publishing Telegram command folder structure in your project:
# Publishes folder structure for Telegram Commands # Default StartCommand class will be created php artisan telegram:publish
Artisan terminal command for creating new Telegram command class in your project:
# Create a new Telegram Bot Command class # e.g. php artisan make:telegram-command Menu --> will make User command class MenuCommand # e.g. php artisan make:telegram-command Genericmessage --system --> will make System command class GenericmessageCommand php artisan make:telegram-command # List of available options: # name : Name of the Telegram Command # --a|admin : Generate a AdminCommand # --s|system : Generate a SystemCommand # Without admin or system option default User command will be created
Credits
License
Please see the license file for more information.