This document introduces Rayo, an open protocol for building telephony applications over XMPP. Rayo allows for call control without handling media directly, using existing protocols like SIP and Jingle. It provides primitives like making and handling calls as well as advanced features like audio playback, speech synthesis, DTMF detection, and recording. Rayo was designed as a simple, cross-platform, asynchronous protocol to build flexible telephony applications.