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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
akira345
June 11, 2016
Technology
0
89
Simの容量が気になって安眠できない
LT駆動開発 26 - Extended 報告会 後朝祭
にて、Zero Simの容量警告するスクリプトを作ったことを発表しました。
akira345
June 11, 2016
Tweet
Share
More Decks by akira345
See All by akira345
えれくら!〜電気電子工作系制作・交流会〜#29
akira345
0
16
脱・同期処理!マイクロサービスにおける負荷分散の勘所
akira345
0
96
AWSデプロイツール紹介
akira345
0
56
40歳でやったこと
akira345
0
34
回路を読むために必要なこと
akira345
0
25
おれのAWSがこんなに辛い訳がない!!
akira345
0
31
Dockerを触ってみよう
akira345
0
94
アラフォー世代が基板を作ってみた(公開用)
akira345
0
150
ESP-WROOM-02でプチIoT
akira345
0
120
Other Decks in Technology
See All in Technology
Azure SRE Agent x PagerDutyによる近未来インシデント対応への期待 / The Future of Incident Response: Azure SRE Agent x PagerDuty
aeonpeople
0
270
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
270
月間数億レコードのアクセスログ基盤を無停止・低コストでAWS移行せよ!アプリケーションエンジニアのSREチャレンジ💪
miyamu
0
660
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
DEVCON 14 Report at AAMSX RU65: V9968, MSX0tab5, MSXDIY etc
mcd500
0
240
セキュリティ はじめの一歩
nikinusu
0
1.4k
Mosaic AI Gatewayでコーディングエージェントを配るための運用Tips / JEDAI 2026 新春 Meetup! AIコーディング特集
genda
0
140
Amazon ElastiCacheのコスト最適化を考える/Elasticache Cost Optimization
quiver
0
370
Azure Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話/jat08
thara0402
0
110
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
340
Amazon Bedrock AgentCore 認証・認可入門
hironobuiga
2
480
AI推進者の視点で見る、Bill OneのAI活用の今
sansantech
PRO
2
310
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.5k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Bash Introduction
62gerente
615
210k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
310
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
110
Paper Plane
katiecoart
PRO
0
46k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
53
Information Architects: The Missing Link in Design Systems
soysaucechin
0
750
The Pragmatic Product Professional
lauravandoore
37
7.1k
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
Thoughts on Productivity
jonyablonski
74
5k
Evolving SEO for Evolving Search Engines
ryanjones
0
110
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
これで一安心