jose13 / larave-linebot-lottery
line-bot lotteryCrawler
Requires
- php: ^7.4
- ext-http: *
- ext-json: *
- fabpot/goutte: ^4.0
- fideloper/proxy: ^4.4
- fruitcake/laravel-cors: ^2.0
- guzzlehttp/guzzle: ^7.0.1
- laravel/framework: ^8.12
- laravel/tinker: ^2.5
- linecorp/line-bot-sdk: ^7.0
- symfony/browser-kit: ^5.3.4
- symfony/css-selector: ^5.2
- symfony/dom-crawler: ^v5.3.4
Requires (Dev)
- facade/ignition: ^2.5
- fakerphp/faker: ^1.9.1
- laravel/sail: ^1.0.1
- mockery/mockery: ^1.4.2
- nunomaduro/collision: ^5.0
- phpunit/phpunit: ^9.3.3
README
说明
通过Line bot和爬虫应用,可以在Line中获取彩票号码(最新球号或指定日期球号),以及基本可自定义的对话回应功能。
准备工作
一个HTTPS网址
本人使用ngrok作为临时的测试网址。
注册并设置一个Messaging API频道
前往Line Developers创建一个新的Messaging API频道,可以参考官方教程。
创建完成后进入频道页面
记下频道页面中Basic setting
选项里,Channel secret
产生的数值。
记下频道页面中Messaging API
选项里,Channel access token
产生的数值。
频道页面中Messaging API
选项里,设置Webhook
将Line回应设置成下图
创建一个Laravel项目
打开.env
设置记下的Channel secret
及Channel access token
:
LINE_BOT_CHANNEL_ACCESS_TOKEN=024IcFhCPF.....
LINE_BOT_CHANNEL_SECRET=cd2a0b42a7835.....
注意:
LINE_BOT_CHANNEL_ACCESS_TOKEN
及LINE_BOT_CHANNEL_SECRET
名称需一致不得更改
安装
使用Composer安装套件:
composer require jose13/larave-linebot-lottery
发布设置文件(可选择性发布,将使用默认文件呈现功能项):
php artisan vendor:publish --provider=Jose13\\LaravelLineBotLottery\\LinebotServiceProvider
开始使用
立即使用
如果选择不发布设置文件,于安装步骤结束后即可将自己创建的
Line bot
加入Line好友开始使用。
(使用过程中也可发布设置文件进行自定义修改)
自定义设置文件后开始使用
发布设置文件后,至
config/LineBotServiceConfig.php
进行自定义调整,完成后即可将自己创建的Message Api Line bot
加入好友开始使用。
自定义各聊天室里(User(个人)、Group(群组)、Room(群聊))messageType是否开启服务。
true
为开启 false
为关闭功能
注意:
- 目前套件仅支持
TEXT
文字消息自动回应功能。其余功能设为true
不会有任何作用- 关闭
TEXT
文字消息服务,等同于不开启QuickReplyButton
功能按钮
'MessageTypeSupportChat' => [ 'UserChats' => [ MessageType::TEXT => true, MessageType::TEMPLATE => false, MessageType::IMAGEMAP => false, MessageType::STICKER => false, MessageType::LOCATION => false, MessageType::IMAGE => false, MessageType::AUDIO => false, MessageType::VIDEO => false, MessageType::FLEX => false, ], 'GroupChats' => [ .... ], 'RoomChats' => [ .... ] ]
自定义各聊天室里,消息自动回应内容
'QuickReplyButtonName'
: 开启QuickReplyButton
按钮关键字,可自定义。'Available'
: 各房间类型启用或关闭QuickReplyButton
按钮功能,false
关闭状态下,Line输入QuickReplyButtonName
关键字,将不会有任何反应。'ResponseContent'
: 自定义各房间类型的文字回复。
'TextResponse' => [ 'QuickReplyButtonName' => '開啟服務', 'Available' => [ 'UserChats' => true, 'GroupChats' => true, 'RoomChats' => true, ], 'ResponseContent' => [ 'UserChats' => [ 'hello' => 'hi', '吃飽沒' => '吃了一公斤的鐵了!' ], 'GroupChats' => [ 'hello' => '你好阿', '吃飽沒' => '我吃了10%的用電量了' ], 'RoomChats' => [ 'hello' => 'YO', '吃飽沒' => '我是機器人不會餓!' ], ] ],
选择各聊天室开放的按钮功能
目前支持的功能按钮清单:
最新威力彩
最新大乐透
最新539
最新三种种游戏
近3期三种种游戏
近5期威力彩
近5期大乐透
近5期539
近10期三种种游戏
指定威力彩日期
指定大乐透日期
指定539日期
启用功能设为true
,关闭设为false
'QuickReply' => [ 'UserChats' => [ '最新威力彩' => true,//true or false '最新大樂透' => true, '最新539' => true, '最新三種遊戲' => true, '近3期三種遊戲' => true, '近5期威力彩' => true, '近5期大樂透' => true, '近5期539' => true, '近10期三種遊戲(純球號)' => true, '指定威力彩日期' => true, '指定大樂透日期' => true, '指定539日期' => true, ], 'GroupChats' => [ ...... ], 'RoomChats' => [ ...... ] ]
演示
欢迎信息、文字回复、QuickReply按钮功能开启
QuickReply.mp4
一般请求信息服务按钮
default.mp4
指定日期请求服务按钮