ruboty-lineでプッシュ通知をする
現状・課題
rubotyをLine上で動かしている。以前はslack上でruboty-cronを使って定期的にプッシュ通知を出せていたのだが、ruboty-lineでは同じように出来ない。
rubotyでは返信、通知どちらも同じ仕組みで動いているのだが、Lineではトークメッセージが送られて返信するAPIとプッシュ通知のAPIが別なことが理由だ。
実現したいこと
rubotyでプッシュ通知を行う
実現方法
ruboty-cronとruboty-lineを使う。
ruboty-cronは修正せずに、ruboty-lineの修正のみで対応する。
トークメッセージの受信は、Lineで返信するためのトークンを保持しているので、トークンの有無で使用するLineのAPIを変更する。
ToDo
Lineのプッシュ通知のAPIを呼び出せるようにする。
トークメッセージの受信とプッシュ通知を判定して動作を変える。
スマホのない生活
「Freetel raijin を購入 - What one likes, one will do well 〜好きこそ物の上手なれ〜」で書いたように、freetelのpriori3からraijinに乗り換えた。
ただsimカードが標準simだったため、micro or nano simのraijinは使えなかった。そのため標準simからmicro simのサイズ変更の手続きを取ったのだけれども、申し込んでmicro simの設定が終わると、今使っている標準simが使えなくなる期間があるらしい。(ちなみにsimカードはDMMモバイルを使っている)
そのため外出先でスマホが使えない日が2日あった。家にいる間はwifiを使用しているため問題ないのだが、仕事で家にいない間はスマホが使えなかったので、実質1日スマホがない生活だった。
「スマホがないと生きられない」と言う話を聞くが、私の場合は特に問題がなかった。ただ家族に何かあった場合に連絡が取れないと困るので、何かあったら会社に電話できるように会社の電話番号を教えた。
問題があったと言えば、いつもは通勤電車でブログを書いてアップしているのだが、今日はできなかったので、1日1ブログが達成できるか心配だったけれど、まさに今書いている。何とか今日中に記事をアップできそうだ。
問題どころかスマホが使えず、無駄なネットサーフィンもできなかったため、前に買ったWEB+DB PRESSを読める時間がとれてとても充実した。
私はそれほどスマホ中毒ではないことが証明されたわけだが、思い立った時に連絡取れないのは少し辛いと思った。1日ぐらいは問題ないけれど、1週間だと困ることも多いと思う。
ちなみに無事micro simが届いて、raijinでsimも問題なく動作しているようだ。(電話がかからない等の不具合があると聞いていたので心配だった。)
ビルド番号は、FREETEL_FTJ162E_FPC_20170410で、不具合が解消してないものっぽいが、人によって大丈夫な人と大丈夫じゃない人がいるようなので、運が良かったのかもしれない。
外出先では使ってないので、しばらく使ってみて様子を見ようと思う。
プログラミングするなら公式ドキュメントを読もう
今のプログラミングの進化は早い。1年前に使っていた技術は進化してる。それに伴いAPIも変わっており、メジャーバージョンアップしていると互換性がなかったりする。
そこで重要になってくるのが公式ドキュメント。最新の情報が盛り込まれており一番正しい。
プログラミングをしてるとネットで調べて、コピペ。試行錯誤繰り返して何とか動かすと言うのが多い。そんな時はQiitaやStack Overflowが頼りになる。と言う感じだったが最近は全く違うと思う。
投稿した時は最新の情報だったかもしれないが、1年経つと役に立たない。むしろ参考にした部分は合ってるはずと思い込み、害になる場合もある。
最近よく出会うのは、ネットの情報通りにやったのに動かない。一通りハマったあとに、APIのインターフェイスが変わっていたり、モジュールのサポートが終っていたりすることがわかる。結局、公式ドキュメントに戻って、最初からやる。と言った感じた。
プログラミングで新しいこと、もしくは昔にやったことをまたやる場合は、まず公式ドキュメントでチュートリアル。その上で開発。APIドキュメントを読む。これが大切だ。
ヒントととしてQiitaとか使うのもありかもしれないが、これからは基本、公式ドキュメントオンリーでいこうと思う。
Freetel raijin を購入
freetel の priori3 を使っているのだけど、スペック不足を感じてきたので新しいスマホ
freetel raijin を買った。
priori3 自体はコストパフォーマンス最高で普通に使う分には不満などないのだけど、以下3点の理由でスペック高いスマホにしようと思った。
1点目は容量が少ないこと。8GBしかなくアプリをいくつかいれるとすぐに容量不足になってしまう。SDカードは多いものを使っているのだけど、アプリのインストールができなくなる。一部はSDカードに入れることも可能だけど、本体にしか入らないアプリもある。
ブラウザだけでも事足りることが多くなったけど、スマホでの使用を前提にしているアプリは使いやすいことが多い。
特にスマホでプログラミングをしたいと思っており、codeanywhere のアプリを入れたいのが大きかった。
2点目は画面の大きさ。画面は小さい方がよいと思っている方だけど、プログラミングをやろうと思ったら画面が大きい方がいい。 priori3 の携帯性の良さを失うのは残念だけど、スマホでプログラミングをするためだ。
3点目は価格。定価25,000円が15,000円で買えた。実は priori3 も同じぐらいで買った。同じ値段でスペックが格段に違うので、かなりお得だ。
ちなみにスペックの変化としては、以下だ。
CPU 4コア → 8 コア
ROM 8GB → 64GB
RAM 1GB → 4GB
ディスプレイ 4.5インチ → 5.5インチ
バッテリ 2,100mAh → 5,000mAh
カメラ 800万画素 → 1,600万画素
他にもスペックアップしており楽しみだ。
そんな高スペックのスマホが安くなっているのは訳があって不具合報告も多数。電話がつながらないとか、バッテリの減りが早いとか、カメラはイマイチとか。不具合報告の多さから購入をためらっていたけど、不具合の一部を修正するアップデートがなされたのと、人によっては不具合が発生せず使えてそうなのとで、安いうちに買ってみるかと購入を決めた。
購入してすぐに届いたのだが、simカードのサイズが違っており、まだ使い始められてない。使用してみての感想はまた別の機会に。
クラウドストレージにパソコンのデータを
今amazonプライム会員になっていて、写真のクラウドストレージのプライムフォトが無料で使えるらしい。
少し前はネット上にファイルとか置くのはセキュリティ上危険だと思っていた。全く安全だとは思ってないのだけど、自分のパソコンのセキュリティを考えると、ちゃんとした企業に任せる方が安全だと思う。
さらにパソコンが壊れたときのバックアップを考えると、クラウドストレージに置いておいた方が安心だ。
ネットに繋がっていればパソコンでもスマホでも見れるので利便性も高い。
無料なら使わない手はないと思う。
発展させてパソコンのデータはgoogleドライブなどに格納しておくのが良いと思っている。無料枠で15Gあるので、一部は使っているのだがパソコンのデータ全ては入らない。
1Tぐらいは必要になるので月額の維持費もそれなりにかかる。
まずはプライムフォトで写真の管理から始めて、少しずつ拡張していこうと思う。