IoTを活用した「つながる」アプリ構築
マルチデバイスに対応した現在のDelphi
エンバカデロでは、20年以上にわたって、コンポーネントによるビジュアル開発の手法により、ソフトウェア開発を効率化してきました。Delphiが最初にリリースされたのは1995年ですが、このときからデータベースに「つながる」という機能が用意されていました。
現在、このツールは、Windowsだけでなく、Mac、iOS、Androidのマルチデバイス開発に対応し、単一のコードからそれぞれのデバイスに最適化されたネイティブアプリケーションを構築できるように進化しています。それに伴い、「つながる」という機能も大きく拡張され、データベースはもちろん、クラウドやRESTサービス、さらにはデバイスとも「つながる」ようになっています。
そこで利用されているのは、コンポーネント技術です。コンポーネントを用いることで、低レベルの処理を隠蔽、抽象化し、異なるデバイスや異なるプロトコルでも、同一のコードで処理ができるようにしているのです。
ここでは、ビーコンを例にデバイスと「つながる」技術を見ていきましょう。
ビーコンとは?
ビーコンは、とてもシンプルなデバイスです。ビーコンは、数ミリ秒ごとに「ここにいるよ、ここにいるよ」という情報を送信します。それしかやらないのです。
ビーコンは、通信を受け取ることはできませんが、スマートフォンのアプリはビーコンから発信する情報を受信できます。これを活用すれば、GPSが使えない屋内などでも、自分がどこにいるのかを認識できるようになります。
ビーコンを利用するためのコンポーネント
Delphi(およびC++Builder、そしてその両方を含むスイート製品RAD Studio)で、ビーコンを使うには、TBeaconコンポーネントを用います。TBeaconコンポーネントを設計画面にマウス操作でドラッグ&ドロップすると、いくつかの設定が行えるプロパティが表示されます。例えば、Modeプロパティでは、Apple互換のiBeaconsか、AltBeaconsを使うかを指定します。
ビーコンの情報を取得するのは、TBeaconに用意されたイベントです。例えば、ビーコンを近接検知するとOnBeaconProximityイベントが発生します。このイベントを処理するイベントハンドラを記述すれば、ビーコンに近づいたときのアプリの動作を定義できます。
このように、コンポーネントを利用することで、ビーコンの扱いも簡単になります。
ビジネス価値を付与するアプリケーション
ビーコンがあれば、美術館で展示物のそばに近づいてきたことを検知することもできます。スーパーでは、人が野菜売り場にいるかも分かります。ビーコンを利用したアプリケーションを用意すれば、近くにいる人に、展示物の解説を行ったり、割引クーポンを発行したりすることもできます。
ビーコン自体は単純なデバイスですが、アプリケーションによってビジネス価値を付与できるのです。ビーコンを活用したアプリケーションは、マーケティングの可能性を広げます。言い換えれば、ビーコンを活用したアプリケーションのアイデアをすばやくかたちにすることができれば、ビジネスを大きくリードできるのです。