Skip to content

Telegram Notifications Driver

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.md
Notifications You must be signed in to change notification settings

mavinoo/telegrambot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telegram Notifications Channel Plus for Laravel 5.3 [WIP]

Latest Version on Packagist Software License Total Downloads

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.

About

Telegram Notifications Driver

Resources

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.md

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages