同じアンテナにつながった人にだけ届くスマホアプリ「基地局メッセンジャー」|親子で挑んだハッカソン作品
ProtoPedia の作品「基地局メッセンジャー」を2人のMCが初心者目線で紹介。スマホがいまつながっている携帯電話のアンテナ(基地局)の番号が同じ人どうしに、メッセージをまとめて届けるAndroidアプリです。番号を読み取ってサーバーに伝え、同じ番号の人にだけ配る3ステップの仕組み、隣の人でも届かないことがある“運”の楽しさ、サーバー代を無料に収めるための5回の書き直し、そして高校生の息子さんとWebエンジニアのお母さんの親子チームが発表直前に完成させたハッカソンの物語まで。
チャプター
0:00オープニング0:20同じアンテナの人に、まとめて届く1:02スマホは、つないでいるアンテナの番号を知っている2:40流れは3ステップ4:36サーバー代は、無料の範囲で6:002日間のハッカソンで制作7:50その場所だけの情報を、その場所の人へ8:55エンディング
文字起こし(90行)
- BANNO
- ゆっくりばんのです。
- HIGEDARUMA
- ゆっくりひげだるまです。
- BANNO
- 今日もProtoPediaから、とびきり面白い作品を紹介していきますよ。
- HIGEDARUMA
- 今日紹介するのは、基地局メッセンジャー。
- BANNO
- 基地局って、聞いたことはあるけど、正直よく分からないです。
- HIGEDARUMA
- 街のビルの屋上や鉄塔に立っている、携帯電話のアンテナのことなんです。
- BANNO
- ああ、あのアンテナ。それとメッセンジャーが、どうつながるんですか?
- HIGEDARUMA
- 同じアンテナにつながっている人全員に、メッセージを送れるアプリなんですよ。
- BANNO
- 知らない人にも届くってことですね。今日はそんな不思議なアプリの話です。
- BANNO
- そもそも、スマホって、いつもアンテナにつながっているんですか?
- HIGEDARUMA
- はい。電話もネットも、近くのアンテナのどれかと電波をやりとりして使っているんです。
- HIGEDARUMA
- しかもスマホは、今どのアンテナにつながっているか、その番号を知っているんですよ。
- BANNO
- へえ。そんな番号があるなんて、気にしたこともなかったです。
- HIGEDARUMA
- その番号が同じ人どうしは、だいたい近くにいる人。これがこのアプリの発想なんです。
- BANNO
- LINEは知り合いどうし、SNSは世界中の誰か。その間の、今ここにいる人だけ、ということですね。
- HIGEDARUMA
- まさにそうです。作者は、Meshtasticという仕組みにヒントを得たそうです。
- BANNO
- Meshtastic、初めて聞きました。どんなものなんですか?
- HIGEDARUMA
- 近くの人に無線でメッセージを送れる、小さな専用の機械です。ただ、その機械がないと使えません。
- HIGEDARUMA
- それを、みんなが持っているスマホだけでやろう、というのがこの作品なんですよ。
- BANNO
- 新しい機械を買わなくていいのは、始めやすくていいですね。
- BANNO
- でも、隣にいる人には、必ず届くんですか?
- HIGEDARUMA
- それが、届かないこともあるんです。機種や携帯会社によっては、隣の人でも別のアンテナにつながるので。
- BANNO
- えっ、それって困りませんか?
- HIGEDARUMA
- 作者は、そこがむしろ楽しいと書いているんです。場所によって、届く範囲が広かったり狭かったりする。
- BANNO
- 誰に届くか分からないドキドキ感。ちょっと、おみくじみたいで面白いですね。
- BANNO
- では、どうやって同じアンテナの人にだけ届けているんでしょうか?
- HIGEDARUMA
- 流れは、3つのステップだけなんです。
- HIGEDARUMA
- 1つ目。アプリを開くと、今つながっているアンテナの番号を調べて、サーバーに伝えます。
- BANNO
- サーバーというのは、メッセージを配る係のコンピューターのことですね。
- HIGEDARUMA
- そうです。このとき、スマホとサーバーをつなぎっぱなしにしておくんです。WebSocketという通信の方法です。
- HIGEDARUMA
- つなぎっぱなしなので、メッセージが来たら、すぐに届けられるんですよ。
- BANNO
- なるほど。2つ目と3つ目は?
- HIGEDARUMA
- 2つ目。誰かがメッセージを送ると、まずサーバーが受け取ります。
- HIGEDARUMA
- 3つ目。サーバーは、同じアンテナの番号の人だけを選んで、配るんです。
- BANNO
- 郵便屋さんが、同じ町内の家にだけチラシを配るような感じですね。
- HIGEDARUMA
- いいたとえです。まさに、そんなイメージなんですよ。
- BANNO
- このアプリは、iPhoneでも使えるんですか?
- HIGEDARUMA
- 今はAndroidだけなんです。アンテナの番号を読み取る機能が、Androidなら使えるからなんですよ。
- HIGEDARUMA
- ウェブのページでは、この番号が取れない。だから、作ったことのないAndroidアプリに挑戦したそうです。
- BANNO
- 画面は、どんな感じなんですか?
- HIGEDARUMA
- おなじみの吹き出しのチャットです。自分が送ったものは右に水色で、届いたものは左に緑色で出ます。
- BANNO
- 2台のスマホに、こんにちは、が届いていますね。いつものチャットと同じで、迷わず使えそうです。
- HIGEDARUMA
- ちなみに、アンテナの番号には、細かいものと大まかなものがあるんです。
- HIGEDARUMA
- 最初は細かい番号で作ったんですが、届く範囲と試しやすさを考えて、大まかなほうに変えたそうです。
- BANNO
- 細かすぎると、届く相手が少なくなっちゃうんですね。
- BANNO
- 作るうえで、いちばん大変だったのはどこでしょうか?
- HIGEDARUMA
- サーバーなんです。作者は、サーバー代を無料の範囲に収めることにこだわりました。
- HIGEDARUMA
- そこで、Cloudflare Workersという、無料の枠があるサービスを選んだんです。
- HIGEDARUMA
- サーバーの機械を自分で用意しなくても、プログラムを置くだけで動かせるんですよ。
- BANNO
- タダで動かせるなら、個人で作る人には、うれしいですね。
- HIGEDARUMA
- ただ、その分クセがあって。最初に使おうとした便利な道具が、そこでは、つなぎっぱなしの通信に対応していなかったんです。
- HIGEDARUMA
- さらに、つないでいる人の情報を覚えておけない、という壁にもぶつかりました。
- BANNO
- それじゃ、誰に配ればいいか分からなくなっちゃいますね。
- HIGEDARUMA
- そうなんです。そこで通信の部分を自分で書いたり、情報を覚えておける仕組みに切り替えたりしました。
- HIGEDARUMA
- 結果、サーバーのプログラムを、5回くらい書き直したそうです。
- BANNO
- 5回も!あきらめずに作り直したんですね。
- BANNO
- ほかにも、つまずいたところはありますか?
- HIGEDARUMA
- ホーム画面に戻ると、メッセージが届かない問題がありました。アプリが裏に回ると、止まってしまうんです。
- HIGEDARUMA
- そこで、裏に回っていても受け取れるように書き換えて、通知も出るようにしたんですよ。
- BANNO
- メッセージアプリなら、そこは欠かせないですもんね。
- BANNO
- ところで、この作品を作ったのは、親子のチームなんですよね。
- HIGEDARUMA
- はい。テクノロジー大好きな高校生のMEMETANさんと、ウェブエンジニアのお母さん、とり子さんです。
- BANNO
- 親子でハッカソン。素敵ですね。
- HIGEDARUMA
- 出たのは、福岡のエンジニア・ドリブン・デイというイベントの、2日間のハッカソンです。
- BANNO
- お母さんは、最初は少し不安だったそうですね。
- HIGEDARUMA
- 若い人ばかりで浮いてしまうかも、と思っていたそうです。でも、どうしても出てみたくなって、息子さんと参加しました。
- HIGEDARUMA
- 初日は、ノートパソコンに開発の道具が入っていなくて、ダウンロードからのスタートでした。
- BANNO
- ハッカソン当日に、ダウンロードから。それは焦りますね。
- HIGEDARUMA
- しかも2日目、発表の15時になっても、まだ動いていなかったんです。
- BANNO
- ええっ。それで、どうなったんですか?
- HIGEDARUMA
- ほかのチームの発表を待っている間に、息子さんが完成させたんです。
- HIGEDARUMA
- 発表では、親子2人のスマホでメッセージを送り合うデモまでできたそうです。
- BANNO
- ぎりぎりで間に合って、本物のスマホで動かして見せた。拍手したくなりますね。
- BANNO
- その後も、作品は勝ち進んだんですよね。
- HIGEDARUMA
- はい。最終審査まで進みました。受賞は逃したんですが。
- HIGEDARUMA
- お母さんはブログに、最終選考まで残れただけあっぱれ、次も頑張るぞ、と書いているんです。
- BANNO
- その前向きさ、いいですね。私まで元気が出ます。
- HIGEDARUMA
- 審査員からは、とにかくリリースすることが大事、という言葉をもらったそうです。
- BANNO
- じゃあ、みんなが使えるようになるのは、これからなんですね。
- HIGEDARUMA
- はい。Google Playでの公開を目指しているそうです。
- BANNO
- ほかには、どんな使い道がありそうでしょうか?
- HIGEDARUMA
- ProtoPediaのコメントでは、天気やイベントのような、その場所だけの情報を届けるのにも使えそう、と言われていました。
- BANNO
- お祭りの会場で、もうすぐ花火です、みたいなお知らせに使えたら楽しそうですね。
- HIGEDARUMA
- 作者も、アンテナの場所を地図に出して、アンテナごとのメッセージを見られる機能を考えているそうです。
- BANNO
- 作品ページと、作者のブログのリンクは、概要欄に置いておきますね。
- BANNO
- では、今日の一歩。Androidのスマホを持っている人は、今つながっているアンテナの番号を見てみてください。
- HIGEDARUMA
- アンテナの情報を表示するアプリを入れると、番号が見られるんです。作者も、作品ページで紹介していますよ。
- BANNO
- Androidがない人も、今ここにいる人だけに届けたいことを、ひとつ考えてみてください。
- BANNO
- さて、今日紹介したのは、同じアンテナの人に届くアプリ、基地局メッセンジャーでした。
- HIGEDARUMA
- 次回の作品でも、ゆっくりしていってね。
クレジット
紹介した作品声
あなたの作品も、動画で紹介します
ProtoPedia の作品ページの URL を送るだけで、夜のうちに紹介動画に仕上げます。対象は CC BY 4.0 の作品です。
動画をリクエストする


