Remote Control  

Handshake

  [Related Topics]   

SymPhoTime is designed to work as a TCP/IP remote server. It listens at port 6000 for client messages. These messages have to perform a certain well-defined handshake. The time sequence of a successful remote protocol reads as follows:


Connection Establishment:

 
Client Server   (SymPhoTime)
  after starting up:
listening at port 6000
Client establishes connection at port 6000.  
  Server may (or may not) send a status message.

type: PQ_MSGTYP_ENCODED_STATUSMSG
status:   PQ_ERRCODE_NO_ERROR
If sent, client answers the status message.

type: PQ_MSGTYP_ENCODED_STATUSREPLY
status:   PQ_STOPREASON_CODE_CONTINUE_OK
 


Measurement:

 
Client Server   (SymPhoTime)
Client requests Measurement.

type: PQ_MSGTYP_DATAFRAME_SRVREQUEST
  transfers all necessary data
 
  Server acknowledges.

type: PQ_MSGTYP_DATAFRAME_SRVREPLY
status:   PQ_ERRCODE_NO_ERROR
 
  Once the measurement is running, the server sends repeatedly unsolicited data frames. Which data they contain is only depending on the measurement type

type:       PQ_MSGTYP_DATAFRAME_SRVNACK
Client may (or may not) analyse the data sent,
but must not answer!
 


On Error on Server:

 
Client Server   (SymPhoTime)
  On error condition the server sends a status message

type: PQ_MSGTYP_ENCODED_STATUSMSG
status:   PQ_ERRCODE_nnn

and quits the measurement.
Client acknowledges status message.

type: PQ_MSGTYP_ENCODED_STATUSREPLY
status:   PQ_STOPREASON_CODE_ERROR
 


On Measurement Complete:

 
Client Server   (SymPhoTime)
  Server sends a status message

type: PQ_MSGTYP_ENCODED_STATUSMSG
status:   PQ_ERRCODE_NO_ERROR
Client acknowledges status message.

type: PQ_MSGTYP_ENCODED_STATUSREPLY
status:   PQ_STOPREASON_CODE_FINISHED_OK
 


On Stop-Measurement-Request by Client:

 
Client Server   (SymPhoTime)
Client terminates measurement by sending a status message

type: PQ_MSGTYP_ENCODED_STATUSMSG
status:   PQ_STOPREASON_CODE_USER_BREAK
 
  Server acknowledges

type: PQ_MSGTYP_ENCODED_STATUSREPLY
status:   PQ_ERRCODE_NO_ERROR

and terminates measurement.


Connection Termination:

 
normal case:   Client terminates connection.
error case:
e.g. acknowledgement of a status message missing  
Server terminates connection after well defined timeout.


Invoking the SymPhoTime 64  Server Dialog you may inspect all raw data transferred during this handshake. To ease interpretation, the server request data of the current (last) request are decoded and shown.



Related Topics:   
   [Remote Control]    [Server Dialog]    [Remote Interface]
   [Support]