簡単な ThingPoint アプリケーションの実装
ThingPoint の概要 への移動
EMS サーバーからの要求をリスンし必要なデータを応答する ThingPoint アプリケーションを新規に作成できます。
その ThingPoint アプリケーションには次のコンポーネントが必要です。
- TEMSProvider コンポーネント。EMS サーバーとの接続をセットアップするために使用します。
- TEMSEdgeService コンポーネント。EMS サーバーからの要求をリスンするために使用します。
EMS クライアント アプリケーションには次のコンポーネントが必要です。
- TEMSProvider コンポーネント。EMS サーバーとの接続をセットアップするために使用します。
- TBackendEndpoint コンポーネント。ThingPoint の特定のリソースにアクセスするために使用します。
このサンプル用に、EMS サーバーをセットアップして実行しておかなければなりません。
目次
ThingPoint アプリケーションの作成
- マルチデバイス アプリケーションを新規作成します。
- Delphi の場合: [ファイル|新規作成|マルチデバイス アプリケーション - Delphi]を選択します。
- C++ の場合: [ファイル|新規作成|マルチデバイス アプリケーション - C++Builder]を選択します。
- [ツール パレット]で TEMSProvider コンポーネントを探してフォームにドロップします。
- [オブジェクト インスペクタ]で、EMS サーバー構成に従って、EMS サーバー関連のパラメータを次のように構成します。
- URLHost:
localhost
- URLPort:
8080
- URLProtocol: http
- URLHost:
- [接続テスト]ボタンをクリックします。接続が正常にセットアップされていれば、EMS サーバーの現在のバージョンを示すメッセージが出力されます。
- [ツール パレット]で TEMSEdgeService コンポーネントを探してフォームにドロップします。
- [オブジェクト インスペクタ]で TEMSEdgeService のパラメータを次のように構成します。
- Provider:
EMSProvider1
- ModuleName:
WinEdge1
- Provider:
- [オブジェクト インスペクタ]で、EMS サーバーの要求をリスンするための TEMSEdgeService パラメータを次のように構成します。
- ListenerProtocol:
http
- ListenerService.Host:
localhost
- ListenerService.Port:
8081
- ListenerProtocol:
- アプリケーションをビルドして実行します。F9 キーを押すか[実行|実行]を選択します。
- メモ: 32 ビット Windows、64 ビット Windows、OS X の各ターゲット プラットフォームでのみ ThingPoint を実行できます。
ThingPoint データを取得する EMS クライアント アプリケーションの作成
- マルチデバイス アプリケーションを新規作成します。
- Delphi の場合: [ファイル|新規作成|マルチデバイス アプリケーション - Delphi]を選択します。
- C++ の場合: [ファイル|新規作成|マルチデバイス アプリケーション - C++Builder]を選択します。
- [ツール パレット]で TEMSProvider コンポーネントを探してフォームにドロップします。
- [オブジェクト インスペクタ]で、EMS サーバー構成に従って、EMS サーバー関連のパラメータを次のように構成します。
- URLHost:
localhost
- URLPort:
8080
- URLProtocol:
http
- URLHost:
- フォームに TBackendEndpoint コンポーネントをドロップします。
- [オブジェクト インスペクタ]で、ThingPoint リソースを使用するための TBackendEndpoint パラメータを次のように設定します。
- Provider: ドロップダウン リストから、TEMSProvider コンポーネントの名前(
EMSProvider1
)を選択します。 - Resource:
edgemodules/WinEdge1/version
- Resource suffix: このチュートリアルでは空のままにしておきます。
- Method:
rmGET
- Provider: ドロップダウン リストから、TEMSProvider コンポーネントの名前(
応答データをビジュアルにバインドする
- [LiveBinding デザイナ]を開いて、ThingPoint からの応答データをビジュアルにバインドします。[表示|LiveBinding デザイナ]を選択します。
- [LiveBinding デザイナ]で、TBackendEndpoint コンポーネントの Response.JSONText プロパティを右クリックし、[新規コントロールにリンク...]オプションを選択して、応答を新しい TMemo コンポーネントにリンクします。
- フォームに新しい TButton コンポーネントをドロップします。
- [オブジェクト インスペクタ]で、Text プロパティを「
Get ThingPoint Version
」に設定します。
- [オブジェクト インスペクタ]で、Text プロパティを「
- TButton コンポーネントの OnClick イベントを(ダブルクリックして)作成し、以下のコードを追加します。
- Delphi の場合:
procedure TForm1.Button1Click(Sender: TObject); begin BackendEndpoint1.Execute; end;
- C++ の場合:
void __fastcall TForm1::Button1Click(TObject *Sender) { BackendEndpoint1->Execute(); }
- アプリケーションをビルドして実行します。