- Removed the CHANNEL_TRACE development mode build option. Certain aspects of the CHANNEL_TRACE build option were incompatible with the new bridging architecture.
- Asterisk now depends on
libuuidand optionally (but recommended)
- The new SIP stack and channel driver uses a particular version of PJSIP. Please see Building and Installing PJSIP-pjproject for more information on installing and configuring PJSIP for use with Asterisk 12.
- The Version has been increased to 12.40. For a full listing of the semantics changes in AMI, see the AMI v2 Specification.
- The details of what happens to a channel when a masquerade happens (transfers, parking, etc) have changed. Channels no longer swap Uniqueid's as a result of the masquerade. In general, AMI clients will never actually "see" a masquerade, as the operation has been effectively hidden from external systems.
- Major changes were made to both the syntax as well as the semantics of the AMI protocol. In particular, AMI events have been substantially modified and improved in this version of Asterisk. The major event changes are listed below:
- NewPeerAccount has been removed. NewAccountCode is raised instead.
- Reload events have been consolidated and standardized.
- ModuleLoadReport has been removed.
- FaxSent is now SendFAX; FaxReceived is now ReceiveFAX. This standardizes
- MusicOnHold has been replaced with MusicOnHoldStart and MusicOnHoldStop.
- JabberEvent has been removed.
- Hold is now in the core and will now raise Hold and Unhold events.
- Join is now QueueCallerJoin.
- Leave is now QueueCallerLeave.
- Agentlogin/Agentlogoff is now AgentLogin/AgentLogoff, respectively.
- ChannelUpdate has been removed.
- Local channel optimization is now conveyed via LocalOptimizationBegin and LocalOptimizationEnd.
- BridgeAction and BridgeExec have been removed.
- BlindTransfer and AttendedTransfer events were added.
- Dial is now DialBegin and DialEnd.
- DTMF is now DTMFBegin and DTMFEnd.
- Bridge has been replaced with BridgeCreate, BridgeEnter, BridgeLeave, and BridgeDestroy
- The Masquerade event is no longer raised. The Rename event still exists, but only silly channel drivers (
chan_misdn) will ever think of raising it, and you shouldn't be using
- MusicOnHold has been replaced with MusicOnHoldStart and MusicOnHoldStop
- AGIExec is now AGIExecStart and AGIExecEnd
- AsyncAGI is now AsyncAGIStart, AsyncAGIExec, and AsyncAGIEnd
- The MCID AMI event now publishes a channel snapshot when available and its non-channel-snapshot parameters now use either the MCallerID or MConnectedID prefixes with Subaddr*, Name*, and Num* suffixes instead of CallerID and ConnectedID to avoid confusion with similarly named parameters in the channel snapshot.
- The Channel key used in the AlarmClear, Alarm, and DNDState has been renamed DAHDIChannel since it does not convey an Asterisk channel name.
- All AMI events now contain a SystemName field, if available.
- Local channel information in events is now prefixed with LocalOne and LocalTwo. This replaces the suffix of '1' and '2' for the two halves of the Local channel. This affects the LocalBridge, LocalOptimizationBegin, and LocalOptimizationEnd events.
- The RTCPSent/RTCPReceived events have been significantly modified from previous versions. They now report all SR/RR packets sent/received, and have been restructured to better reflect the data sent in a SR/RR. In particular, the event structure now supports multiple report blocks.
- The deprecated use of | (pipe) as a separator in the
channelvarssetting in manager.conf has been removed.
- The SIP SIPqualifypeer action now sends a response indicating it will qualify a peer once a peer has been found to qualify. Once the qualify has been completed it will now issue a SIPqualifypeerdone event.
- The AMI event Newexten field Extension is deprecated, and may be removed in a future release. Please use the common Exten field instead.
- The AMI events ParkedCall, ParkedCallTimeOut, ParkedCallGiveUp, and UnParkedCall have changed significantly in the new
- The Channel and From headers are gone. For the channel that was parked or is coming out of parking, a Parkee channel snapshot is issued and it has a number of fields associated with it. The old Channel header relayed the same data as the new ParkeeChannel header.
- The From field was ambiguous and changed meaning depending on the event. For most of these, it was the name of the channel that parked the call (the Parker). There is no longer a header that provides this channel name, however the ParkerDialString will contain a dialstring to redial the device that parked the call.
- On UnParkedCall events, the From header would instead represent the channel responsible for retrieving the parkee. It receives a channel snapshot labeled Retriever. The from field is is replaced with RetrieverChannel.
- Lastly, the Exten field has been replaced with ParkingSpace.
- The AMI event Parkinglot (response to Parkinglots command) in a similar fashion has changed the field names StartExten and StopExten to StartSpace and StopSpace respectively.
- The AMI Status response event to the AMI Status action replaces the BridgedChannel and BridgedUniqueid headers with the BridgeID header to indicate what bridge the channel is currently in.