jef2000 - 2007-10-16

Hi,

Actually, Linknx interface with other applications is based on XML messages transmitted over a raw TCP conenction or unix socket. A connection can be used to perform multiple request/response transactions, each message being terminated by a special character with ASCII code 4 (corresponding to <ctrl>+D) to allow receiver to isolate and process it. This is very convenient for development and debugging because user can connect using telnet on the linknx port, type XML commands followed by <ctrl>+D and receive answers, but its  completely non-standard and lacks authentication mechanism. I would like to replace it by something else, but can't find out what's the best solution. Any suggestion is welcome.

I already thought about web-services, but I think it would bring too much overhead and harm the simplicity of the system, and also I would like to keep for the transmitted xml exactly the same syntax as in the configuration file. Perhaps we could use raw XML over HTTP, because what HTTP provides in terms of message isolation and authentication would fill all my needs. And the HTTP keep-alive functionality would allow to keep the connection opened and perform multiple requests.