第零步:环境安装
卡米狗系列文windows安装流程
ruby安装
rails安装
heroku & git安装
line bot申请(expatvision)
相关文件参考
ruby/rails安装
heroku安装
git相关
第一步:建立项目
首先你要找到一个放项目的文件夹,然后开启对应的小黑框,输入以下指令:
rails new alarm_demo
然后进入项目:
cd alarm_demo
第二步:安装套件
在rails中,可以透过修改Gemfile来安装套件,也可以使用指令来帮我们修改Gemfile,这次教怎么用指令安装套件。
bundle add line-bot-api
第三步:制作Service
请在app文件夹下新增services文件夹,然后在services文件夹下新增alarm_service.rb档案。
然后输入以下代码:
require 'line/bot'
class AlarmService
def client
@client ||= Line::Bot::Client.new do |config|
config.channel_secret = '你的line channel secret'
config.channel_token = '你的line channel token'
end
end
def run
message = {
type:“text”,
text:“现在时间:#{Time.current}赶快起床吧”
}
client.push_message('你的line user id',message)
end
end
如果你还没有注册line bot,你可以到line developer后台注册一个,你可以在line developer后台找到以下信息:
你的line channel secret
你的line channel token
你的line user id(通常在页面的最下方)
然后填入代码中。
第四步:测试Service
在你的小黑框(需在项目文件夹下)输入以下指令:
rails c
进入rails console后,输入以下代码:
AlarmService.new.run
如果你看到的是以下响应,那么你应该会在line bot那边收到信息了。
=> #<Net::HTTPOK 200 OK readbody=true>
如果你看到的是以下响应,那代表你的line channel token或者line channel secret打错了。
#<Net::HTTPUnauthorized 401 Unauthorized readbody=true>
如果你发现你打错了,在你修改代码之后,你可能会需要输入exit离开后再重新rails c进入rails console,否则你的修改可能无法正确加载。
如果你看到的是以下响应,那代表你的line user id或者message打错了。
#<Net::HTTPBadRequest 400 Bad Request readbody=true>
请详加检查。
第五步:建立Task
回到小黑框,输入以下指令建立rake tas
rails g task line alarm
建立好了之后你会发现在你的项目文件夹下的lib/tasks下多了一个档案line.rake,其内容如下:
namespace:line do
desc“TODO”
task alarm::environment do
end
end
我们将他修改成这样:
namespace:line do
task alarm::environment do
AlarmService.new.run
end
end
其实这就是把我们刚刚写好的程序填进去而已。
第六步:测试Task
回到小黑框,输入以下指令:
rails line:alarm
或者输入
rake line:alarm
这就是rake task,他的功能其实就是帮我们打开rails c之后再执行我们想要执行的程序。
有了rake task之后就能够使用排程去触发line bot了。
第七步:发布到Heroku(zflwx)
在发布之前,因为Gemfile没有sqlite3,所以我们需要调整一下Gemfile,请将以下程序:
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
改为
# Use sqlite3 as the database for Active Record
group:development,:test do
gem 'sqlite3'
end
group:production do
gem 'pg'
end
建立一个heroku新项目:
heroku create你的项目名称
其中,项目名称只能用英文、数字和减号。好了之后上传代码:
git add .
git commit -m“line alarm”
git push heroku master
第八步:测试Heroku
上传完成后使用以下指令来测试:
heroku run rails line:alarm
如果有收到来自line bot的信息就表示成功了
第九步:安装Heroku排程器
在Heroku上要定期执行程序的话,需要安装addons,我们需要的addons叫做scheduler,他是免费的,所以可以安心使用。
在项目文件夹下使用以下指令进行安装:
heroku addons:create scheduler:standard
可以输入以下指令查看说明文件(全英文)
heroku addons:docs scheduler
第十步:设定Heroku排程
安装好了之后我们需要设定排程,Heroku其实有做让我们设定排程的后台,输入以下指令开启后台。
共同學(xué)習(xí),寫(xiě)下你的評(píng)論
評(píng)論加載中...
作者其他優(yōu)質(zhì)文章
100積分直接送
付費(fèi)專(zhuān)欄免費(fèi)學(xué)
大額優(yōu)惠券免費(fèi)領(lǐng)