订阅资源流转

建立订阅关系后,支持使用REDIS的方式进行数据上报;
订阅关系提供订阅BV数字孪生服务中所有资源消息,将资源数据或资源的一个或多个事件按指定的操作类型、订阅类型以及消息质量,将资源内产品下所有设备的上行数据(事件上报、属性上报、自定义上报)、资源流转(订阅资源),地理实体下所有POI的上行数据(属性上报)等流转到特定的服务端或应用平台或其下的某特定角色或用户。
订阅者指需要向服务端进行订阅的服务端或应用平台。消费者指在BV数字孪生平台为订阅应用端创建的扩展体系。在消费者扩展体系内可以创建组织架构、用户组、用户并为用户指定角色。订阅者可以根据服务端或应用平台内部的用户体系创建消费者,配置订阅关系后,数字孪生服务会将资源下所有实体的已订阅类型的消息转发⾄指定的消费者。

准备事项

1.注册数字孪生服务DTService(以下简称DTS)账户
2.了解DTS的基本功能操作,可参考《数字孪生服务DTService教程》
3.已创建第三方服务端或应用平台的订阅者和订阅资源内容。可参考订阅管理

Redis 发布订阅

Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。Redis 客户端可以订阅任意数量的频道。

下图展示了频道 channel1 , 以及订阅这个频道的三个客户端 —— client2 、 client5 和 client1 之间的关系:

当有新消息通过 PUBLISH 命令发送给频道 channel1 时, 这个消息就会被发送给订阅它的三个客户端:

命令 描述
PSUBSCRIBE pattern [pattern …] 订阅一个或多个符合给定模式的频道
PUBSUB subcommand [argument [argument …]] 查看订阅与发布系统状态
PUBLISH channel message 将信息发送到指定的频道
PUNSUBSCRIBE [pattern [pattern …]] 退订所有给定模式的频道
SUBSCRIBE channel [channel …] 订阅给定的一个或多个频道的信息
UNSUBSCRIBE [channel [channel …]] 退订给定的频道
PUBLISH channel* message 将信息发送到所有channel开头的频道

流转数据到应用程序

服务层将根据订阅配置进行异步数据处理,将消息发送到应用程序。

协议格式

code message
channel /topic/${topic}。其中,变量${topic}需替换为数据发往的目标Topic
messageId 放在message中的参数,消息体唯一主键
productId 放在message中的参数,产品的Key,即BV数字孪生模块为产品颁发的全局唯一标识符
deviceId 放在message中的参数,设备在产品下的唯一标识符
identifier 放在message中的参数,属性或事件唯一标识符
name 放在message中的参数,功能名称
type 放在message中的参数,数据类型或事件类型
qos 放在message中的参数,消息质量。qos=0,当发生错误时,消息丢失;qos=1(暂不支持),当消息接收端宕机时,消息丢失;qos=2,保证消息质量。默认属性上报为qos=2
timestamp 放在message中的参数,上行数据传输时间。时间戳格式为数值,值为自GMT 1970年1月1日0时0分到当前时间点所经过的毫秒数。
version 放在message中的参数,版本号。若不传入此参数,则默认default
templateId 放在message中的参数,消息(事件、属性详情)模板唯一标识符
templateURL 放在message中的参数,消息(事件、属性详情)模板访问链接
callbackURL 放在message中的参数,消息回执接口
payload 放在message中的参数,上报的参数。说明:事件上报时,为事件的输出参数;属性上报时为属性参数。
message-Type 网关发送给BV数字孪生模块的上行数据的数据格式,目前支持JSON。
message 发往${topic}的数据内容。

回执参数

回执参数 说明
code 响应状态码。0:表示收到消息
info 消息内容
+messageId 消息体唯一主键
+qos 消息质量
{
"code":0,
"info":{
    "messageId":"854499b0df244a27",
    "qos":2
        }
}

自定义协议格式

数字孪生服务分发自定义Topic数据时,将使用数据透传(不会根据产品ProFile验证过滤属性)的方式进行数据传输。

作者:北京-产品-yantings  创建时间:2021-12-21 16:42
最后编辑:北京-产品-yantings  更新时间:2026-07-07 18:14