-
Notifications
You must be signed in to change notification settings - Fork 11
/
TXProtocol.txt
95 lines (76 loc) · 1.92 KB
/
TXProtocol.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
Loginnachricht
{
"type": "login",
"device": "SDRPager",
"version": "1.2",
"authKey": "abcd1234",
"ProxyUsed: {
enabled: false oder true,
version: "1.0"
}
}
Zeitabweichung würde zwar für die XOS-Geräte durch den Proxy implementieren, aber auf ich auf IP-basierten Maschinen durch
Verpflichtung von NTP-Benutzung umgehen und die Werte aus dem timesync nicht benutzen. Evtl. kann man in die Client-Software
eine Abfrage einbauen, ob die NTP-Synchronisierung ok ist. Ich habe so etwas hier:
https://github.com/dh3wr/RasPagerDigi/blob/master/software/raspager-control/src/tools/networkcontrol.cpp
Line 139: bool NetworkControl::NTPServerSynced() { ...
Ermitteln der Zeitabweichung.
Wird vom Client und Server genutzt.
{
"type": "timesync",
"time": 1000000
}
Server sendet Zeitanpassung an den Client.
{
"type": "timeadj",
"offset": -100
}
Server sendet Zeitschlitze an den Client (Handshake abgeschlossen).
{
"type": "timeslots",
"slots": "123456"
}
Alternativ: Server sendet Zeitanpassung und Zeitschlitze in einem Rutsch an den Client (Handshake abgeschlossen).
--> Würde ich einzeln machen der Übersicht halber
{
"type": "timeadj",
"offset": -100,
"slots": "12AB"
}
Pagernachricht (sn mit ack benötigt?)
{
"type": "message",
"sn": 1,
"priority": 1, <-- Ist das nötig? Wird das überhaupt vom Sender ausgewertet? Im alten Protokoll gibt es das nicht. Das Scheduling geschieht ja im Core.
"bits": 1, <-- Was ist das?
"ts": "20170201105700",
"ids": [1122334, 1122335],
"text": "hello, world"
}
Ack für Nachrichten, falls benötigt.
{
"type": "ack",
"success": true
"sn": [1, 2]
}
Keep Alive - Auf jeden Fall
{
"type": "ping",
"sn": 1 Evtl mit MOD 10000
}
Antwort:
{
"type": "pong"
"sn": Aus Anfrage
}
Telemetrie
{
"type": "telemetry"
"voltage": "12.2",
"current": "2.3",
"swr": "1.2",
"forwardPower: "20.2",
"reflectedPower: "0.4",
"temperatureAmbient: "25.3",
"temperaturePA: "34.3"
}