Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Simの容量が気になって安眠できない

1,296 views

Published on

LT駆動開発 26 - Extended 報告会 後朝祭
にて、Zero Simの容量警告するスクリプトを作ったことを発表しました。

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Simの容量が気になって安眠できない

  1. 1. SIMの容量が気になって 安眠できない!! LT駆動開発 26 - EXTENDED 報告会 後朝祭 AKIRA345
  2. 2. 個人的な話ですが・・・ • 一時期AndroidなNexus5(SIMフリー)を使っていました。 • ほぼデータ通信しかしないので、OCNのMobileONEを契約。 • ほぼ速度が出ない。 • UQのWiFiサービスにも加入していましたが、途中からPremiumなAPは有料化。 APが激減。 • 現在は母親のスマホに。
  3. 3. 格安SIMといっても月額が地味に痛い・・ • 母親は外にスマホを持ち出さない。(普段はガラケー) • 持ち出すのは、数か月に1度程度。地図を調べるのに使う。 • SMSオプションつけていないので、電池が持たないのも持ち出さない一因 ほぼ使わないのに、月980円は地味に痛い。 とはいえ、全く使わないわけではないので、完 全にWiFi専用はちょっと・・・
  4. 4. そんな自分にぴったりなものが出た!!
  5. 5. 特徴 • データ通信専用SIM • 初期手数料は本の代金(?) • 0MBから499MBまでは毎月無料 • 500MBから2GBまでは100~1500円の従量課金 • 2GB~5GBは1600円 • 下り最大225Mbps •3か月連続でデータ通信がない場合、自動解約される。
  6. 6. 容量制限は何とかなる。が・・・ • Androidにはデータ通信料でクオーターを掛ける仕組みがある。 • データ通信の上限を450MBにセット • これで使い過ぎによる課金は止めれる。 • 3か月未利用はどうするか? • どうやら解約前の通知はないらしい。 • 通信量を確認するアプリはない。 • ポータルサイトで確認なのだが、お世辞にも作りがいいとは言えない。 • てか、会員サイトのID、PWがSIMカード上にあるとは思わなかっ た(汗
  7. 7. 先月のデータ使用量とか、過去のデータ使用量 の表示はない(汗
  8. 8. アプリが出るでしょう。 • まぁあれだけ人気があったから、そのうちアプリ出るでしょう。 っとおもってたけど、そうでもなかった。 • いちいち会員サイトに行くのは面倒。 • しかも無駄に通信をチェックしているので、 通常アクセスでも何かの拍子に不正アクセス扱いされる(汗
  9. 9. 仕方がないので自作する・・・ • とはいえ、Androidアプリなんて作れるわけもなく。 • ようはサイトを定期的にチェックして、未利用が3か月続いたら警告メール を送ればいい。 • そういえば、Hiroshima.rbの最初のころ、ガラケーのIPアドレスを取得するスクレイピ ングツール作ったなぁ。 • 当時はHprincotというのを使用。今回はForm周りをmecanize、パースはNokogiri を使用。 • 当時はRuby1.8、今はRuby2.2で、HprincotではRuby2系の例が見当たらず・・ • 会員サイトが親切にも先月の通信量が表示されず、過去の通信量が見れない仕様。 そのうえ、当日のデータも前日のデータも集計に時間がかかるとのことなので、 一昨日のデータから前月の通信量を求める。 • どうせ作るなら、今後、応用が利くようにDBやらMailやら一通り投入
  10. 10. 一応完成。 • https://gist.github.com/akira345/e6972ae0577c6aaeb0649c8 e051349ff
  11. 11. 分かったこと • SQlite3を使う際、ActiveRecordを使わないとプリペアドクエリ使えないか な?と思っていたけど、そんなことはなかった。 • が、地味にプリペアドでSELECT文発行した後の結果を取得するのが、ドキュメント見 ても、結果配列が返ってくるはずが、DBオブジェクトが返ってきて、.eachをつけないと いけないことに気づくまで数時間を無駄にした。 • ActiveSupportが便利。3日前とか自力で計算していたのが懐かしい・・・ • メールを扱う際、これの意味がイマイチ分からず。VBでいうWITHみたいな もの? mail = Mail.new do from mail_from to mail subject 'Zero Sim 解約警告' body '2か月間使用容量が0MBです。3か月未利用だと自動解約されます。 '
  12. 12. これで一安心

×