PieceJSON Keys
PieceJSON
| JSON Key | 型 | 必須 | 更新 | 制約/説明 |
|---|---|---|---|---|
| title | titleObject | ○ | ○ | 制約 : 30文字以内。英語の設定は必須です。 -------- 説明 : Pieceのタイトル(名称)。言語毎に設定することができます。わかりやすい名称にしていただくことを推奨しています 。 |
| description | descriptionObject | ○ | ○ | 制約 : 英語の設定は必須です。 -------- 説明 : Pieceの説明。言語毎に設定することができます。ユーザーがiiideaを作成する際の大きな手がかりになるのがこの説明文ですので、「どんなPieceなのか?」といった基本情報のほか、動作に必要な処理や制約事項、や特記事項等を記述しておくと親切です。記載に関して、いくつかルールを設けていますのでこちらも併せてご確認ください。 |
| vendorId | string | ○ | × | 制約 : 企業アカウント登録をしたときに割り振られたVendor IDを入力(SDKを利用してPieceCoreを作成する場合のみ指定)。 -------- 説明 : 企業アカウントを識別するためのId。指定がない場合は "none"を指定します。 |
| deviceId | string | ○ | × | 制約 : Riiiver側にデバイス登録をしたときに割り振った番号を入力(SDKを利用してPieceCoreを作成する場合のみ指定)。 -------- 説明 : Pieceを動作させるのに必要なデバイスのId。指定がない場合は "none"を指定します。 |
| categoryIds | array | ○ | × | 制約 : カテゴリマスタIDに登録されているものから1~2つ選択。 -------- 説明 : Pieceの属するカテゴリを識別するためのId。 |
| osType | string | ○ | × | 制約 : "iOS"、"Android"、"none"の中から1つ選択。-------- 説明 : Pieceの動作を保証できるスマートフォンのOSを指定します。 全てのOSに対応している場合は "none"を選択します。 |
| version | string | ○ | ○ | 制約 : 初回は"1.0.0"を指定し、バージョンアップする場合は必ずインクリメントすること。メジャーバージョンアップとマイナーバージョンアップの選択は自由。-------- 説明 : Pieceのバージョン。 |
| sdkVersion | string | ○ | ○ | 制約 : 公開されているRiiiverSDKのバージョンの中から選択する。 -------- 説明 : Pieceの動作が保証されているRiiiverSDKの最低バージョン。 RiiiverSDKに依存しないものであれば "1.0.0"を指定してください。 |
| blockType | string | ○ | × | 制約 : "trigger"、"service"、"action"の中から1つ選択。-------- 説明 : Pieceのタイプ。このPieceがT (trigger)、S (service)、A (action)の内のどれに属するかを指定します。 |
| executor | string | ○ | × | 説明 : クライアントアプリが持つ、実際にPieceを動作させるクラス(モジュール)名。 |
| permissionList | object | × | × | 説明 : Pieceの動作に必要な端末依存情報の中で、クライアントアプリのOSに対してデータアクセス許可が必要な物のパーミッションリスト。 |
| preferences | preferenceObject | × | △ | 説明 : ユーザから設定してもらうPieceの設定項目。 ユーザの設定値によって処理を分けたい場合などに指定します。 |
| input | inputObject | × | △ | 制約 : inputに指定できる項目は1つのみ。-------- 説明 : Pieceが入力(前Pieceの出力)として受け取るデータの型、フォーマットなどを指定します。 |
| output | outputObject | × | △ | 制約 : outputに指摘できる項目は1つのみ。-------- 説明 : Pieceが出力(次Pieceの入力)として受け渡すデータの型、フォーマットなどを指定します。 |
| serviceProxy | serviceProxyObject | × | × | 説明 : PieceがServiceProxyを利用する場合に記述する ProxyCoreの動作に必要なデータを格納します。 |
| pieceCapability | string | ○ | × | 制約 : "notUse"、"background"、"alwaysOnBackground"の中から一つ選択。-------- 説明 : バックグラウンドのパーミッション。 "notUse": バックグラウンド動作なし。"background": 実行時に一時的にバックグラウンドで動作する(ex. 現在地の天気予報)。"alwaysOnBackground": バックグラウンドで常時動作する(ex. エリアトリガ)。 |
| personalInfoList | personalInfoList | × | ○ | 説明 : 外部サービスを利用する場合は記入が必要です。記載がない場合などにRiiiverサポートチームからご連絡する場合がございます。 |
titleObject
| JSON Key | 型 | 必須 | 更新 | 制約/説明 |
|---|---|---|---|---|
| en | string | ○ | ○ | 英語のPieceタイトル |
| ja | string | × | ○ | 日本語のPieceタイトル |
| it | string | × | ○ | イタリア語のPieceタイトル |
| fr | string | × | ○ | フランス語のPieceタイトル |
| es | string | × | ○ | スペイン語のPieceタイトル |
| de | string | × | ○ | ドイツ語のPieceタイトル |
| pt-PT | string | × | ○ | ポルトガル語のPieceタイトル |
| zh-Hans | string | × | ○ | 中国語(簡体字)のPieceタイトル |
| zh-Hant | string | × | ○ | 中国語(繁体字)のPieceタイトル |
descriptionObject
記載に関して、いくつかルールを設けていますのでこちらも併せてご確認ください。
| JSON Key | 型 | 必須 | 更新 | 制約/説明 |
|---|---|---|---|---|
| en | string | ○ | ○ | 英語の説明 |
| ja | string | × | ○ | 日本語の説明 |
| it | string | × | ○ | イタリア語の説明 |
| fr | string | × | ○ | フランス語の説明 |
| es | string | × | ○ | スペイン語の説明 |
| de | string | × | ○ | ドイツ語の説明 |
| pt-PT | string | × | ○ | ポルトガル語の説明 |
| zh-Hans | string | × | ○ | 中国語(簡体字)の説明 |
| zh-Hant | string | × | ○ | 中国語(繁体字)の説明 |
permissionList
| JSON Key | 型 | 必須 | 制約/説明 |
|---|---|---|---|
| ios | array | ○ | 制約 : "location": 端末の位置情報にアクセスする場合に指定する。"mediaLibrary": 端末のメディアライブラリにアクセスする場合に指定する。"notification": 端末の通知にアクセスする場合に指定する。-------- 説明 : クライアントアプリのOSがiOSの場合に必要となるパーミッションリスト。 |
| android | array | ○ | 制約 : "location": 端末の位置情報にアクセスする場合に指定する 。"mediaStore": 端末のメディアストアにアクセスする場合に指定する。"notification": 端末の通知にアクセスする場合に指定する。-------- 説明 : クライアントアプリのOSがAndroidの場合に必要となるパーミッションリスト。 |
preferences
※ JSON Keyが「--」で始まるものは直前のJSON Keyの中で2階層下で使われることを表します。例えば--typeは下のような階層関係になります。
"properties": {
"cityName": { // ここはユーザーが自分で定義した名前のKey
"type": "string", // ここがpropertiesから見て、--typeにあたる。
"x-description": {
"en": "set the area from which to get the temperature.",
"ja": "気温を取得する地域を指定します。"
}
}
},下の表で--typeは"properties"の下にあります。"properties"から2個下の関係で利用することを示しています。
| JSON Key | 型 | 必須 | 更新 | 制約/説明 |
|---|---|---|---|---|
| type | string | ○ | × | 制約 : 必ず"object"を指定する。-------- 説明 : JSONスキーマの type。 |
| properties | object | ○ | × | 制約 : 任意のPreference名をKeyとしてPreferenceデータを記述します。 |
| -- type | string | ○ | × | 制約 : "boolean"、"number"、"string"、"array"の中から1つ選択する。-------- 説明 : Preferenceに設定するデータの型。 |
| -- maximum | number | × | × | 説明:-- x-input-typeで"text"または"textarea"を指定した場合、入力文字数を制限することができます。 |
| △ | × | 制約:--typeで"number"を指定している場合、“minimum”、”maximum”、”multipleOf”の3項目すべての設定が必要です。-------- 説明: -- typeで”number”を設定した場合に指定する最大値です。 ただし、enumでの設定がある場合はenumの値が優先されます。 | ||
| -- minimum | number | △ | × | 制約:“minimum”、”maximum”、”multipleOf”の3項目すべての設定が必要です。-------- 説明: -- typeで”number”を設定した場合に指定する最小値です。 ただし、enumでの設定がある場合はenumの値が優先されます。 |
| -- multipleOf | number | △ | × | 制約:“minimum”、”maximum”、”multipleOf”の3項目すべての設定が必要です。-------- 説明: -- typeで”number”を設定した場合に数字の間隔を指定します。 ただし、enumでの設定がある場合はenumの値が優先されます。 |
| -- enum | array | × | × | 制約:要素の型は--typeで指定した型にする。("number"、"string")-------- 説明 : Preferenceに設定する値を固定の候補に制限したい場合に指定します。使用できない文字があるのでご注意ください。使用禁止文字: (スペース),',",<,>,| |
| -- x-enum-titles | object | × | ○ | 説明 : enumに指定した候補値に対し、識別しやすい名前を表示したい場合に指定します。例えば、生のデータid(data_001, data_002, ...)をそのまま表示せずに名前を表示する(流川、桜木、...)のような使い方ができます。 |
| -- x-title | titleObject | ○ | ○ | 説明 : Preferenceに設定する値のタイトル。 |
| -- x-description | descriptionObject | ○ | ○ | 説明 : Preferenceに設定する値の説明。 |
| -- x-input-type | string | ○ | ○† | 制約 : "drumroll"、"calendar"、"slider"、"radio"、"map"、"text"、"textarea"、"switch"、"time"の中から1つ選択する。-------- 説明 : Preference設定画面での入力タイプ。 |
| -- default | object | × | × | 制約 : --typeで指定した型と一致する値にする。-------- 説明 : Preferenceに設定する値のデフォルト値。 |
| -- x-hidden | boolean | × | ○ | 制約 : true:非表示、false:表示。 -------- 説明 : Preferenceの設定画面上に表示するか/表示しないかの設定。設定しない場合は、表示する。 |
| -- x-optional | boolean | × | ○ | 制約 : true:任意入力、false:必須入力。 -------- 説明 : Preferenceの項目を必須入力にするか任意入力にするか設定。設定しない場合は必須入力となる。 |
| x-field-order | array | × | ○ | 説明 : properties以下で定義した設定項目をUI上で表示する際の順序を指定します。 |
† -- typeの更新はできないので、-- typeの変更を伴うx-input-typeの更新はできません。例えば、"drumroll"で"string"を取得するようにしていたところを"switch"で"boolean"を取得するというような変更はできません。
inputObject
| JSON Key | 型 | 必須 | 更新 | 制約/説明 |
|---|---|---|---|---|
| type | string | ○ | × | 制約 : 必ず"object"を指定する。-------- 説明 : JSONスキーマの type。 |
| properties | object | ○ | × | 説明 : 任意のinput名をKeyとしてinputデータを記述します。 |
| -- type | string | ○ | × | 制約 : "boolean"、"number"、"string"、"object"、"array"の中から1つ選択する。-------- 説明 : inputとして受け取るデータの型。 |
| -- x-title | titleObject | × | ○ | 説明 : inputに設定する値のタイトル。 |
| -- x-description | descriptionObject | × | ○ | 説明 : inputに設定する値の説明。 |
| -- format | string | --typeOther: × | × | 説明 : inputとして受け取りたい値が特定のフォーマットに対応している場合は指定します。 |
| -- x-unit | string | × | × | 制約 :--typeに"number"を選択した場合のみ指定することができます。-------- 説明: inputとして受け取る値に単位を定義したい場合に指定します。 |
| -- minimum | number | --typeOther: × | × | 制約:-- typeに"number"を選択した場合に必須項目となります。-------- 説明: inputとして受け取りたい数値の最小値を指定します。 必ず-1,000,000~1,000,000 の範囲内の値を指定してください。 また、必ずmaximumに指定する値より小さい値を指定してください。 |
| -- maximum | number | --typeOther: × | × | 制約:-- typeに"number"を選択した場合に必須項目となります。-------- 説明: inputとして受け取りたい数値の最大値を指定します。 必ず -1,000,000~1,000,000 の範囲内の値を指定してください。 また、必ずminimumに指定する値より大きい値を指定してください。 |
outputObject
| JSON Key | 型 | 必須 | 更新 | 制約/説明 |
|---|---|---|---|---|
| type | string | ○ | × | 制約 : 必ず"object"を指定する。-------- 説明 : JSONスキーマの type。 |
| properties | object | ○ | × | 説明 : 任意のoutput名をKeyとしてoutputデータを記述します。 |
| -- type | string | ○ | × | 制約 : "boolean"、"number"、"string"、"object"、"array"の中から1つ選択する。-------- 説明 : outputとして出力したいデータの型を指定する。 |
| -- x-title | titleObject | × | ○ | 説明 : outputに設定する値のタイトル。 |
| -- x-description | descriptionObject | × | ○ | 説明 : outputに設定する値の説明。 |
| -- format | string | --typeOther: × | × | 説明 : outputとして出力したい値が特定のフォーマットに対応している場合は指定します。 |
| -- x-unit | string | × | × | 制約 :--typeに"number"を選択した場合のみ指定することができます。-------- 説明 : outputとして出力する値に単位を定義したい場合に指定します。 |
| -- minimum | number | --typeOther: × | × | 制約:-- typeに"number"を選択した場合に必須項目となります。-------- 説明: outputとして出力する数値の最小値を指定します。 必ず-1,000,000~1,000,000 の範囲内の値を指定してください。 また、必ずmaximumに指定する値より小さい値を指定してください。 |
| -- maximum | number | --typeOther: × | × | 制約:-- typeに"number"を選択した場合に必須項目となります。-------- 説明: outputとして出力する数値の最大値を指定します。 必ず-1,000,000~1,000,000 の範囲内の値を指定してください。 また、必ずminimumに指定する値より大きい値を指定してください。 |
serviceProxyObject
| JSON Key | 型 | 必須 | 制約/説明 |
|---|---|---|---|
| service | string | ○ | 説明 : Lambda上で動作するスクリプトが記載されているファイル名を指定します。 |
| parameters | array | × | 制約 : "location_normal", "location_rough", "location_accurate"または"location"の中から選択します。 端末の位置情報を使用したい場合に指定します。-------- 説明 : ProxyCoreの動作に必要な端末依存情報を取得する場合に指定します。 |
| authType | array | × | 制約 : "apiKey"、"oauth2"、"other"の中から選択します。 RiiiverSDKが認可処理をサポートしているのは"oauth2"のみです。他を選択する場合はアプリ側で独自に認可処理を実装する必要があります。-------- 説明 : ProxyCore内で外部サービスを利用し、認可処理を必要とする場合に指定します。認可処理の認証タイプを格納します。 |
personalInfoList
詳細な説明はこちらも併せてご確認ください。
| JSON Key | 型 | 必須 | 制約/説明 |
|---|---|---|---|
| description | descriptionObject | ○ | 説明 : 各個人情報の利用方法について説明を記載します。 |
| privacyPolicy | privacyPolicyObject | ○ | 説明 : Pieceで利用する外部サービスのプライバシーポリシーの説明とurlを設定します。 |
| serviceCompanyName | string | ○ | 説明 : Pieceで利用する外部サービスの会社名を設定します。 |
| typeList | typeListObject | ○ | 制約 : typeListObjectをArray型で列挙してください。 -------- 説明 : 利用する個人情報を種類別に設定します。 |
privacyPolicyObject
| JSON Key | 型 | 必須 | 制約/説明 |
|---|---|---|---|
| label | descriptionObject | ○ | 説明 : 外部サービスプライバシーポリシーのラベルを設定します。 |
| url | descriptionObject | ○ | 説明 : プライバシーポリシーのURLを指定します。 |
typeListObject
| JSON Key | 型 | 必須 | 制約/説明 |
|---|---|---|---|
| description | descriptionObject | ○ | 説明 : 個人情報の利用目的を設定します。 |
| type | string | ○ | 制約 : location、vital、id、demographic、userLog、diagnoseのいずれかから選択します。-------- 説明 : 個人情報の種類を指定します。 |