はじめに
Ruby勉強中で、何かを作りたかった。
そこで、流行りのLINE Message APIを使い、簡単なWebアプリを作る事にした。
1.概要
公式リファレンスに記載されている、天気予報を表示するBotを作成してみました。
2.環境
Ruby 2.3.0
Heroku
Amazon S3 ※画像ファイル配置
Weather Hacks API
3.成果物
4.ソースコード
GitHub ifufhrjeijg/line-weather-botで公開しています。
(1)postback判定
main.rb
events.each { |event|
case event
when Line::Bot::Event::Message # Messageの場合
case event.type
when Line::Bot::Event::MessageType::Text # Textの場合
message = get_city_list(event.message['text'])
else # Text以外の場合
message = get_desc_message
end
when Line::Bot::Event::Postback # Postbackの場合
city = event['postback']['data'].split("=")[1]
message = get_wheather_forecast(city)
else # Message, Postback以外の場合
message = get_desc_message
end
Messageイベント判定と同階層で、Postbackイベントの判定を入れている。
参考
公式リファレンス:https://devdocs.line.me/ja/
公式ライブラリ:https://github.com/line/line-bot-sdk-ruby
フリー素材:http://www.irasutoya.com
最後に
初投稿で、何を書くべきかよく分かりませんでした。
ただ、この記事が何かしら参考になったら幸いです。