カスタムプラグイン
Enterpriseプランでのみご利用いただけます。
ProtoPie Connectには以下のプラグインが搭載されています:IFTTT、Logitech G29 steering wheel、blokdots、 Arduinoなど。さらに、Enterpriseプランをご契約していただいているユーザー様はごご自身のカスタムプラグインをアップロードすることができ、Socket.IOがサポート対象のハードウェア、APIまたはアプリとプロトタイプをProtoPie Connect経由で接続できます。
Custom Pluginsの作成
ProtoPie ConnectでのCustom integrationは、Custom PluginsあるいはBridge Appsでも可能とされていますが、弊社ではBridge AppsではなくCustom Pluginsの使用を推奨しています。カスタムプラグインのファイルはポータブル性があることから、チームメンバーとの作業や共有が容易になります。
カスタムプラグインの作成方法は以下の通りです。
1. お持ちのコードを書き換えるか、既存のBridge Appを再利用します。
2. pkgを使用してBridge Appを1つの実行可能なバイナリに編集します。複数のターゲットに対してIndex.jsファイルを編集可能です(詳細はこちら)。
- Mac ARM:
pkg -t node16-macos-arm64 index.js
- Mac Intel:
pkg -t node16-macos-x64 index.js
- Windows:
pkg -t node16-win-x64 index.js
3. 実行可能なファイルを空のディレクトリにコピーして plugin
と名前を付けます。metadata.jsonファイルを作成し、{ "name": "name of the plugin" }
という名前を付けます。
4. ファイルを圧縮します(.zip)。これでCustom Pluginを使用する準備ができました。
5. Custom PluginをProtoPie Connectにインポートして端末で作動します。
Custom Pluginsの例はこちら。
Bridge Appとは
Bridge Appsは、Socket.IOとProtoPie Connectをサポート対象とするハードウェア、APIまたはアプリ間での通信を可能とするものです。イベントの取得やサーバーからのデータ受信を行うことができ、1つのアプリケーションとして動作します。
参考:GitHubで入手可能なBridge Appsを使用したスタマイズが可能です。
Bridge App経由でハードウェアを接続する
Bridge Appの主な役割は、ハードウェアからの信号をSocket.IOメッセージ(ProtoPieが処理可能な言語)に変換する、あるいはその逆を行うことです。
1. Bridge AppとProtoPie Connectを接続します。
2. Bridge Appによってハードウェアからの信号が、ProtoPieが処理できるSocket.IOメッセージに変換されます。通常、メッセージは以下の形式になっています。
- {messageId: ”HwEventName”, value: “ValueAssociatedWithEvent”}
3. ProtoPie Connect経由でメッセージを受信したプロトタイプが対応します。一部のハードウェアでは相互通信がサポート対象となっており、プロトタイプからハードウェアへメッセージを送信することができますが、これはBridge AppによってSocket.IOメッセージをハードウェアが理解できる信号へ変換できる条件下でのみ有効となっています。
Bridge Apps経由でAPIsに接続する
Bridge Apps経由でAPIsに接続する場合、Bridge AppによってAPIのレスポンス(JSONなど)を個々のSocket.IOメッセージに変換します。
例えば、プロトタイプがAPIから気象データを動的に取得する必要がある場合、Bridge Appが以下を実行します。
1. JSONレスポンスをSocket.IOメッセージに変換します。
- 例 {”weather”: ”sunny”, “temperature-celsius”: 30.5}
2. Socket.IOメッセージをProtoPie Connectに送信すると、対応するプロトタイプに関連づけられます。
- {messageId: “weather, value: “sunny”},
- {messageId: “temperature”, value: 30.5}
プロトタイプでは、Receiveトリガーによって「weather」と「temperature」というメッセージを受信する必要があります。Receiveトリガーの詳細はこちら。
同じデバイスでBridge Appを作動する
Bridge Apps のほとんどは、デフォルトのIPアドレスがhttp://localhost:9981になっていますが、これはBridge AppとProtoPie Connectが同じデバイスで作動するのを前提としているためです。
Bridge Appを異なるデバイスで作動する
Bridge AppとProtoPie Connectを異なるデバイスで作動させる場合、ProtoPie Connectのサーバーに合ったIPアドレスに変更できます。
- ProtoPie Connect Desktopの場合:インターフェースの左下隅にサーバーアドレスが表示されます。
- ProtoPie Connect Embeddedの場合:端末で起動後、右にサーバーアドレスが表示されます。