################################################################################ ## Zero of One - PROTOCOL VERSION 1 ############################################ ################################################################################ Communications are done through bi-directional sockets. All communications are text based. Messages are separated by the '\n' character. #### SUPPORTED MESSAGES ######################################################## Messages use the "[ ]\n" format. Neither nor are allowed to contain the character '\n'. ###### Requests ################################################################ ######## Request Protocol Version ############################################## ########## Syntax "": "?RPV" "": list of comma separated unsigned integers. ########## Semantic Upon reception of one such message, one should start using the latest Zero of One protocol version listed in that one can. If none are supported, communication sockets should be closed (error messages may be sent prior to closing the socket). Otherwise, a Confirm Protocol Version message should be sent. ######## Request Learn ######################################################### ########## Syntax "": "?RL" "": Any character string (does not expect null termination). ########## Semantic Requests the learning of . Response should be either a Positive message, or a Negative message. ######## Request Learn & Store ################################################# ########## Syntax "": "?RLS" "": Any character string (does not expect null termination). ########## Semantic Requests the learning of , followed by the storing of in the storage file. Response should be either a Positive message, or a Negative message. ######## Request Learn & Store & Reply ######################################### ########## Syntax "": "?RLSR" "": Any character string (does not expect null termination). ########## Semantic Requests the learning of , followed by the storing of in the storage file, as well as the generation of a reply. Response should be either a Positive message preceded by a Generated Reply message, or a Negative message. ######## Request Reply ######################################################### ########## Syntax "": "?RR" "": Any character string (does not expect null termination). ########## Semantic Requests the generation of a reply to . Response should be either a Positive message preceded by a Generated Reply message, or a Negative message. ###### Replies ################################################################# ######## Confirm Protocol Version ############################################## ########## Syntax "": "!CPV" "": unsigned integer. ########## Semantic Indicates the Zero of One protocol version that will henceforth be used. ######## Positive ############################################################## ########## Syntax "": "!P" "": None. ########## Semantic Previous request should be considered as being completed (no more messages related to it will be sent). ######## Negative ############################################################## ########## Syntax "": "!N" "": None. ########## Semantic Previous request should be considered as having failed (no more messages related to it will be sent). ######## Generated Reply ####################################################### ########## Syntax "": "!GR" "": Any character string (without null termination). ########## Semantic This is a string that has been generated following a request. ###### Errors ################################################################## ######## Debug Message ######################################################### ########## Syntax "": "[D]" "": Any character string (without null termination). ########## Semantic Debug message that has been generated during the handling of the previous request. ######## Warning Message ####################################################### ########## Syntax "": "[W]" "": Any character string (without null termination). ########## Semantic Warning message that has been generated during the handling of the previous request. ######## Error Message ######################################################### ########## Syntax "": "[E]" "": Any character string (without null termination). ########## Semantic Error message that has been generated during the handling of the previous request. ######## Programming fault Message ############################################# ########## Syntax "": "[P]" "": Any character string (without null termination). ########## Semantic A serious programming fault occurred during the handling of the previous request. ######## Fatal error Message ############################################# ########## Syntax "": "[F]" "": Any character string (without null termination). ########## Semantic A fatal error occurred during the handling of the previous request.