are they using any special protocol, like webSockets? usally bidi communications takes a lot more work to do.
webSockets provides for unsolicited messages in either direction and out of order responses, text and binary data, encryption, and message chunking.. all under the covers.. app doesn't know