2017-03-29 [長年日記]

_ [Heroku]LINE bot

結論、動いた。 とりあえずオウムを作りたいと思いLINE@とか登録する。

config.ruが必要らしいので作成。これはLINE関係なくてRackの仕様。 http://please-sleep.cou929.nu/deploy-sinatra-app-to-heroku.html

https://peixe.herokuapp.com/callback とWebhook URLを設定して叩く。 heroku logs によると 「404や 死ねや」→ 管理画面をよく見ると https://peixe.herokuapp.com/callback**.php** ってなってた。拡張子消したら404が200になった。俺が死ぬべき。 でもLINEがオウムしない。

https://peixe.herokuapp.com**:443**/callback と443をつけろという記事があったが不要だった。 でもLINEがオウムしない。

https://peixe.herokuapp.com/callback に対してGETの定義をしてブラウザで叩き、アプリが動いてることはわかった(ローカルでやっとけや) でもLINEがオウムしない。

アプリのログはheroku logs -tで眺められるがそこに独自ログ吐く方法が不明 $stdout.sync = true としとけばSTDERR.putsでもputsでも吐けて、heroku logs -t で眺められる。 でもLINEがオウムしない。

http://yone098.hatenablog.com/entry/2016/04/10/032451 設定したコールバックが呼ばれない

私は1日ほどして正常にコールバックが呼ばれるようになりましたが、作成当初は bot にLINE メッセージをしてもコールバックが呼ばれず、何が悪いのか検討もつかなかったです。 しかし翌日になると正常にコールバックが呼ばれるようになったので、LINE developer で Callback URL を設定しても即反映ではなさそうですので気をつけてください。

ああ、俺無罪か。 ログ吐いたらコールバック通ってることが確定。orz でもLINEがオウムしない。

APIを呼ぶにはWhitelistにIPを登録する必要があるので、Herokuなどで動かす事はできません。 LINE BOT をとりあえずタダで Heroku で動かすを見ると、Fixieっていうアドオンを使えばHerokuでも行けるそうです。

とか言ってたけど、なんやWhilteList空でええやんけ!!!しばくぞ!!!! 公式見てもoptionalやった。てへ。 Fixieもいらんのだろうな。→なくても動いた

_ [Heroku]毎日送信

cronのように毎日同じ時刻に送信する方法を探している。doc見る限りそんなAPIは無さげだが、Heroku Schedulerというアドオンがあった。まずは単純に1発送信するソースを用意。

require 'line/bot'  # gem 'line-bot-api'    
def client 
 @client ||= Line::Bot::Client.new { |config| 
config.channel_secret = *secret* #実際は埋め込み 
config.channel_token = *token* #実際は埋め込み 
}
end
message = {  
  type: 'text',  
  text: '怒髪天'
}  

response = client.push_message( uid, message)  

こんなsay.rbをdeployして、 heroku run bundle exec ruby say.rb とかすると配信された。後はtokenとかを埋め込まず環境変数とかで与えればよいか?

heroku config:set LINE_CHANNEL_SECRET=*シークレット* とかすると渡せた。よって上記ソースも config.channel_secret = ENV["LINE_CHANNEL_SECRET"] などと書ける。

単発は出来たので、スケジュールする。Heroku Schedulerに、 bundle exec ruby say.rb を登録。毎日決まった時間に配信されるようになった。

[tdiary]リンク元の表示を消す

今風に近づく43歳。


検索キーワード:

記事

カテゴリ

Amazon | Android | apache | Arduino | bash | bluetooth | Books | CakePHP | CakePHP3 | CakePHP4 | Chrome | Chromebook | CodeIgniter | CSS | Docker | Eclipse | Emacs | etc | Firefox | Flask | Gadget | git | Gnome | Google | Heroku | HTML | hugo | Internet | iPhone | IS01 | IS03 | Java | JavaScript | json | Kotlin | Laravel | LINE | magento | mysql | nginx | nodejs | Oops | PC | Perl | php | Python | Qt | Ruby | ruby | Shell | ssh | tdiary | twitter | ubuntu | unix | VirtualBox | Web | Windows | windows | WindowsMobile | WX5 | YAML | zsh | ここか | そば | つくる | つり | できごと | アクアリウム | ギター | セキュリティ | プリンタ | ベース | ボクシング | ポエム | マネー | メシ | ラズパイ | 仕事 | 作家 | 壮絶 | 妄想 | 忘れる | 料理 | | 暑い | 痛い | 社会 | 自転車 | | 車輪 | | 野球 | 銭湯 | 音楽 |

全部 : / 今日 :

近頃

  1. 社畜H (03-25)

links

profile

もっとヒゲ伸ばしたい。