public interface ACBindMgr
限定符和类型 | 方法和说明 |
---|---|
ACUserDevice |
bindDevice(java.lang.String subDomain,
java.lang.String physicalDeviceId,
java.lang.String name,
long userId)
绑定设备
|
ACUserDevice |
bindDeviceWithoutOwner(java.lang.String subDomain,
java.lang.String physicalDeviceId,
java.lang.String name,
long userId)
绑定设备,无管理员概念,所有人都可以绑定设备,同时所有人只能使自己解绑设备
|
ACUserDevice |
bindDeviceWithShareCode(java.lang.String shareCode,
long userId)
通过分享码绑定设备
|
void |
bindDeviceWithUser(long deviceId,
long userId,
long adminId)
设备的管理员用户将设备与指定的用户绑定起来。
|
void |
bindDeviceWithUser(long deviceId,
java.lang.String account,
long adminId)
设备的管理员用户将设备与指定的用户绑定起来。
|
void |
changeDevice(long userId,
long deviceId,
java.lang.String physicalDeviceId,
java.lang.String subDomain)
使用物理ID为physicalDeviceId的新设备替换逻辑ID为deviceId的设备。
|
void |
changeName(java.lang.String subDomain,
long deviceId,
java.lang.String name,
long userId)
修改设备名
|
void |
changeOwner(long deviceId,
long userId)
管理员接口,更改设备管理员。
|
ACDeviceShareCode |
fetchDeviceShareCode(long deviceId,
long userId,
long timeout)
取设备当前的分享码。
|
java.util.List<ACUserDevice> |
getAllDevices(java.lang.String subDomain,
long offset,
long limit)
查询所有被绑定的设备。
|
long |
getBindCount(java.lang.String subDomain)
查询已被绑定的设备的总数
|
ACObject |
getDeviceCount(java.lang.String subDomain)
已过时。
本方法统计设备在线情况已废弃,不再返回在线设备数,现被getBindCount取代,仅获取绑定设备数。
如仍需获取在线设备数量,推荐使用getDeviceCountExt
查询已被绑定的设备的总数,并提供其中在线的设备数。
|
long |
getDeviceCountOfUser(java.lang.String subDomain,
long userId)
查询用户绑定的设备数目。
|
long |
getDeviceId(java.lang.String subDomain,
java.lang.String physicalDeviceId)
根据设备物理Id查询逻辑Id
|
ACObject |
getDeviceProfile(long deviceId)
列举某一设备的所有扩展属性
|
java.util.List<ACUserDevice> |
getDevicesOfUser(java.lang.String subDomain,
long userId,
long offset,
long limit)
查询用户已绑定的设备。
|
java.util.List<ACObject> |
getDevicesOfUserExt(java.lang.String subDomain,
long userId,
long offset,
long limit)
查询用户已绑定的设备及其扩展属性。
|
java.lang.String |
getShareCode(long deviceId,
long userId)
已过时。
请使用方法fetchDeviceShareCode(long, long, long)及refreshDeviceShareCode(long, long, long)获取设备的分享二维码。
获取分享码(只有管理员可以获取 ,默认一小时内生效)
|
java.lang.String |
getShareCode(long deviceId,
long userId,
long timeout)
已过时。
请使用方法fetchDeviceShareCode(long, long, long)及refreshDeviceShareCode(long, long, long)获取设备的分享二维码。
获取分享码
|
ACUserDevice |
getUserDevice(long deviceId)
根据逻辑Id查询设备信息
|
boolean |
isDeviceBound(java.lang.String subDomain,
java.lang.String physicalDeviceId)
检查设备是否已经被用户绑定了。
|
boolean |
isDeviceBoundByUser(long userId,
long deviceId)
检查指定用户是否绑定了指定设备。
|
boolean |
isDeviceBoundByUser(long userId,
java.lang.String subDomain,
java.lang.String physicalDeviceId)
检查指定用户是否绑定了指定设备。
|
boolean |
isDeviceOnline(long deviceId)
查询设备在线状态
|
boolean |
isDeviceOnline(java.lang.String subDomain,
java.lang.String physicalDeviceId)
查询设备在线状态
|
java.util.List<ACUserDevice> |
listDevices(long userId)
已过时。
本方法对查询的设备数量有限制。推荐使用方法getDeviceCountOfUser
及getDevicesOfUser。
列举用户绑定的所有设备(包括独立设备与网关设备等)。
|
java.util.List<ACDeviceUser> |
listUsers(long deviceId)
列举某一设备的所有用户
|
ACDeviceShareCode |
refreshDeviceShareCode(long deviceId,
long userId,
long timeout)
更新设备的分享码。
|
ACDeviceMsg |
sendToDevice(java.lang.String subDomain,
long deviceId,
ACDeviceMsg reqMsg,
long userId)
直接往设备发送命令/消息
|
ACDeviceMsg |
sendToDevice(java.lang.String subDomain,
java.lang.String physicalId,
ACDeviceMsg reqMsg,
long userId)
直接往设备发送命令/消息
|
void |
setDeviceProfile(long userId,
long deviceId,
ACObject profile)
设置用户所绑定设备的扩展属性。
|
void |
unbindDevice(java.lang.String subDomain,
long deviceId,
long userId)
解绑设备
|
void |
unbindDeviceWithUser(long deviceId,
long userId,
long adminId)
设备的管理员用户解除设备与用户的绑定关系。
|
@Deprecated java.util.List<ACUserDevice> listDevices(long userId) throws java.lang.Exception
userId
- 要查询的用户的ID。java.lang.Exception
java.util.List<ACDeviceUser> listUsers(long deviceId) throws java.lang.Exception
deviceId
- 设备逻辑idjava.lang.Exception
void changeName(java.lang.String subDomain, long deviceId, java.lang.String name, long userId) throws java.lang.Exception
subDomain
- 子域名,如djj(豆浆机)deviceId
- 设备id(这里的id,是调用list接口返回的id,不是制造商提供的id)name
- 新的设备名userId
- 修改该设备名的用户的IDjava.lang.Exception
ACUserDevice bindDevice(java.lang.String subDomain, java.lang.String physicalDeviceId, java.lang.String name, long userId) throws java.lang.Exception
subDomain
- 拟被绑定的设备所属的子域的名字physicalDeviceId
- 设备物理idname
- 名字userId
- 要绑定该设备的用户的IDjava.lang.Exception
ACUserDevice bindDeviceWithoutOwner(java.lang.String subDomain, java.lang.String physicalDeviceId, java.lang.String name, long userId) throws java.lang.Exception
subDomain
- 拟被绑定的设备所属的子域的名字physicalDeviceId
- 设备物理idname
- 名字userId
- 要绑定该设备的用户的IDjava.lang.Exception
java.lang.String getShareCode(long deviceId, long userId) throws java.lang.Exception
deviceId
- 设备逻辑iduserId
- 设备的管理员用户的IDjava.lang.Exception
java.lang.String getShareCode(long deviceId, long userId, long timeout) throws java.lang.Exception
deviceId
- 设备逻辑iduserId
- 设备的管理员用户timeout
- 分享码的超时时间(以秒为单位)java.lang.Exception
ACDeviceShareCode fetchDeviceShareCode(long deviceId, long userId, long timeout) throws java.lang.Exception
deviceId
- 设备的逻辑ID。userId
- 设备的管理员用户的ID。timeout
- 分享码的有效时长(以秒为单位)。此参数取值为0时表示仅取当前有效即未过期的分享码,若不存在有效的分享码则抛出分享码不存在的异常。
此参数值大于0时,若存在有效的分享码,则将其有效时长重置为此值后返回该分享码;若不存在有效的分享码则生成一个新的有效时长为timeout的分享码并返回之。
此参数的值不能超过3153600000秒(约100年),否则将被截取为此最大值。此参数小于0时也表示取此最大值。java.lang.Exception
ACDeviceShareCode refreshDeviceShareCode(long deviceId, long userId, long timeout) throws java.lang.Exception
deviceId
- 设备的逻辑ID。userId
- 设备的管理员用户的ID。timeout
- 分享码的有效时长(以秒为单位)。此参数的值为0时表示取值3600秒(1小时)。此参数的值大于0时不能超过3153600000秒(约100年),否则将被截取为此最大值。
此参数的值小于0时也表示取此最大值。java.lang.Exception
ACUserDevice bindDeviceWithShareCode(java.lang.String shareCode, long userId) throws java.lang.Exception
shareCode
- 分享码userId
- 要通过分享码绑定设备的用户的IDjava.lang.Exception
void bindDeviceWithUser(long deviceId, java.lang.String account, long adminId) throws java.lang.Exception
deviceId
- 设备的逻辑ID。account
- 要帮定设备的用户的登录名。adminId
- 设备的管理员用户的ID。java.lang.Exception
void bindDeviceWithUser(long deviceId, long userId, long adminId) throws java.lang.Exception
deviceId
- 设备的逻辑ID。userId
- 要帮定设备的用户的ID。adminId
- 设备的管理员用户的ID。java.lang.Exception
void unbindDevice(java.lang.String subDomain, long deviceId, long userId) throws java.lang.Exception
subDomain
- 要被解除绑定的设备所属的子域的名字。可选。deviceId
- 设备逻辑id。userId
- 要解除与设备的绑定关系的用户的ID。java.lang.Exception
void unbindDeviceWithUser(long deviceId, long userId, long adminId) throws java.lang.Exception
deviceId
- 设备的逻辑ID。userId
- 要被解除绑定关系的用户的ID。adminId
- 设备的管理员用户的ID。java.lang.Exception
void changeOwner(long deviceId, long userId) throws java.lang.Exception
deviceId
- 设备的逻辑iduserId
- 新管理员的idjava.lang.Exception
void changeDevice(long userId, long deviceId, java.lang.String physicalDeviceId, java.lang.String subDomain) throws java.lang.Exception
userId
- 逻辑ID为deviceId的设备的管理员用户的ID。deviceId
- 要被替换的设备的逻辑ID。physicalDeviceId
- 新设备的物理ID。subDomain
- 新设备所属的子域的名字。java.lang.Exception
boolean isDeviceOnline(long deviceId) throws java.lang.Exception
deviceId
- 设备逻辑idjava.lang.Exception
boolean isDeviceOnline(java.lang.String subDomain, java.lang.String physicalDeviceId) throws java.lang.Exception
subDomain
- 设备所属的子域的名字。physicalDeviceId
- 设备物理id。java.lang.Exception
boolean isDeviceBound(java.lang.String subDomain, java.lang.String physicalDeviceId) throws java.lang.Exception
subDomain
- 设备所属的子域的名字。physicalDeviceId
- 要被检查的设备的物理ID。java.lang.Exception
boolean isDeviceBoundByUser(long userId, long deviceId) throws java.lang.Exception
userId
- 用户ID。deviceId
- 设备逻辑ID。java.lang.Exception
boolean isDeviceBoundByUser(long userId, java.lang.String subDomain, java.lang.String physicalDeviceId) throws java.lang.Exception
userId
- 用户ID。subDomain
- 设备所属的子域的名字。physicalDeviceId
- 设备的物理ID。java.lang.Exception
long getDeviceId(java.lang.String subDomain, java.lang.String physicalDeviceId) throws java.lang.Exception
subDomain
- 设备所属的子域的名字。physicalDeviceId
- 设备物理id。java.lang.Exception
ACUserDevice getUserDevice(long deviceId) throws java.lang.Exception
deviceId
- 设备逻辑idjava.lang.Exception
void setDeviceProfile(long userId, long deviceId, ACObject profile) throws java.lang.Exception
userId
- 发起该操作的用户的ID。deviceId
- 要设置其扩展属性的设备的逻辑ID。profile
- 由键值对表达的设备的扩展属性。java.lang.Exception
ACObject getDeviceProfile(long deviceId) throws java.lang.Exception
deviceId
- 设备逻辑idjava.lang.Exception
ACDeviceMsg sendToDevice(java.lang.String subDomain, long deviceId, ACDeviceMsg reqMsg, long userId) throws java.lang.Exception
subDomain
- 设备所属的子域的名字。deviceId
- 设备逻辑id。reqMsg
- 具体的消息内容。userId
- 向设备发送消息的用户的ID。java.lang.Exception
ACDeviceMsg sendToDevice(java.lang.String subDomain, java.lang.String physicalId, ACDeviceMsg reqMsg, long userId) throws java.lang.Exception
subDomain
- 设备所属的子域的名字。physicalId
- 设备的物理Id。reqMsg
- 具体的消息内容。userId
- 向设备发送消息的用户的ID。java.lang.Exception
@Deprecated ACObject getDeviceCount(java.lang.String subDomain) throws java.lang.Exception
subDomain
- 拟查询的设备所属的子域的名字。空字符串或NULL表示忽略该参数。java.lang.Exception
long getBindCount(java.lang.String subDomain) throws java.lang.Exception
subDomain
- 拟查询的设备所属的子域的名字。空字符串或NULL表示忽略该参数。java.lang.Exception
java.util.List<ACUserDevice> getAllDevices(java.lang.String subDomain, long offset, long limit) throws java.lang.Exception
subDomain
- 拟查询的设备所属的子域的名字。空字符串或NULL表示忽略该参数。offset
- offset与limit限制查询的范围。offset是非负整数,表示返回的记录在原始集合中的偏移量。limit
- limit与offset参数指定查询的范围。limit是正整数,表示最多返回的记录的数目,并且其最大值不能超过100。java.lang.Exception
long getDeviceCountOfUser(java.lang.String subDomain, long userId) throws java.lang.Exception
subDomain
- 拟查询的设备所属的子域的名字。空字符串或NULL表示忽略该参数。userId
- 拟查询的用户的ID。java.lang.Exception
java.util.List<ACUserDevice> getDevicesOfUser(java.lang.String subDomain, long userId, long offset, long limit) throws java.lang.Exception
subDomain
- 拟查询的设备所属的子域的名字。空字符串或NULL表示忽略该参数。userId
- 拟查询的用户的ID。offset
- offset与limit限制查询的范围。offset是非负整数,表示返回的记录在原始集合中的偏移量。limit
- limit与offset参数指定查询的范围。limit是正整数,表示最多返回的记录的数目,并且其最大值不能超过100。java.lang.Exception
java.util.List<ACObject> getDevicesOfUserExt(java.lang.String subDomain, long userId, long offset, long limit) throws java.lang.Exception
subDomain
- 拟查询的设备所属的子域的名字。空字符串或NULL表示忽略该参数。userId
- 拟查询的用户的ID。offset
- offset与limit限制查询的范围。offset是非负整数,表示返回的记录在原始集合中的偏移量。limit
- limit与offset参数指定查询的范围。limit是正整数,表示最多返回的记录的数目,并且其最大值不能超过100。java.lang.Exception