高级特性 编辑文档

本篇文档介绍 Wilddog Sync 的高级特性,用于实现更丰富的场景需求。

云端时间戳

[WDGServerValue timestamp] 用于记录当前 云端时间戳

例如,在servertimestamp 节点下记录当前云端时间:



Objective-C
Swift


WDGSyncReference *currentServerTimeRef = [[WDGSync sync] referenceFromURL:@"https://samplechat.wilddogio.com/servertimestamp"];
//写入当前云端时间戳
[currentServerTimeRef setValue:[WDGServerValue timestamp]];




let currentServerTimeRef = WDGSync.sync().reference(fromURL: "https://samplechat.wilddogio.com/servertimestamp")
//写入当前云端时间戳
currentServerTimeRef.setValue(WDGServerValue.timestamp())



时钟偏差

/.info/serverTimeOffset 节点用于记录本地时间和云端时间的差值。监听该节点可以获取时钟偏差。

例如,利用时钟偏差可以计算云端时间:



Objective-C
Swift


WDGSyncReference *offsetRef = [[WDGSync sync] referenceWithPath:@".info/serverTimeOffset"];
[offsetRef observeEventType:WDGDataEventTypeValue withBlock:^(WDGDataSnapshot *snapshot) {
offset = [(NSNumber *)snapshot.value doubleValue];
double estimatedServerTimeMs = [[NSDate date] timeIntervalSince1970] * 1000.0 + offset;
}];




let offsetRef = WDGSync.sync().reference(withPath: ".info/serverTimeOffset")
offsetRef.observe(.value, with: { snapshot in
if let offset = snapshot.value as? Double {
let estimatedServerTimeMs = NSDate().timeIntervalSince1970 * 1000.0 + offset
}
})



野狗新手?
立即注册,为你提供安全可靠的实时通信云服务。
没找到需要的文档?
你可以提交工单反馈 或 阅读常见问题
期待收到你的反馈,帮助我们改进文档。
参与调研