htbradar

このエントリは Go Advent Calendar 2015 その3 の記事です。

普段iPhoneでHBFavを使ってるんですけど、Macで作業してる時にはMacに通知が来てほしいと思ってたんですね。 HBFav for Desktopがあればそれが一番なんですけど、どうもしばらくは公開されそうにないので通知システムだけ作ってしまいました。 Githubで公開しました。 使用方法はちょっとややこしいです。

Google Chromeしか対応していません。

  1. Google Developer Consoleからプロジェクトを作ります。
  2. APIのところから、Google Cloud Messaging for Android を有効にします。
  3. プロジェクト番号をconstant/manifest.jsongcm_sender_idに設定します。
  4. 認証情報->認証情報の追加からAPIキー->サーバーキーを追加します。
  5. サーバーキーをmain.goapiKeyに設定します。
  6. Herokuに登録してCLIからherokuコマンドを使えるようにします。
  7. このリポジトリのディレクトリでheroku createします。
  8. git push heroku masterしてから、heroku openして、画面に文字列が出現するまで更新します(多分一回で大丈夫のはずです)。通知は許可してください。
  9. constant/sw.jsfetchのURLを書き換えます。
  10. 画面に文字列が出現したら、その文字列をリポジトリ内のmain.gorequestIDのところに設定します。
  11. はてなブックマークの設定の開発者向けからWeb Hookの設定をします。URLをhttps://****.herokuapp.com/hookに、キーも何か設定します。
  12. Web Hook に設定したキーを、main.gohookKeyに設定します。
  13. 変更をコミットしてgit push heroku masterします。

以上で完了です。

概要としては、はてなからのWeb HookをHerokuで受け取って、Google Cloud Messagingを使ってPush通知するシステムです。 うまく通知されない時は、heroku logsとかして原因を推測してみてください。 たまにあるのが、そもそもはてなからWebHookが来てないってのですね。これはどうしようもないです。 通知に失敗してたりするときはログに何か書いてあるかもしれないです。

通知のたびに、「このサイトはバックグラウンドで更新されました」って出るのどうにかしたい。

comments powered by Disqus