タクシーに乗ると自動で流れる広告タブレット、その仕組みをご紹介します

開発部 松島
はじめまして。
エンジニアの松島です。
私が所属するIoT事業部は、配車システムや車内後部座席に設置している広告タブレット等、
車載機器のソフト開発を行っております。

皆さんは、日本交通のタクシーに乗車したことはありますでしょうか?
もしまだ日本交通のタクシーに乗車したことのない方は、是非一度乗車してみてください。

すると・・・、

1. お客様が乗車すると自動的に広告再生がスタート

2. 目的地に到着すると自動的にお支払い画面に切り替わり運賃が表示

3. 降車した後は広告が停止

と、誰が手を触れるわけでもなくお客様が乗車したり降車したりしたことを検知して
勝手に広告タブレットが動作します。
一見なんともないように感じるこの動きですが、
実は見えないところで様々な機材が連動し、実現されています。

今回は、その見えない部分をご紹介します。

お客様の乗車、降車、なぜ検知できるのか?

後部座席に取り付けられた広告タブレットですが、実は乗務員さんが操作しているタクシーメーターと連動されています。

お客様が乗車したり降車したりした時に乗務員さんがメーターを操作するので、
その操作内容に連動して広告が再生されたり、広告が停止したりします。

このタクシーメーターと広告タブレットの連動ですが、全てが有線で直接繋がっているわけではありません。
下記の図のような構成になっています。

ご覧のように、メーターと接続されている配車端末が、プッシュ通知にて広告タブレットにメーターの情報を送ることで連動されています。

後部座席に設置するため、物理的に距離があるため有線でメーターと直接つなぐことができません。
そのため、プッシュ通知による通信を採用しています。

また、このプッシュ通知ですがAndroid端末で一般的なGCM/FCMを利用しているわけではありません。
JapanTaxiが独自に実装したプッシュサーバーを利用しています。
これは、GCM/FCMだとプッシュ通知の到達率は90数パーセントであり、100%ではないためです。

ビジネスの場で利用されるシステムである以上、100%動作することを求められるため、
GCM/FCMの到達率を超える独自プッシュサーバーを利用しています。

様々な課題を解決した新広告タブレットの登場

このように、色々な工夫が行われ現在も稼働している広告タブレットですが、
いざリアルで動かしてみると様々な問題が発生します。
しかし、今月からそれらの問題を解決した新しい広告タブレットの試走が開始されました。

新しい広告タブレットは、下記の形で接続されています。

ご覧の通り、配車端末を経由してプッシュ通知にて連動されていた部分が、
Bluetooth Low Energy(以下、BLEと記載)にてメーターと直接接続される形に変更されています。
実際に営業しているタクシーは、様々な場所を走行しているため、時には電波状況の悪いところを走ることもあります。
そういった時、プッシュ通知ではうまく連動できないためBLEに変更しています。
メーターからはJapanTaxiで策定した独自プロトコルにてデータが送られてきます。
しかし、直接つなぐとメーターからはミリ秒単位で次々とデータが送られてくるので、
この大量に送られてくるデータをリアルタイムに捌いていくため、
プログラムについても数ミリ秒でも早く動くロジックや記法を用いてコーディングしています。

また、広告タブレット本体も、これまでは市販のものを利用していましたが
新型はJapanTaxiのオリジナルAndroid端末です。
市販の端末ですと、商品によってはBLEやGPS等の動作が安定しないことも多くありますが、
この端末はそれらについてもとても優れています。
特にBLEはメーターとの連動に使用していることもあり、高性能なものになっております。
他にも、夏場は車内の温度がとても高くなることから耐熱対策が施されております。

しかし、一般のAndroidにはない機能を持った特殊な端末となっているため、
私たちAndroidエンジニアもオリジナル端末に合わせた特殊な実装が必要となっていきます。

こちらが新型タブレットです

まだ走行している車両数は少ないですが、今後増えていきますのでぜひ探してみてください。

JapanTaxiに興味を持ったら、まずはお話しませんか?