- Working with Laravel Event System. Including Webhook routing and controller.
- Extensible Bot Client.
- Working with Laravel Notification System(LINE Notify)
- Including Socialite drivers(LINE Login, LINE Notify)
- PHP >= 8.0
- Laravel >= 9.0
- Basic : semver
- Drop old PHP or Laravel version :
+0.1
. composer should handle it well. - Support only latest major version (
master
branch), but you can PR to old branches.
composer require bogiesoft/laravel-line-sdk
Set up in LINE Developers console. https://developers.line.biz/
Create two channels Messaging API
and LINE Login
.
- Messaging API : Get
Channel access token (long-lived)
andChannel secret
. SetWebhook URL
- LINE Login : Get
Channel ID
andChannel secret
. SetCallback URL
LINE_BOT_CHANNEL_TOKEN=
LINE_BOT_CHANNEL_SECRET=
LINE_LOGIN_CLIENT_ID=
LINE_LOGIN_CLIENT_SECRET=
LINE_LOGIN_REDIRECT=
LINE_NOTIFY_CLIENT_ID=
LINE_NOTIFY_CLIENT_SECRET=
LINE_NOTIFY_REDIRECT=
LINE_NOTIFY_PERSONAL_ACCESS_TOKEN=
php artisan vendor:publish --tag=line-config
Recent Laravel uses a full namespace.
use Bogiesoft\Line\Facades\Bot;
Bot::replyText();
If you want to use the short Facade, you can add it manually in config/app.php
.
'aliases' => [
'LINE' => Bogiesoft\Line\Facades\Bot::class,
],
use LINE;
LINE::replyText();
- Create
Messaging API
channel in LINE Developers console. - Get
Channel access token (long-lived)
,Channel secret
and QR code. - A web server that can receive webhooks from LINE. Not possible on a normal local server.
composer create-project --prefer-dist laravel/laravel line-bot "8.*"
cd ./line-bot
composer require bogiesoft/laravel-line-sdk
Edit .env
LINE_BOT_CHANNEL_TOKEN=
LINE_BOT_CHANNEL_SECRET=
Add shouldDiscoverEvents()
to app/Providers/EventServiceProvider
/**
* Determine if events and listeners should be automatically discovered.
*
* @return bool
*/
public function shouldDiscoverEvents()
{
return true;
}
Publishing default Listeners
php artisan vendor:publish --tag=line-listeners-message
- Set
Webhook URL
in LINE Developers console.https://example.com/line/webhook
- Verify Webhook URL.
- Using QR code.
Bot returns same message.
MIT