2016-04-26

LINE BOT APIをまずはできるところまで試す

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
LINE BOT APIが利用できるようになり、いろんな方が試しているようなので試してみることにしました。

利用を開始する手順は以下が参考になりました。
https://www.panzee.biz/archives/9115
(今は上限に達して登録はできないようです)

APIを利用するためにはメッセージを受け取るcallbackの設定が必要なのですが、インターネットで受け取れるようなサーバを持っていないので、callbackの設定なしで自分のローカル環境だけでできるところまでやってみることにします。

私がやりたいなぁと思っていることは、なんらかの情報をグループチャットに通知するだけで、BOTでよくある対話的なことは、まぁ後でもよいかなぁと思っているのでcallbackなしでいろいろできると便利です。

ただ結論から言うとcallbackを用意しないと自分のプロファイルを取得することしかできなかったです。なのでとりあえず利用できるということが確認できることぐらいしか今はできないようです。

以下のような感じで試せます。

まずはAPIをたたくもとのIPアドレスをホワイトリストに登録が必要なので以下などでIPアドレスを調べてホワイトリストに登録します。
https://www.cman.jp/network/support/go_access.cgi

ここまで準備できて、linuxを利用できるならばcurlで以下のようにすれば、とりあえず確認ができます。

curl -H "X-Line-ChannelID: 自分のChannel_ID" -H "X-Line-ChannelSecret: 自分のChannel _Secret" -H "X-Line-Trusted-User-With-ACL: 自分のMID" -XGET https://trialbot-api.line.me/v1/profiles?mids=自分のMID

rubyでたたくならば以下のような感じです。

# coding: utf-8
require 'rest-client'
require 'json'
ID = "Channel ID"
SECRET = "Channel Secret"
MID = "MID"
response = RestClient::Request.execute(
:method => :get,
:url => "https://trialbot-api.line.me/v1/profiles?mids=#{MID}",
:headers => {"X-Line-ChannelID" => ID,
"X-Line-ChannelSecret" => SECRET,
"X-Line-Trusted-User-With-ACL" => MID}
)
json = JSON.parser.new(response.to_str)
hash = json.parse()
p hash
puts hash["contacts"][0]["displayName"]

以下が参考になりました。
http://ola.kironono.com/entry/2016/04/09/205251

できるのがこれだけだと寂しいのでcallbackできるものを準備できるようにしようと思います。


0 件のコメント: