Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Simの容量が気になって安眠できない
Search
akira345
June 11, 2016
Technology
0
84
Simの容量が気になって安眠できない
LT駆動開発 26 - Extended 報告会 後朝祭
にて、Zero Simの容量警告するスクリプトを作ったことを発表しました。
akira345
June 11, 2016
Tweet
Share
More Decks by akira345
See All by akira345
脱・同期処理!マイクロサービスにおける負荷分散の勘所
akira345
0
66
AWSデプロイツール紹介
akira345
0
40
40歳でやったこと
akira345
0
12
回路を読むために必要なこと
akira345
0
4
おれのAWSがこんなに辛い訳がない!!
akira345
0
12
Dockerを触ってみよう
akira345
0
73
アラフォー世代が基板を作ってみた(公開用)
akira345
0
130
ESP-WROOM-02でプチIoT
akira345
0
94
トランジスタの働き(超入門編)
akira345
0
5
Other Decks in Technology
See All in Technology
MCP認可の現在地と自律型エージェント対応に向けた課題 / MCP Authorization Today and Challenges to Support Autonomous Agents
yokawasa
5
2.3k
Amazon Qで2Dゲームを作成してみた
siromi
0
140
人に寄り添うAIエージェントとアーキテクチャ #BetAIDay
layerx
PRO
9
2.2k
Jamf Connect ZTNAとMDMで実現! 金融ベンチャーにおける「デバイストラスト」実例と軌跡 / Kyash Device Trust
rela1470
1
200
「Roblox」の開発環境とその効率化 ~DAU9700万人超の巨大プラットフォームの開発 事始め~
keitatanji
0
120
専門分化が進む分業下でもユーザーが本当に欲しかったものを追求するプロダクトマネジメント/Focus on real user needs despite deep specialization and division of labor
moriyuya
1
1.3k
ファッションコーディネートアプリ「WEAR」における、Vertex AI Vector Searchを利用したレコメンド機能の開発・運用で得られたノウハウの紹介
zozotech
PRO
0
290
✨敗北解法コレクション✨〜Expertだった頃に足りなかった知識と技術〜
nanachi
1
700
テストを実行してSorbetのsigを書こう!
sansantech
PRO
1
100
Google Cloud で学ぶデータエンジニアリング入門 2025年版 #GoogleCloudNext / 20250805
kazaneya
PRO
22
5.2k
AWS DDoS攻撃防御の最前線
ryutakondo
1
150
Strands Agents & Bedrock AgentCoreを1分でおさらい
minorun365
PRO
7
320
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.5k
GraphQLとの向き合い方2022年版
quramy
49
14k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Agile that works and the tools we love
rasmusluckow
329
21k
Facilitating Awesome Meetings
lara
54
6.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Scaling GitHub
holman
461
140k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
It's Worth the Effort
3n
185
28k
The Language of Interfaces
destraynor
158
25k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Transcript
SIMの容量が気になって 安眠できない!! LT駆動開発 26 - EXTENDED 報告会 後朝祭 AKIRA345
個人的な話ですが・・・ • 一時期AndroidなNexus5(SIMフリー)を使っていました。 • ほぼデータ通信しかしないので、OCNのMobileONEを契約。 • ほぼ速度が出ない。 • UQのWiFiサービスにも加入していましたが、途中からPremiumなAPは有料化。 APが激減。
• 現在は母親のスマホに。
格安SIMといっても月額が地味に痛い・・ • 母親は外にスマホを持ち出さない。(普段はガラケー) • 持ち出すのは、数か月に1度程度。地図を調べるのに使う。 • SMSオプションつけていないので、電池が持たないのも持ち出さない一因 ほぼ使わないのに、月980円は地味に痛い。 とはいえ、全く使わないわけではないので、完 全にWiFi専用はちょっと・・・
そんな自分にぴったりなものが出た!!
特徴 • データ通信専用SIM • 初期手数料は本の代金(?) • 0MBから499MBまでは毎月無料 • 500MBから2GBまでは100~1500円の従量課金 •
2GB~5GBは1600円 • 下り最大225Mbps •3か月連続でデータ通信がない場合、自動解約される。
容量制限は何とかなる。が・・・ • Androidにはデータ通信料でクオーターを掛ける仕組みがある。 • データ通信の上限を450MBにセット • これで使い過ぎによる課金は止めれる。 • 3か月未利用はどうするか? •
どうやら解約前の通知はないらしい。 • 通信量を確認するアプリはない。 • ポータルサイトで確認なのだが、お世辞にも作りがいいとは言えない。 • てか、会員サイトのID、PWがSIMカード上にあるとは思わなかっ た(汗
先月のデータ使用量とか、過去のデータ使用量 の表示はない(汗
アプリが出るでしょう。 • まぁあれだけ人気があったから、そのうちアプリ出るでしょう。 っとおもってたけど、そうでもなかった。 • いちいち会員サイトに行くのは面倒。 • しかも無駄に通信をチェックしているので、 通常アクセスでも何かの拍子に不正アクセス扱いされる(汗
仕方がないので自作する・・・ • とはいえ、Androidアプリなんて作れるわけもなく。 • ようはサイトを定期的にチェックして、未利用が3か月続いたら警告メール を送ればいい。 • そういえば、Hiroshima.rbの最初のころ、ガラケーのIPアドレスを取得するスクレイピン グツール作ったなぁ。 •
当時はHprincotというのを使用。今回はForm周りをmecanize、パースはNokogiriを使用。 • 当時はRuby1.8、今はRuby2.2で、HprincotではRuby2系の例が見当たらず・・ • 会員サイトが親切にも先月の通信量が表示されず、過去の通信量が見れない仕様。 そのうえ、当日のデータも前日のデータも集計に時間がかかるとのことなので、 一昨日のデータから前月の通信量を求める。 • どうせ作るなら、今後、応用が利くようにDBやらMailやら一通り投入
一応完成。 • https://gist.github.com/akira345/e6972ae0577c6aaeb0649c8e051349ff
分かったこと • 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か月未利用だと自動解約されます。' end
これで一安心