Clone this wiki locally
Build 212 / Released 2011-06-19
This build includes CDR creation and delivery over a number of transports, improves statistics, and allows applications to keep Rayo out of the media path. It also includes a number of bug fixes and minor API changes.
Calls rejected because the server is quiesced now appear in statistics as rejected.
Quiesce status is now reported through the admin MBean.
Added initial support for CDR management with Spring hooks, CDR manager service, and file-based storage.
Ozone Servlet and MohoDriver can now create and store CDRs.
CDRs now include
ending time, and
CDRs can now be delivered by JMS, XMPP pubsub, AMQP or stored as files.
Added ability to alter storage location of CDRs using JMX.
mediaattribute to Transfer. Possible values are
bridged(Rayo in media path) or
direct(Rayo used for signaling only)
If end event generates an error, the error is now handled.
API now uses
<iq/>for server to client events.
Transfer broke in last build.
Timeouts were being parsed in 'PT' time format instead of milliseconds.
java.lang.IllegalArgumentException: Call id cannot be null; now it doesn't.
Redirect caused an error/
If verb encountered an error, the
completeevent wasn't getting set.
Build 188 / Released 2011-06-10
This release improves consistency between API elements, makes it easier to work with complete events, simplifies the API by reducing unnecessary element nesting, adds some future-proofing to naming and call IDs, and also adds management and monitoring of cluster status through HTTP and JMX APIs.
Completeevents now include one of the following reasons:
Now validating that choices is present and is either a URL or inline choices, but not both.
Validation errors return
CallRegistrymethod to return all active calls
Complete events are part of the Ozone namespace, allowing the event to be read without needing to load a new namespace.
The "reason" for End is now a nested element instead of an attribute.
<end xmlns='urn:xmpp:ozone:1'><timeout /></end>instead of
<end xmlns='urn:xmpp:ozone:1' reason='timeout'/>
bothhas been changed to
any. Valid values are now
sayno longer have a
voiceattribute. Voice can instead be set in the SSML for the prompt contained in these elements.
When making outbound calls, the call ID in the IQ result to dial is no longer a full JID, just the local portion of the ID. Including the JID made the call ID be specific to an XMPP transport. In the future, other transports may be used.
Outbound call progress events changed from
info/answerto root elements named
Timeouts are now in milliseconds (previously they were in PT format)
transfernow properly report the reason 'HANGUP' when forced to terminate due to far end disconnect.
Conference could lead to deadlocks; now it can't.
EndEvent didn't fire if the call with active verbs disconnected AND the handler's stop method fired a complete event on the same thread as the one calling stop
fromon outbound call was missing the error message
Management & Monitoring
Added HTTP and JMX interfaces for retrieving monitoring info.
You can now quiesce a server through HTTP or JMX.
You can now change logging level on running servers through JMX.
Added call statistics for monitoring: total calls, outgoing calls, incoming calls, rejected, redirected, busy, timed out, failed, accepted, answered, and the count of active verbs
Added Ozone message statistics for monitoring different message types, iq, call events, validation errors, all commands, presence and message stanzas received.
Monitoring data includes build version information, quiesce status.
New CDRs: available via file storage and amqp
Go here for detailed info about Management & Monitoring.