The observable contract is the specifications of APIs exposed by observables and observers. Each of these APIs must be mapped to a message to expose an observable on a network link: http://reactivex.io/documentation/contract.html.
The Bosh XEP (XMPP Extension Protocol) is an example of how a pull protocol can be used to implement push. It is available here: https://xmpp.org/extensions/xep-0124.html.
At the time of writing this book, the MQTT 5 specifications are not yet published. The current draft is available here: https://www.oasis-open.org/committees/documents.php?wg_abbrev=mqtt&show_descriptions=yes.
Once the specifications are complete, they will be available here: http://mqtt.org/documentation.