tencent cloud

物联网通信

动态与公告
产品动态
产品简介
产品概述
产品功能
产品优势
应用场景
产品限制
基本概念
快速入门
快速开始
场景一:设备互通
场景二:设备状态上报与状态设置
MQTT.fx接入指南
控制台使用手册
产品管理
规则引擎
子账号访问IoT
固件升级
资源管理
证书管理
开发者手册
功能组件
签名方法
设备身份认证
设备接入协议
网关子设备
消息通信
设备影子
设备固件升级
设备远程配置
资源管理
设备日志上报
NTP服务
设备端接入手册
设备接入概述
基于C SDK接入
基于 Android SDK 接入
基于 Java SDK 接入
基于 Python SDK 接入
API 文档
History
Introduction
API Category
Making API Requests
Device Shadow APIs
Device APIs
CA Certificate APIs
Product APIs
Data Types
Error Codes
常见问题
一般性问题
设备接入和上报问题
规则引擎问题
控制台相关问题
IoT Hub 政策
隐私协议
数据处理和安全协议
词汇表

NTP服务

PDF
聚焦模式
字号
最后更新时间: 2024-12-27 15:54:13

功能概述

NTP 服务主要是解决资源受限的设备,系统不包含 NTP 服务,没有精确时间戳的问题。实现此类功能需利用以下两个 Topic:
请求 Topic(用于发布):$sys/operation/${ProductId}/${DeviceName}
响应 Topic(用于订阅):$sys/operation/result/${ProductId}/${DeviceName}

实现原理

物联网通信平台借鉴 NTP 协议原理,将平台作为 NTP 服务器。设备端向平台请求时,平台返回的 NTP 时间。设备端收到返回后,再结合请求时间和接收时间,一起计算出当前精确时间。

操作步骤

1. 设备端通过 MQTT 协议发布一条消息到 $sys/operation/${ProductId}/${DeviceName},请求平台下发 NTP 时间,同时设备端记录请求时间 deviceSendtime,请求消息为 json 格式,内容如下:
{
"type": "get",
"resource": [
"time"
]
}
2. 平台通过 $sys/operation/result/${ProductId}/${DeviceName} 返回 NTP 时间,同时设备端记录接收时间 deviceRecvtime,返回消息为 json 格式,内容如下:
{
"type": "get",
"time": 1621562342,
"ntptime1": 1621562342773,
"ntptime2": 1621562342773
}
3. 通过设备端收到的 NTP 时间(${ntptime1} + ${ntptime2})、接收时间(${deviceRecvtime})和请求时间(${deviceSendtime}),一起计算精确时间,方法如下: 精确时间 =(${ntptime1} + ${ntptime2} + ${deviceRecvtime} - ${deviceSendtime}) / 2

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈