将自定义全局数据保存到租户中
Save custom global data into a tenant
我想要实现的是拥有一个带有自定义数据的全局片段。此数据片段必须可随时从中央源访问,并且租户之间可以不同。所有设备都需要此数据
我有两个想法
租户:
将自定义数据保存到租户片段中的最佳方式是什么?我试过使用以下请求但没有运气。
PUT /tenant/tenants/tenant1 HTTP/1.1
Host: tenant1.enterpise.com
Content-Type: application/json
Accept: application/json
Authorization: Basic
{
"customFragment:{
"forms":[
{
"type": ....,
"inputa" : ...
},
.....
],
"products":[
{
"name": ....,
"stock" : ...
}
],
.....
}
}
我能做什么?
将 managementObject 与自定义数据片段一起使用。
我可以在数据库中使用管理对象来实现这一点吗?如果这个管理对象没有isDevice属性会收费吗?
提前致谢!
两种方法在这里都有效
将其存储在租户对象中
你的请求(几乎)是正确的,但是这个请求不能用 tenant1 的用户来执行。租户不能更新自己的租户对象。您需要从父租户执行此请求(管理租户或者如果它是另一个租户的子租户,您也可以从那里执行)。
现在几乎是:对于租户,您不能直接创建任意片段。您需要将自定义数据放入名为 "customProperties" 的片段中。你在那个片段里放什么又取决于你。
{
"customProperties" : {
"test": "test",
"abc": {
"test": 1
}
}
}
要访问此数据,您可以使用 API /tenant/currentTenant。这个 API 对于每个经过身份验证的用户始终可用,无论访问权限如何。它将 return 租户信息(包括 customProperties)。这个 API 也是只读的,就像 /user/currentUser API.
存储在托管对象中
在清单 API 中,您可以向对象添加片段 "c8y_Global"。这将使每个用户都可以使用此 managedObject,而不管访问权限如何(当然,您仍然需要租户的有效凭据。
{
"c8y_Global": {},
"myConfig": {
...
}
}
关于收费,最好直接与您的平台提供商联系,但通常只有设备是收费的一部分,这不会被视为设备。顺便说一句,仪表板也是这种带有 c8y_Global 标志的托管对象。
我想要实现的是拥有一个带有自定义数据的全局片段。此数据片段必须可随时从中央源访问,并且租户之间可以不同。所有设备都需要此数据
我有两个想法
租户: 将自定义数据保存到租户片段中的最佳方式是什么?我试过使用以下请求但没有运气。
PUT /tenant/tenants/tenant1 HTTP/1.1
Host: tenant1.enterpise.com
Content-Type: application/json
Accept: application/json
Authorization: Basic
{
"customFragment:{
"forms":[
{
"type": ....,
"inputa" : ...
},
.....
],
"products":[
{
"name": ....,
"stock" : ...
}
],
.....
}
}
我能做什么?
将 managementObject 与自定义数据片段一起使用。
我可以在数据库中使用管理对象来实现这一点吗?如果这个管理对象没有isDevice属性会收费吗?
提前致谢!
两种方法在这里都有效
将其存储在租户对象中
你的请求(几乎)是正确的,但是这个请求不能用 tenant1 的用户来执行。租户不能更新自己的租户对象。您需要从父租户执行此请求(管理租户或者如果它是另一个租户的子租户,您也可以从那里执行)。 现在几乎是:对于租户,您不能直接创建任意片段。您需要将自定义数据放入名为 "customProperties" 的片段中。你在那个片段里放什么又取决于你。
{
"customProperties" : {
"test": "test",
"abc": {
"test": 1
}
}
}
要访问此数据,您可以使用 API /tenant/currentTenant。这个 API 对于每个经过身份验证的用户始终可用,无论访问权限如何。它将 return 租户信息(包括 customProperties)。这个 API 也是只读的,就像 /user/currentUser API.
存储在托管对象中
在清单 API 中,您可以向对象添加片段 "c8y_Global"。这将使每个用户都可以使用此 managedObject,而不管访问权限如何(当然,您仍然需要租户的有效凭据。
{
"c8y_Global": {},
"myConfig": {
...
}
}
关于收费,最好直接与您的平台提供商联系,但通常只有设备是收费的一部分,这不会被视为设备。顺便说一句,仪表板也是这种带有 c8y_Global 标志的托管对象。