まえちゃんろぐ

日々の生活の中での気付き、学んだこと、体験したことをアウトプットするブログ(雑記多めです)| プログラミング 本 ワークアウト 茶道

Ruby製Webフレームワーク「Sinatra」で LINE Messaging API を試す

time 2018/04/14

Ruby製Webフレームワーク「Sinatra」で LINE Messaging API を試す

RubyでLINEボットを作ってみる。

sponsored link

概要

GitHubに公開されているLINE公式のSDKを利用して、オウム返しボットを作成します。

この記事を読み進めるにあたって

この記事は「LINE developer」でのチャンネル作成とアクセストークンの取得が既に完了している、またHerokuへの登録と「Heroku CLI」が既に導入されていることを前提とします。

開発環境、使用ツール

開発環境及び主な使用ツールは以下になります。

  • Ruby: ver 2.4.2
  • Sinatra: ver 2.0.1
  • Bundler: ver 1.15.4
  • line-bot-sdk: ver 1.2.2
  • Vagrant: ver 1.9.1
  • CentOS: ver 6.7 (Final)
  • PaaS: Heroku

Sinatra でアプリケーションを作る

SinatraはRailsよりも軽量でキャッチアップも容易なRuby製WebアプリケーションDSLです。

Sinatraの使い方は公式のドキュメントを参考にしました。

アプリケーションのプロジェクトを作成

アプリケーションに関連するファイルを設置するディレクトリを作成します。

Gemfileの作成

line-bot-sdkをインストールするためにGemfileを作成します。

Gemfileの編集、bundle install 実行

Gemfileの編集を以下のように編集します。

bundle installを実行し、Gemをインストールします。

アプリケーションのメインコード

オウム返しをしてくれるコードを作成します。

上記で作成したファイルを以下のように編集します。

Heroku へデプロイする準備

Herokuへアプリケーションを作成します。

CLIからHerokuへログインし、Herokuアプリケーションを作成後、環境変数を追加します。

「.gitignore」ファイルを作成し、以下を参考に編集します。

アプリケーションをHerokuへデプロイします。

LINE developer の設定

「LINE developer」の管理画面からチャンネルの詳細ページへ遷移し「Webhookの設定」を行います。

「Webhookの送信」の値を「利用する」に変更、「Webhook URL」には「今回作成したHerokuアプリケーション名.herokuapp.com/callback」を入力します。

あとは、チャンネルの詳細ページにある「QR コード」からを今回作ったチャンネルを友達追加します。

おわり

RubyのSDKをざっと見ましたが、プッシュ通知用のメソッドが見当たらず。

もしプッシュ通知を実装したい場合はRuby以外の選択が望ましいです。以前、Pythonでプッシュ通知を実装した記事を書いたので載せておきます。

参考記事

記事内画像

Paul Jarvis on Unsplash

販売中チケット

プログラミング、Webサービスの作り方教えます

自分のスキルを販売しております。お困りの方はご遠慮なくご連絡頂ければと思います。

down

コメントする




お知らせ

スポンサードリンク

書いてる人

maechan

maechan

ベンチャー企業、フリーランス、スタートアップを経験。開発業務、人事業務に従事していました。現在は農業系スタートアップ企業でエンジニアとして働いています。リモートワークをしているノマドサラリーマンです。詳しいプロフィールはこちら。 [詳細]

販売中チケット

プログラミング、Webサービスの作り方教えます 一人で悩まず!お気軽にご相談ください!

その他のチケットはこちら

Instagram