zephyr/samples/net/nats_clients
..
publisher
subscriber
KNOWN_ISSUES
README

NATS Client Library
-------------------

NATS is a text-based IoT protocol based on a publisher-subscriber paradigm.

This implementation is still WORK IN PROGRESS. So, API may change.

NATS messages are listed below:

Msg	Side	Description
INFO	Server	Sent to client after initial TCP/IP connection
CONNECT Client	Sent to server to specify connection information
PUB	Client	Publish a message to a subject, with optional reply subject
SUB	Client	Subscribe to a subject (or subject wildcard)
UNSUB	Client	Unsubscribe (or auto-unsubscribe) from subject
MSG	Server	Delivers a message payload to a subscriber
PING	Both	PING keep-alive message
PONG	Both	PONG keep-alive response
+OK	Server	Acknowledges well-formed protocol message in verbose mode
-ERR	Server	Indicates a protocol error. Will cause client disconnect.


Known Limitations
-----------------

Msg	Side	Status
INFO	Server	Partially implemented. Not fully tested.
INFO	Client	Partially implemented. See nats_unpack_info function.
CONNECT	Client	Fully implemented.
PUB	Client	Fully implemented.
SUB	Client	Fully implemented.
UNSUB	Client	Fully implemented.
MSG	Client	Fully implemented.
PING	Server	Fully implemented.
PING	Client	Fully implemented.
PONG	Server	Fully implemented.
PONG	Client	Fully implemented.
+OK	Client	Fully implemented.
-ERR	Client	Not implemented: if the client receives something different
		from +OK, we must assume an error was detected by the peer.
		Future versions may include this message.


References
----------

More information about the NATS protocol can be found at:

http://nats.io/documentation/internals/nats-protocol/