更新时间:2024-06-20 06:00:53下载pdf
涂鸦基于开源的 Pulsar 进行了定制改进,实现消息订阅功能,并提供 Java 版本 Pulsar SDK。本文介绍如何使用涂鸦 Pulsar SDK 进行消息接收实践。
使用 IntelliJ IDEA 打开源码工程。
单击 Open,查找到下载的 Pulsar SDK 解压缩后文件。
修改 open-mq-sdk/src/main/java/com.tuya.open.sdk/mq/MqConsumer.java
文件参数,修改 Java 工程为测试环境。具体参数说明可查看 mq/MqEnv.java
文件。
private MqEnv env = MqEnv.TEST;
MqEnv.TEST
代表测试环境。MqEnv.PROD
代表正式环境。修改 open-mq-sdk/src/main/java/com.tuya.open.sdk/example/ConsumerExample.java
文件参数。
String url = MqConfigs.CN_SERVER_URL;
String accessId = "xt*****ff**n1****8ufo";
String accessKey = "479bcb7345******582d9c******4ef7";
参数 | 说明 |
---|---|
url |
接入地址。根据调用的区域进行选择:
mq/MqConfigs.java 。 |
accessId |
填写 云项目 中 API 授权密钥的 Access ID。 |
accessKey |
填写云项目中 API 授权密钥的 Access Secret。 |
配置测试设备。
在云项目的 消息订阅 页面,开启消息订阅。
待订阅状态显示 已开启 后,单击 测试环境 页签。
在搜索栏中输入已关联的设备 ID,单击放大镜按钮搜索后,单击选中设备。
已关联的设备设置为测试设备后,测试设备所上报的消息会发送至测试通道,以方面您进行设备功能调试。
在开发工具 IntelliJ IDEA 上,右键单击 ConsumerExample.java
文件,选择 Run,执行该程序。
通过智能生活 App 操作设备。
在开发工具 IntelliJ IDEA 上,自动获取到消息推送展示。
根据您收到的消息推送,您可以按照以下格式进行解析。更多消息类型,请参考 消息类型。
参数名 | 数据类型 | 描述 |
---|---|---|
protocol | Integer | 协议号 |
pv | String | 通讯协议版本号 |
t | Long | 时间戳 |
sign | String | 签名 |
data | String | 数据体 |
{
"protocol": 4,
"pv": "2.0",
"t": 146052438362,
"data":"4FDEE3FE59Fxxxx***",
"sign": "58285279b5b5790c7d917dxxxxx***"
}
使用涂鸦 Pulsar SDK(Java)进行消息接收实践后,您可以继续:
原因分析:该错误是因为无法识别订阅者。
解决方法:
原因分析:该错误是因为订阅信息不存在。
解决方法:前往 涂鸦开发者平台 查看订阅名称是否存在。涂鸦默认提供一个订阅名称,规则为 {AccessId}-sub
(例如 57e9trwr********s38-sub
)。但是,自定义的订阅名称需要您前往涂鸦开发者平台自行创建,具体步骤请参考 管理订阅消息。
完整错误:Failed to subscribe 57e9trwr********s38/out/event with 11 partitions Subscription is of different type
。
原因分析:该错误是当前已经存在其它订阅类型的消费者,多种订阅类型的消费者无法共存。
解决方法:如果要修改消费者订阅类型,您先关闭所有消费者再启动,或者更换一个订阅名称。
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈