mavinoo / telegrambot
Telegram Notifications Driver
dev-master
2017-08-28 10:16 UTC
Requires
- php: >=5.6.4
- illuminate/notifications: 5.3.* || 5.4.*
- illuminate/support: 5.1.* || 5.2.* || 5.3.* || 5.4.*
Requires (Dev)
- mockery/mockery: ^0.9.5
- orchestra/testbench: 3.4.x-dev
- phpunit/phpunit: 5.*
This package is auto-updated.
Last update: 2024-11-15 17:54:59 UTC
README
This package makes it easy to send Telegram notification using Telegram Bot API with Laravel 5.3.
Contents
Installation
You can install the package via composer:
composer require mavinoo/telegrambot:dev-master
You must install the service provider:
// config/app.php 'providers' => [ ... NotificationChannelsPlus\Telegrambot\TelegrambotServiceProvider::class, ],
Setting up your Telegram Bot
Talk to @BotFather and generate a Bot API Token.
Then, configure your Telegram Bot API Token:
// config/services.php ... 'telegram-bot-api' => [ 'token' => env('TELEGRAM_BOT_TOKEN', 'YOUR BOT TOKEN HERE') ], ...
Usage sendMessage
You can now use the channel in your via()
method inside the Notification class.
use NotificationChannelsPlus\Telegrambot\TelegramChannel; use NotificationChannelsPlus\Telegrambot\TelegramMessage; use Illuminate\Notifications\Notification; class InvoicePaid extends Notification { public function via($notifiable) { return [TelegramChannel::class]; } public function toTelegram($notifiable) { $url = url('/invoice/' . $this->invoice->id); $tg = TelegramMessage::create() ->to($this->user->telegram_user_id) ->content("*HELLO!* \n One of your invoices has been paid!") ->button('View Invoice', $url) ->getResult(); return $tg; } }
Usage sendPhoto
You can now use the channel in your via()
method inside the Notification class.
use NotificationChannelsPlus\Telegrambot\TelegramChannel; use NotificationChannelsPlus\Telegrambot\TelegramMessage; use Illuminate\Notifications\Notification; class InvoicePaid extends Notification { public function via($notifiable) { return [TelegramChannel::class]; } public function toTelegram($notifiable) { $url = url('/invoice/' . $this->invoice->id); $tg = TelegramMessage::create() ->to($this->user->telegram_user_id) ->sendPhoto([ 'caption' => 'Hello Mohammad', 'photo' => 'http://www.ilovegenerator.com/large/i-love-mohamed-132309992962.png', ]) ->button('View Invoice', $url) ->getResult(); return $tg; } }
Alternatives
For advance usage, please consider using telegram-bot-sdk instead.
License
The MIT License (MIT). Please see License File for more information.