Changes for page TCP Communication
Last modified by csp on 2025/01/30 12:05
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,5 +1,9 @@ 1 1 2 2 3 +{{toc/}} 4 + 5 + 6 + 3 3 {{status colour="Red" title="Work in progress - Might by subject to change"/}} 4 4 5 5 Both the controller and the client GUI send their data as JSON Objects. ... ... @@ -49,3 +49,37 @@ 49 49 ... ], 50 50 "locks":[-1, -1, -1, 5, -1, -1, 2, 10, -1, -1, ..., -1]}} 51 51 {{/code}} 56 + 57 +== Messages received by controller == 58 + 59 +* Every message must contain the key **command**. 60 +* Depending on the command, additional keys might be required. 61 + 62 +=== Valid commands === 63 + 64 +* //SHUTDOWN// - Causing the controller to end the program and close all sockets 65 +* //LOGOUT// - Closing the connection, leaving the controller running 66 +* //STATUS// - Poll for the current status, should trigger a status reply message 67 +* //CLEANUP// - Start the cleanup procedure, sending the trains back to their home tacks 68 +* //DEBUG// - enable or disable verbose output, must supply additional payload 69 +** **state** - boolean value, true if verbose output should be activated 70 +* //PAUSE// - suspend or resume the controller, must supply additional payload 71 +** **state** - boolean value, true if controller should be suspended 72 +* //LIGHT// - activate or deactivate the lights on the railway, must supply additional payload\\ 73 +** **state** - boolean value, true if lights should be lit 74 +* //WAIT// - Force a train to wait in the next station, must supply additional payload 75 +** **train** - integer train identification 76 +* //START// - Force a waiting train to immediately abort the waiting timer, must supply additional payload 77 +** **train** - integer train identification 78 +* //SCHEDULE// - Set the new schedule for a train, needs additional payload 79 +** **train** - integer train identification 80 +** **currentIndex** - current integer position in the schedule array 81 +** **tracks** - a JSON Array of integer values, representing the station tracks in the normal encoding (Hoermann API) 82 +* //{{status colour="Yellow" title="Need to change this to enable KH-Reverse tracks"/}}SPEED// - Change the speed settings of a train, needs additional payload 83 +** **train** - integer train identification 84 +** **speeds** - JSON Array with three integer values (% class="confluence-link" %)spdSlow, spdCaution, spdNormal 85 +* //TIME// - Change the waiting times for a train 86 +** **train** - integer train identification 87 +** **times** - 88 + 89 +{{status colour="Yellow" title="Define a format for this"/}}
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -9471 4831 +9471509 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/SS14Railway/pages/9471 483/TCP Communication1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/SS14Railway/pages/9471509/TCP Communication