アプリケーション開発
リソース管理 API
リソース管理 API は、ゲートウェイの管理、ゲートウェイが認識しているデバイスの管理、そして、デバイスが提供するアクションの取得を行います。アクションの実行については、デバイス API をご覧ください。リソース管理 API は、そのほか、ニックネームとタグも管理します。
デバイスを登録する際には名前 (deviceName
) を割り振りますが、登録後、別名を割り当てることもできます。その別名のことをニックネームと呼びます。アクション実行の際には、デバイスを識別するシング ID
(thingId
) だけでなく、ニックネームを指定してすることもできます (デバイス名を指定してサービスを実行することはできません)。
タグとは、複数のデバイスをグルーピングする名前です。サービス実行の際にはタグ名 (tagName
) を指定して、複数のデバイスをまとめて操作することが可能です。例えば、同じ部屋に 4 つのライトがあるとします。その
4 つのライトに対して「居間のライト」というタグを登録すれば、以降、「居間のライト」というタグを指定して 1 回のリクエストで 4 つのライトを点灯したり消灯することができるようになります。
なお、ニックネームやタグを指定してサービスを実行したい場合は、「デバイス API」の request()
メソッドを使います。
searchGateway()
このメソッドは、UUID から Symphony に一時的に登録されているユーザー未割当のゲートウェイを検索します。すでにユーザー割り当て済みのゲートウェイは検索できません。ゲートウェイが初めて Symphony に接続すると、該当のゲートウェイはユーザー未割当の状態で一時的に Symphony に保存されます。ユーザー未割当の状態のゲートウェイは、一定時間を経過すると自動的に削除されますので、ゲートウェイをアクティブにしてから早いうちにこのメソッドを実行してください。もし Symphony から削除されてしまった場合は、再度、ゲートウェイを Symphony に接続しなおしてください。そうすれば、新たにユーザー未割当状態で Symphony に登録されます。
このメソッドは、Promise
オブジェクトを返します。このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
uuid |
String | 必須 | ゲートウェイの UUID。 |
dSymphony.searchGateway({
uuid: '836a8e20-025e-11a8-392e-b827ebbd2f2e'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"gatewayInfo": null
}
{
"result": 0,
"error": null,
"gatewayInfo": {
"gatewayId": "gw-CAE3AB3F4F5A93733CF2451E720F2344",
"gatewayName": "node-gotapi",
"gatewayUuid": "836a8e20-025e-11a8-392e-b827ebbd2f2e",
"gatewayType": "hgw",
...,
"isOnline": true
}
}
レスポンス情報のうち、主要な値の意味は以下のとおりです。
プロパティ名 | 型 | 説明 |
---|---|---|
gatewayInfo |
Object | ゲートウェイ情報を表す GatewayInfo オブジェクト。 |
getGateways()
このメソッドは、サインインユーザーが登録済みのゲートウェイのリストを取得します。このメソッドは、Promise
オブジェクトを返します。
dSymphony.getGateways().then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"gatewayList": [
{
"gatewayId": "gw-CAE3AB3F4F5A93733CF2451E720F2344",
"gatewayName": "居間のゲートウェイ",
"gatewayUuid": "836a8e20-025e-11a8-392e-b827ebbd2f2e",
"gatewayType": "hgw",
...,
"isOnline": true
}
]
}
プロパティ名 | 型 | 説明 |
---|---|---|
gatewayList |
Array | ゲートウェイ情報を表す GatewayInfo オブジェクトを格納したリスト。 |
registerGateway()
このメソッドは、まだどのユーザーにも関連付けられていない仮登録状態のゲートウェイ ID (getewayId
) を指定して、そのゲートウェイを自分のゲートウェイとして登録します。すでに登録済みのゲートウェイを指定するとエラーを返します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
gatewayId |
String | 必須 | ゲートウェイ ID。この値は、searchGateway() メソッドから得られます。 |
gatewayName |
String | 必須 | ゲートウェイの名前。 |
dSymphony.registerGateway({
gatewayId : 'gw-CAE3AB3F4F5A93733CF2451E720F2344',
gatewayName : '居間のゲートウェイ'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
updateGateway()
このメソッドは、ゲートウェイの ID を指定して、そのゲートウェイの名前とタイプを変更します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
gatewayId |
String | 必須 | ゲートウェイの ID。 |
gatewayName |
String | 必須 | ゲートウェイの名前。 |
gatewayType |
String | 任意 | ゲートウェイのタイプ。指定できる値は mobile , hgw のいずれか。 |
dSymphony.updateGateway({
gatewayId : 'gw-CAE3AB3F4F5A93733CF2451E720F2344',
gatewayName : '仕事部屋のゲートウェイ'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
deleteGateway()
このメソッドは、ゲートウェイの ID を指定して、そのゲートウェイを削除します。ゲートウェイが削除されると、それに関連するデバイス情報、アクション情報、アーカイブはすべて削除されます。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
gatewayId |
String | 必須 | ゲートウェイの ID。 |
dSymphony.deleteGateway({
gatewayId : 'gw-CAE3AB3F4F5A93733CF2451E720F2344'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
getUnregisteredDevices()
このメソッドは、ゲートウェイの ID を指定して、そのゲートウェイが認識しているデバイスのうち、まだ Symphony に登録されていないデバイスの一覧を返します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
gatewayId |
String | 必須 | ゲートウェイの ID。 |
dSymphony.getUnregisteredDevices({
gatewayId : 'gw-CAE3AB3F4F5A93733CF2451E720F2344'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"deviceList": [
{
"thingId": "th-A428E95C5CA6EAAFC204AC21728ED7B9",
"serviceId": "hue-light-0017882C7D50-1",
"deviceName": "Philips hue bridge 2015",
"type": "",
"isOnline": true,
...
},
...
]
}
プロパティ名 | 型 | 説明 |
---|---|---|
deviceList |
Array | 未登録デバイス情報を表す UnregisteredDeviceInfo オブジェクトを格納したリスト。 |
getDevices()
このメソッドは、サインインしているユーザーに関連付けられているすべてのデバイスを検索します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
latitude |
Float | 任意 | デバイスの現在位置の緯度。デバイスが現在位置検知をサポートしている場合のみ利用可能。 |
longitude |
Float | 任意 | デバイスの現在位置の経度。デバイスが現在位置検知をサポートしている場合のみ利用可能。 |
locationItemId |
String | 任意 | デバイスの現在位置 ID。デバイスが現在位置検知をサポートしている場合のみ利用可能。 |
deviceName |
String | 任意 | デバイスの名前。部分一致で検索します。アルファベットの場合は、大文字と小文字は区別されます。 |
nickname |
String | 任意 | デバイスのニックネーム。完全一致で検索します。 |
tagName |
String | 任意 | デバイスのタグ名。完全一致で検索します。 |
gatewayId |
Gateway | 任意 | ゲートウェイ ID。この ID を指定すると、検索対象が該当のゲートウェイに関連付けられたデバイスのみに限定されます。 |
dSymphony.getDevices({
deviceName : 'リモコン',
gatewayId : 'gw-CAE3AB3F4F5A93733CF2451E720F2344'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"deviceList": [
{
"deviceName": "赤外線リモコン REX",
"thingId": "th-DF069858E95F1BB895D97006BAC7F6AA",
"serviceId": "rex-base-409f38d28d9a",
"deviceCategory": "rex-base",
"type": "",
"isOnline": true,
...
}
]
}
プロパティ名 | 型 | 説明 |
---|---|---|
deviceList |
Array | デバイス情報を表す DeviceInfo オブジェクトを格納したリスト。 |
registerDevice()
このメソッドは、Symphony にデバイスを登録します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
gatewayId |
String | 必須 | ゲートウェイ ID。 |
thingId |
String | 必須 | デバイスを識別するシング ID。まだ Symphony に登録されていないシング ID を指定してください。Symphony に未登録のデバイスのシング ID は、getUnregisteredDevices() メソッドから得られます。もしシング ID を指定しなければ、該当のゲートウェイに関連付けられている Symphony に未登録のデバイスすべてをまとめて登録します。 |
deviceName |
String | 必須 | デバイスの名前。パラメータに thingId を指定した場合にのみ有効です。 |
dSymphony.registerDevice({
gatewayId : 'gw-CAE3AB3F4F5A93733CF2451E720F2344',
thingId : 'th-DF069858E95F1BB895D97006BAC7F6AA',
deviceName : '赤外線リモコン REX'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"deviceList": [
{
"thingId": "th-DF069858E95F1BB895D97006BAC7F6AA",
"serviceId": "rex-base-409f38d28d9a",
"deviceName": "赤外線リモコン REX",
"type": "",
"isOnline": true,
...
}
]
}
プロパティ名 | 型 | 説明 |
---|---|---|
deviceList |
Array | デバイス情報を表す DeviceInfo オブジェクトを格納したリスト。 |
deleteDevices()
このメソッドは、Symphony に登録されたデバイスをすべて削除します。このメソッドは、Promise
オブジェクトを返します。
このメソッドに引数はありません。
dSymphony.deleteDevices().then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
getDevice()
このメソッドは、シング ID からデバイス情報を取得します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
thingId |
String | 必須 | シング ID。 |
latitude |
String | 任意 | 現在位置(緯度) |
longitude |
String | 任意 | 現在位置(経度) |
locationItemId |
String | 任意 | 位置を特定する識別子 |
dSymphony.getDevice({
thingId: 'th-DF069858E95F1BB895D97006BAC7F6AA'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"device": {
"deviceName": "赤外線リモコン REX",
"thingId": "th-DF069858E95F1BB895D97006BAC7F6AA",
"serviceId": "rex-base-409f38d28d9a",
"deviceCategory": "rex-base",
"type": "",
"isOnline": true,
...
}
}
プロパティ名 | 型 | 説明 |
---|---|---|
device |
Object | デバイス情報を表す DeviceInfo オブジェクト |
updateDevice()
このメソッドは、デバイスの名前を変更します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
thingId |
String | 必須 | シング ID。 |
deviceName |
String | 必須 | デバイスの名前。 |
dSymphony.updateDevice({
thingId : 'th-DF069858E95F1BB895D97006BAC7F6AA',
deviceName : '居間の赤外線リモコン REX'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
deleteDevice()
このメソッドは、Symphony に登録されたデバイスを 1 つ削除します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
thingId |
String | 必須 | シング ID。 |
dSymphony.deleteDevice({
thingId : 'th-DF069858E95F1BB895D97006BAC7F6AA'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
getActions()
このメソッドは、登録されているすべてのデバイスからアクションを検索します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
latitude |
Float | 任意 | デバイスの現在位置の緯度。デバイスが現在位置検知をサポートしている場合のみ利用可能。 |
longitude |
Float | 任意 | デバイスの現在位置の経度。デバイスが現在位置検知をサポートしている場合のみ利用可能。 |
locationItemId |
String | 任意 | 位置を特定する識別子 |
deviceName |
String | 任意 | デバイスの名前。部分一致で検索します。アルファベットの場合は、大文字と小文字は区別されます。 |
nickname |
String | 任意 | デバイスのニックネーム。完全一致で検索します。 |
tagName |
String | 任意 | デバイスのタグ名。完全一致で検索します。 |
gatewayId |
String | 任意 | ゲートウェイ ID。この ID を指定すると、検索対象が該当のゲートウェイに関連付けられたデバイスのみに限定されます。 |
dSymphony.getActions({
thingId: 'th-DF069858E95F1BB895D97006BAC7F6AA'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"deviceList": [
{
"deviceName": "赤外線リモコン REX",
"thingId": "th-DF069858E95F1BB895D97006BAC7F6AA",
"serviceId": "rex-base-409f38d28d9a",
"actionInfo": {
"actionId": "ac-E62149FF981F20C09FBDF2A42F811FD2",
"summary": "バッテリーレベルの取得",
"url": "/battery:get",
...
},
...
},
{
"deviceName": "赤外線リモコン REX",
"thingId": "th-DF069858E95F1BB895D97006BAC7F6AA",
"serviceId": "rex-base-409f38d28d9a",
"actionInfo": {
"actionId": "ac-B9F4A4C4B7B42ED18116791B0B937067",
"summary": "照度センサー計測値の取得",
"url": "/illuminance:get",
...
}
},
...
]
}
レスポンス情報のうち、主要な値の意味は以下のとおりです。
プロパティ名 | 型 | 説明 |
---|---|---|
deviceList |
Array | デバイスおよびアクション情報を表す DeviceActionInfo オブジェクトのリスト。 |
getDeviceActions()
このメソッドは、指定のデバイスが提供するアクションの一覧を取得します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
thingId |
String | 必須 | シング ID。 |
latitude |
Float | 任意 | デバイスの現在位置の緯度。デバイスが現在位置検知をサポートしている場合のみ利用可能。 |
longitude |
Float | 任意 | デバイスの現在位置の経度。デバイスが現在位置検知をサポートしている場合のみ利用可能。 |
locationItemId |
String | 任意 | 位置を特定する識別子 |
dSymphony.getDeviceActions({
thingId: 'th-DF069858E95F1BB895D97006BAC7F6AA'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"deviceList": [
{
"deviceName": "赤外線リモコン REX",
"thingId": "th-DF069858E95F1BB895D97006BAC7F6AA",
"serviceId": "rex-base-409f38d28d9a",
"actionInfo": {
"actionId": "ac-E62149FF981F20C09FBDF2A42F811FD2",
"summary": "バッテリーレベルの取得",
"url": "/battery:get",
...
},
...
},
{
"deviceName": "赤外線リモコン REX",
"thingId": "th-DF069858E95F1BB895D97006BAC7F6AA",
"serviceId": "rex-base-409f38d28d9a",
"actionInfo": {
"actionId": "ac-B9F4A4C4B7B42ED18116791B0B937067",
"summary": "照度センサー計測値の取得",
"url": "/illuminance:get",
...
}
},
...
]
}
レスポンス情報のうち、主要な値の意味は以下のとおりです。
プロパティ名 | 型 | 説明 |
---|---|---|
deviceList |
Array | デバイスおよびアクション情報を表す DeviceActionInfo オブジェクトのリスト。 |
getNicknames()
このメソッドは、ニックネームを検索します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
thingId |
String | 任意 | シング ID。 |
nickname |
String | 任意 | ニックネーム。完全一致で検索します。 |
dSymphony.getNicknames({
thingId: 'th-DF069858E95F1BB895D97006BAC7F6AA'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"nicknameList": [
{
"nicknameId": "nn-28CE971EED9BA43952DFA0EB8834BC04",
"nickname": "居間のリモコン",
"deviceList": [
{
"deviceName": "赤外線リモコン REX",
"thingId": "th-DF069858E95F1BB895D97006BAC7F6AA",
"serviceId": "rex-base-409f38d28d9a",
...
}
]
},
...
]
}
レスポンス情報のうち、主要な値の意味は以下のとおりです。
プロパティ名 | 型 | 説明 |
---|---|---|
nicknameList |
Array | ニックネーム情報を表す NicknameInfo オブジェクトのリスト |
addNickname()
このメソッドは、登録済みデバイスへニックネームを新規に登録します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
thingId |
String または Array | 必須 | シング ID、または、シング ID のリスト。リストで複数のシング ID を関連付ける場合は、最大 2 つまで、かつ、その 2 つのシング ID が表すデバイスは同一 (serviceId が同一)
でなければいけません。 |
nickname |
String | 必須 | ニックネーム。 |
dSymphony.addNickname({
thingId : 'th-DF069858E95F1BB895D97006BAC7F6AA',
nickname : '居間のリモコン'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"nicknameId": "nn-28CE971EED9BA43952DFA0EB8834BC04"
}
レスポンス情報のうち、主要な値の意味は以下のとおりです。
プロパティ名 | 型 | 説明 |
---|---|---|
nicknameId |
String | 新たに登録されたニックネームの ID。 |
deleteNicknames()
このメソッドは、すべてのニックネームをまとめて削除します。このメソッドは、Promise
オブジェクトを返します。
このメソッドには、引数はありません。
dSymphony.deleteNicknames().then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
getNickname()
このメソッドは、ニックネーム ID からニックネーム情報を取得します。このメソッドは Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
nicknameId |
String | 必須 | ニックネーム ID。 |
thingId |
String | 任意 | シング ID。 |
dSymphony.getNickname({
nicknameId: 'nn-9D0DD0330D6C963E2063B3878CDECD17'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"nickname": {
"nicknameId": "nn-9D0DD0330D6C963E2063B3878CDECD17",
"nickname": "赤外線リモコン",
"deviceList": [
{
"deviceName": "赤外線リモコン REX",
"thingId": "th-DF069858E95F1BB895D97006BAC7F6AA",
"serviceId": "rex-base-409f38d28d9a",
...
}
]
}
}
レスポンス情報のうち、主要な値の意味は以下のとおりです。
プロパティ名 | 型 | 説明 |
---|---|---|
nickname |
Array | ニックネーム情報を表す NicknameInfo オブジェクト |
updateNickname()
このメソッドは、ニックネームの名前および関連付けられているデバイス (シング ID) を変更します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
nicknameId |
String | 必須 | ニックネーム ID。 |
thingId |
String または Array | 必須 | シング ID、または、シング ID のリスト。リストで複数のシング ID を関連付ける場合は、最大 2 つまで、かつ、その 2 つのシング ID が表すデバイスは同一 (serviceId が同一)
でなければいけません。 |
nickname |
String | 必須 | ニックネーム。 |
dSymphony.updateNickname({
nicknameId: 'nn-9D0DD0330D6C963E2063B3878CDECD17',
thingId : 'th-DF069858E95F1BB895D97006BAC7F6AA',
nickname : '居間のリモコン'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
deleteNickname()
このメソッドは、ニックネームを削除します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
nicknameId |
String | 必須 | ニックネーム ID。 |
dSymphony.deleteNickname({
nicknameId: 'nn-89A594211B64B890FBBE33B99686F4C5'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
getTags()
このメソッドは、登録済みのタグ、および、そのタグに関連付けられているデバイスの情報を検索します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
tagId |
String | 任意 | タグ ID。 |
tagName |
String | 任意 | タグ 名。完全一致で検索します。 |
thingId |
String | 任意 | シング ID。 |
dSymphony.getTags().then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"tagList": [
{
"tagId": "tg-F38172B6AC6ADE205A67706A54508704",
"tagName": "居間の照明",
"deviceList": [
{
"deviceName": "Hue color lamp 2",
"thingId": "th-177FD7DDF0536BDE816762DCF394A116",
...
},
{
"deviceName": "Hue color lamp 3",
"thingId": "th-01F2ED28B70E730504438D1F1405B451",
...
},
{
"deviceName": "Hue color lamp 1",
"thingId": "th-A7E2F85D264D52E8F2EA0B507D8CCA57",
...
}
]
}
]
}
レスポンス情報のうち、主要な値の意味は以下のとおりです。
プロパティ名 | 型 | 説明 |
---|---|---|
tagList |
Array | タグ情報を表す TagInfo オブジェクトのリスト。 |
createTag()
このメソッドは、タグを新規に生成し、複数の同種別のデバイスを関連付けてグルーピングします。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
thingIdList |
Array | 必須 | シング ID のリスト。シング ID が表すデバイスは、同じ種別のデバイスでなければいけません (たとえば、ライトとテレビをタグでグルーピングすることはできません)。 |
tagName |
String | 必須 | タグ名。 |
dSymphony.createTag({
thingIdList : [
'th-A7E2F85D264D52E8F2EA0B507D8CCA57',
'th-177FD7DDF0536BDE816762DCF394A116',
'th-01F2ED28B70E730504438D1F1405B451'
],
tagName : '居間の照明'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
{
"result": 0,
"error": null,
"tagId": "tg-F38172B6AC6ADE205A67706A54508704"
}
レスポンス情報のうち、主要な値の意味は以下のとおりです。
プロパティ名 | 型 | 説明 |
---|---|---|
tagId |
String | 新たに登録されたタグの ID。 |
deleteTags()
このメソッドは、登録されているすべてのタグをまとめて削除します。このメソッドは、Promise
オブジェクトを返します。
このメソッドには、引数はありません。
dSymphony.deleteTags().then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
getTag()
このメソッドは、タグ ID から該当のタグ、および、そのタグに関連付けられているデバイスの情報を検索します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
tagId |
String | 必須 | タグ ID。 |
thingId |
String | 任意 | シング ID。 |
dSymphony.getTag({
tagId: 'tg-F38172B6AC6ADE205A67706A54508704'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null,
"tagInfo": {
"tagId": "tg-F38172B6AC6ADE205A67706A54508704",
"tagName": "居間の照明",
"deviceList": [
{
"deviceName": "Hue color lamp 2",
"thingId": "th-177FD7DDF0536BDE816762DCF394A116",
...
},
{
"deviceName": "Hue color lamp 1",
"thingId": "th-A7E2F85D264D52E8F2EA0B507D8CCA57",
...
},
{
"deviceName": "Hue color lamp 3",
"thingId": "th-01F2ED28B70E730504438D1F1405B451",
...
}
]
}
}
レスポンス情報のうち、主要な値の意味は以下のとおりです。
プロパティ名 | 型 | 説明 |
---|---|---|
tagInfo |
Array | タグ情報を表す TagInfo オブジェクト。 |
updateTag()
このメソッドは、タグに関連付けられているデバイスのリスト、そして、タグ名を変更します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
tagId |
String | 必須 | タグ ID。 |
thingIdList |
Array | 必須 | シング ID のリスト。 |
tagName |
String | 必須 | タグ名。 |
dSymphony.updateTag({
tagId : 'tg-F38172B6AC6ADE205A67706A54508704',
thingIdList : [
'th-A7E2F85D264D52E8F2EA0B507D8CCA57',
'th-177FD7DDF0536BDE816762DCF394A116',
'th-01F2ED28B70E730504438D1F1405B451'
],
tagName : '居間の照明'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}
deleteTag()
このメソッドは、タグを削除します。このメソッドは、Promise
オブジェクトを返します。
このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。
プロパティ名 | 型 | 必須 | 説明 |
---|---|---|---|
tagId |
String | 必須 | タグ ID。 |
dSymphony.deleteTag({
tagId : 'tg-F38172B6AC6ADE205A67706A54508704'
}).then(function (res) {
console.log(JSON.stringify(res, null, ' '));
}).catch(function (error) {
console.error(error);
});
このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。
{
"result": 0,
"error": null
}