From 5760526f69ad02189c8e385e2e974be4cba11b6e Mon Sep 17 00:00:00 2001 From: Matthew Jordan Date: Fri, 8 Aug 2014 01:33:18 +0000 Subject: [PATCH] Update UPGRADE.txt for 13 branch git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@420497 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- UPGRADE-13.txt | 372 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ UPGRADE.txt | 347 +--------------------------------------------------- 2 files changed, 373 insertions(+), 346 deletions(-) create mode 100644 UPGRADE-13.txt diff --git a/UPGRADE-13.txt b/UPGRADE-13.txt new file mode 100644 index 0000000..37160c4 --- /dev/null +++ b/UPGRADE-13.txt @@ -0,0 +1,372 @@ +=========================================================== +=== +=== Information for upgrading between Asterisk versions +=== +=== These files document all the changes that MUST be taken +=== into account when upgrading between the Asterisk +=== versions listed below. These changes may require that +=== you modify your configuration files, dialplan or (in +=== some cases) source code if you have your own Asterisk +=== modules or patches. These files also include advance +=== notice of any functionality that has been marked as +=== 'deprecated' and may be removed in a future release, +=== along with the suggested replacement functionality. +=== +=== UPGRADE-1.2.txt -- Upgrade info for 1.0 to 1.2 +=== UPGRADE-1.4.txt -- Upgrade info for 1.2 to 1.4 +=== UPGRADE-1.6.txt -- Upgrade info for 1.4 to 1.6 +=== UPGRADE-1.8.txt -- Upgrade info for 1.6 to 1.8 +=== UPGRADE-10.txt -- Upgrade info for 1.8 to 10 +=== UPGRADE-11.txt -- Upgrade info for 10 to 11 +=== UPGRADE-12.txt -- Upgrade info for 11 to 12 +=========================================================== + +From 12 to 13: + + - Sample config files have been moved from configs/ to a subfolder of that + directory, 'samples'. + + - The menuselect utility has been pulled into the Asterisk repository. As a + result, the libxml2 development library is now a required dependency for + Asterisk. + + - The asterisk command line -I option and the asterisk.conf internal_timing + option are removed and always enabled if any timing module is loaded. + + - The per console verbose level feature as previously implemented caused a + large performance penalty. The fix required some minor incompatibilities + if the new rasterisk is used to connect to an earlier version. If the new + rasterisk connects to an older Asterisk version then the root console verbose + level is always affected by the "core set verbose" command of the remote + console even though it may appear to only affect the current console. If + an older version of rasterisk connects to the new version then the + "core set verbose" command will have no effect. + + - Added a new Compiler Flag, REF_DEBUG. When enabled, reference counted + objects will emit additional debug information to the refs log file located + in the standard Asterisk log file directory. This log file is useful in + tracking down object leaks and other reference counting issues. Prior to + this version, this option was only available by modifying the source code + directly. This change also includes a new script, refcounter.py, in the + contrib folder that will process the refs log file. + + - The asterisk compatibility options in asterisk.conf have been removed. + These options enabled certain backwards compatibility features for + pbx_realtime, res_agi, and app_set that made their behaviour similar to + Asterisk 1.4. Users who used these backwards compatibility settings should + update their dialplans to use ',' instead of '|' as a delimiter, and should + use the Set dialplan application instead of the MSet dialplan application. + +accountcode: + - Accountcode behavior changed somewhat to add functional peeraccount + support. The main change is that local channels now cross accountcode + and peeraccount across the special bridge between the ;1 and ;2 channels + just like channels between normal bridges. See the CHANGES file for + more information. + +ARI: + - The ARI version has been changed from 1.0.0 to 1.1.0. This is to reflect + the backwards compatible changes listed below. + + - Added a new ARI resource 'mailboxes' which allows the creation and + modification of mailboxes managed by external MWI. Modules res_mwi_external + and res_stasis_mailbox must be enabled to use this resource. + + - Added new events for externally initiated transfers. The event + BridgeBlindTransfer is now raised when a channel initiates a blind transfer + of a bridge in the ARI controlled application to the dialplan; the + BridgeAttendedTransfer event is raised when a channel initiates an + attended transfer of a bridge in the ARI controlled application to the + dialplan. + + - Channel variables may now be specified as a body parameter to the + POST /channels operation. The 'variables' key in the JSON is interpreted + as a sequence of key/value pairs that will be added to the created channel + as channel variables. Other parameters in the JSON body are treated as + query parameters of the same name. + + - A bug fix in bridge creation has caused a behavioural change in how + subscriptions are created for bridges. A bridge created through ARI, does + not, by itself, have a subscription created for any particular Stasis + application. When a channel in a Stasis application joins a bridge, an + implicit event subscription is created for that bridge as well. Previously, + when a channel left such a bridge, the subscription was leaked; this allowed + for later bridge events to continue to be pushed to the subscribed + applications. That leak has been fixed; as a result, bridge events that were + delivered after a channel left the bridge are no longer delivered. An + application must subscribe to a bridge through the applications resource if + it wishes to receive all events related to a bridge. + +AMI: + - The AMI version has been changed from 2.0.0 to 2.1.0. This is to reflect + the backwards compatible changes listed below. + + - The DialStatus field in the DialEnd event can now have additional values. + This includes ABORT, CONTINUE, and GOTO. + + - The res_mwi_external_ami module can, if loaded, provide additional AMI + actions and events that convey MWI state within Asterisk. This includes + the MWIGet, MWIUpdate, and MWIDelete actions, as well as the MWIGet and + MWIGetComplete events that occur in response to an MWIGet action. + + - AMI now contains a new class authorization, 'security'. This is used with + the following new events: FailedACL, InvalidAccountID, SessionLimit, + MemoryLimit, LoadAverageLimit, RequestNotAllowed, AuthMethodNotAllowed, + RequestBadFormat, SuccessfulAuth, UnexpectedAddress, ChallengeResponseFailed, + InvalidPassword, ChallengeSent, and InvalidTransport. + + - Bridge related events now have two additional fields: BridgeName and + BridgeCreator. BridgeName is a descriptive name for the bridge; + BridgeCreator is the name of the entity that created the bridge. This + affects the following events: ConfbridgeStart, ConfbridgeEnd, + ConfbridgeJoin, ConfbridgeLeave, ConfbridgeRecord, ConfbridgeStopRecord, + ConfbridgeMute, ConfbridgeUnmute, ConfbridgeTalking, BlindTransfer, + AttendedTransfer, BridgeCreate, BridgeDestroy, BridgeEnter, BridgeLeave + + - MixMonitor AMI actions now require users to have authorization classes. + * MixMonitor - system + * MixMonitorMute - call or system + * StopMixMonitor - call or system + + - Removed the undocumented manager.conf block-sockets option. It interferes with + TCP/TLS inactivity timeouts. + + - The response to the PresenceState AMI action has historically contained two + Message keys. The first of these is used as an informative message regarding + the success/failure of the action; the second contains a Presence state + specific message. Having two keys with the same unique name in an AMI + message is cumbersome for some client; hence, the Presence specific Message + has been deprecated. The message will now contain a PresenceMessage key + for the presence specific information; the Message key containing presence + information will be removed in the next major version of AMI. + +CDRs: + - The "endbeforehexten" setting now defaults to "yes", instead of "no". + When set to "no", yhis setting will cause a new CDR to be generated when a + channel enters into hangup logic (either the 'h' extension or a hangup + handler subroutine). In general, this is not the preferred default: this + causes extra CDRs to be generated for a channel in many common dialplans. + + - The cdr_sqlite module was deprecated and has been removed. Users of this + module should use the cdr_sqlite3_custom module instead. + +chan_dahdi: + - SS7 support now requires libss7 v2.0 or later. + + - Added the inband_on_setup_ack compatibility option to chan_dahdi.conf to + deal with switches that don't send an inband progress indication in the + SETUP ACKNOWLEDGE message. + Default is now no. + +chan_gtalk + - This module was deprecated and has been removed. Users of chan_gtalk + should use chan_motif. + +chan_h323 + - This module was deprecated and has been removed. Users of chan_h323 + should use chan_ooh323. + +chan_jingle + - This module was deprecated and has been removed. Users of chan_jingle + should use chan_motif. + +chan_pjsip: + - Added a 'force_avp' option to chan_pjsip which will force the usage of + 'RTP/AVP', 'RTP/AVPF', 'RTP/SAVP', or 'RTP/SAVPF' as the media transport type + in SDP offers depending on settings, even when DTLS is used for media + encryption. + + - Added a 'media_use_received_transport' option to chan_pjsip which will + cause the SDP answer to use the media transport as received in the SDP + offer. + +chan_sip: + - Made set SIPREFERREDBYHDR as inheritable for better chan_pjsip + interoperability. + + - The SIPPEER dialplan function no longer supports using a colon as a + delimiter for parameters. The parameters for the function should be + delimited using a comma. + + - The SIPCHANINFO dialplan function was deprecated and has been removed. Users + of the function should use the CHANNEL function instead. + + - Added a 'force_avp' option for chan_sip. When enabled this option will + cause the media transport in the offer or answer SDP to be 'RTP/AVP', + 'RTP/AVPF', 'RTP/SAVP', or 'RTP/SAVPF' even if a DTLS stream has been + configured. This option can be set to improve interoperability with WebRTC + clients that don't use the RFC defined transport for DTLS. + + - The 'dtlsverify' option in chan_sip now has additional values besides + 'yes' and 'no'. If 'yes' is specified both the certificate and fingerprint + will be verified. If 'no' is specified then neither the certificate or + fingerprint is verified. If 'certificate' is specified then only the + certificate is verified. If 'fingerprint' is specified then only the + fingerprint is verified. + + - A 'dtlsfingerprint' option has been added to chan_sip which allows the + hash to be specified for the DTLS fingerprint placed in SDP. Supported + values are 'sha-1' and 'sha-256' with 'sha-256' being the default. + + - The 'progressinband=never' option is now more zealous in the persecution of + progress messages coming from Asterisk. Channels bridged with a SIP channel + that has 'progressinband=never' set will not be able to forward their + progress indications through to the SIP device. chan_sip will now turn such + progress indications into a 180 Ringing (if a 180 has not yet been + transmitted) if 'progressinband=never'. + + - The codec preference order in an SDP during an offer is slightly different + than previous releases. Prior to Asterisk 13, the preference order of + codecs used to be: + (1) Our preferred codec + (2) Our configured codecs + (3) Any non-audio joint codecs + + One of the ways the new media format architecture in Asterisk 13 improves + performance is by reference counting formats, such that they can be reused + in many places without additional allocation. To not require a large + amount of locking, an instance of a format is immutable by convention. + This works well except for formats with attributes. Since a media format + with an attribute is a different object than the same format without an + attribute, we have to carry over the formats with attributes from an + inbound offer so that the correct attributes are offered in an outgoing + INVITE request. This requires some subtle tweaks to the preference order + to ensure that the media format with attributes is offered to a remote + peer, as opposed to the same media format (but without attributes) that + may be stored in the peer object. + + All of this means that our offer offer list will now be: + (1) Our preferred codec + (2) Any joint codecs offered by the inbound offer + (3) All other codecs that are not the preferred codec and not a joint + codec offered by the inbound offer + +CLI commands: + - "core show settings" now lists the current console verbosity in addition + to the root console verbosity. + + - "core set verbose" has not been able to support the by module verbose + logging levels since verbose logging levels were made per console. That + syntax is now removed and a silence option added in its place. + +ConfBridge: +- The sound_place_into_conference sound used in Confbridge is now deprecated + and is no longer functional since it has been broken since its inception + and the fix involved using a different method to achieve the same goal. The + new method to achieve this functionality is by using sound_begin to play + a sound to the conference when waitmarked users are moved into the conference. + + +Configuration Files: + - The 'verbose' setting in logger.conf still takes an optional argument, + specifying the verbosity level for each logging destination. However, + the default is now to once again follow the current root console level. + As a result, using the AMI Command action with "core set verbose" could + again set the root console verbose level and affect the verbose level + logged. + + - The manager.conf 'eventfilter' now takes an "extended" regular expression + instead of a "basic" one. + + - The unistim.conf 'dateformat' has changed meaning of options values to conform + values used inside Unistim protocol + +HTTP: + - Added http.conf session_inactivity timer option to close HTTP connections + that aren't doing anything. + + - Added support for persistent HTTP connections. To enable persistent + HTTP connections configure the keep alive time between HTTP requests. The + keep alive time between HTTP requests is configured in http.conf with the + session_keep_alive parameter. + +MusicOnHold + - The SetMusicOnHold dialplan application was deprecated and has been removed. + Users of the application should use the CHANNEL function's musicclass + setting instead. + + - The WaitMusicOnHold dialplan application was deprecated and has been + removed. Users of the application should use MusicOnHold with a duration + parameter instead. + +ODBC: +- The compatibility setting, allow_empty_string_in_nontext, has been removed. + Empty column values will be stored as empty strings during realtime updates. + +Realtime Configuration: + - WARNING: The database migration script that adds the 'extensions' table for + realtime had to be modified due to an error when installing for MySQL. The + 'extensions' table's 'id' column was changed to be a primary key. This could + potentially cause a migration problem. If so, it may be necessary to + manually alter the affected table/column to bring it back in line with the + migration scripts. + + - New columns have been added to realtime tables for 'support_path' on + ps_registrations and ps_aors and for 'path' on ps_contacts for the new + SIP Path support in chan_pjsip. + + - The following new tables have been added for pjsip realtime: 'ps_systems', + 'ps_globals', 'ps_tranports', 'ps_registrations'. + + - The following columns were added to the 'ps_aors' realtime table: + 'maximum_expiration', 'outbound_proxy', and 'support_path'. + + - The following columns were added to the 'ps_contacts' realtime table: + 'outbound_proxy', 'user_agent', and 'path'. + + - New columns have been added to the ps_endpoints realtime table for the + 'media_address', 'redirect_method' and 'set_var' options. Also the + 'mwi_fromuser' column was renamed to 'mwi_from_user'. A new column + 'message_context' was added to let users configure how MESSAGE requests are + routed to the dialplan. + + - A new column was added to the 'ps_globals' realtime table for the 'debug' + option. + + - PJSIP endpoint columns 'tos_audio' and 'tos_video' have been changed from + yes/no enumerators to string values. 'cos_audio' and 'cos_video' have been + changed from yes/no enumerators to integer values. PJSIP transport column + 'tos' has been changed from a yes/no enumerator to a string value. 'cos' has + been changed from a yes/no enumerator to an integer value. + + - The 'queues' and 'queue_members' realtime tables have been added to the + config Alembic scripts. + + - A new set of Alembic scripts has been added for CDR tables. This will create + a 'cdr' table with the default schema that Asterisk expects. + +res_jabber: + - This module was deprecated and has been removed. Users of this module should + use res_xmpp instead. + +safe_asterisk: + - The safe_asterisk script was previously not installed on top of an existing + version. This caused bug-fixes in that script not to be deployed. If your + safe_asterisk script is customized, be sure to keep your changes. Custom + values for variables should be created in *.sh file(s) inside + ASTETCDIR/startup.d/. See ASTERISK-21965. + + - Changed a log message in safe_asterisk and the $NOTIFY mail subject. If + you use tools to parse either of them, update your parse functions + accordingly. The changed strings are: + - "Exited on signal $EXITSIGNAL" => "Asterisk exited on signal $EXITSIGNAL." + - "Asterisk Died" => "Asterisk on $MACHINE died (sig $EXITSIGNAL)" + +Unistim: + - Added 'dtmf_duration' option with changing default operation to disable + receivied dtmf playback on unistim phone + +Utilities: + - The refcounter program has been removed in favor of the refcounter.py script + in contrib/scripts. + +WebSockets: + - Added a compatibility option to ari.conf, sip.conf, and pjsip.conf + 'websocket_write_timeout'. When a websocket connection exists where Asterisk + writes a substantial amount of data to the connected client, and the connected + client is slow to process the received data, the socket may be disconnected. + In such cases, it may be necessary to adjust this value. + Default is 100 ms. + +=========================================================== +=========================================================== diff --git a/UPGRADE.txt b/UPGRADE.txt index 37160c4..fa77d5e 100644 --- a/UPGRADE.txt +++ b/UPGRADE.txt @@ -19,354 +19,9 @@ === UPGRADE-10.txt -- Upgrade info for 1.8 to 10 === UPGRADE-11.txt -- Upgrade info for 10 to 11 === UPGRADE-12.txt -- Upgrade info for 11 to 12 +=== UPGRADE-13.txt -- Upgrade info for 12 to 13 =========================================================== -From 12 to 13: - - - Sample config files have been moved from configs/ to a subfolder of that - directory, 'samples'. - - - The menuselect utility has been pulled into the Asterisk repository. As a - result, the libxml2 development library is now a required dependency for - Asterisk. - - - The asterisk command line -I option and the asterisk.conf internal_timing - option are removed and always enabled if any timing module is loaded. - - - The per console verbose level feature as previously implemented caused a - large performance penalty. The fix required some minor incompatibilities - if the new rasterisk is used to connect to an earlier version. If the new - rasterisk connects to an older Asterisk version then the root console verbose - level is always affected by the "core set verbose" command of the remote - console even though it may appear to only affect the current console. If - an older version of rasterisk connects to the new version then the - "core set verbose" command will have no effect. - - - Added a new Compiler Flag, REF_DEBUG. When enabled, reference counted - objects will emit additional debug information to the refs log file located - in the standard Asterisk log file directory. This log file is useful in - tracking down object leaks and other reference counting issues. Prior to - this version, this option was only available by modifying the source code - directly. This change also includes a new script, refcounter.py, in the - contrib folder that will process the refs log file. - - - The asterisk compatibility options in asterisk.conf have been removed. - These options enabled certain backwards compatibility features for - pbx_realtime, res_agi, and app_set that made their behaviour similar to - Asterisk 1.4. Users who used these backwards compatibility settings should - update their dialplans to use ',' instead of '|' as a delimiter, and should - use the Set dialplan application instead of the MSet dialplan application. - -accountcode: - - Accountcode behavior changed somewhat to add functional peeraccount - support. The main change is that local channels now cross accountcode - and peeraccount across the special bridge between the ;1 and ;2 channels - just like channels between normal bridges. See the CHANGES file for - more information. - -ARI: - - The ARI version has been changed from 1.0.0 to 1.1.0. This is to reflect - the backwards compatible changes listed below. - - - Added a new ARI resource 'mailboxes' which allows the creation and - modification of mailboxes managed by external MWI. Modules res_mwi_external - and res_stasis_mailbox must be enabled to use this resource. - - - Added new events for externally initiated transfers. The event - BridgeBlindTransfer is now raised when a channel initiates a blind transfer - of a bridge in the ARI controlled application to the dialplan; the - BridgeAttendedTransfer event is raised when a channel initiates an - attended transfer of a bridge in the ARI controlled application to the - dialplan. - - - Channel variables may now be specified as a body parameter to the - POST /channels operation. The 'variables' key in the JSON is interpreted - as a sequence of key/value pairs that will be added to the created channel - as channel variables. Other parameters in the JSON body are treated as - query parameters of the same name. - - - A bug fix in bridge creation has caused a behavioural change in how - subscriptions are created for bridges. A bridge created through ARI, does - not, by itself, have a subscription created for any particular Stasis - application. When a channel in a Stasis application joins a bridge, an - implicit event subscription is created for that bridge as well. Previously, - when a channel left such a bridge, the subscription was leaked; this allowed - for later bridge events to continue to be pushed to the subscribed - applications. That leak has been fixed; as a result, bridge events that were - delivered after a channel left the bridge are no longer delivered. An - application must subscribe to a bridge through the applications resource if - it wishes to receive all events related to a bridge. - -AMI: - - The AMI version has been changed from 2.0.0 to 2.1.0. This is to reflect - the backwards compatible changes listed below. - - - The DialStatus field in the DialEnd event can now have additional values. - This includes ABORT, CONTINUE, and GOTO. - - - The res_mwi_external_ami module can, if loaded, provide additional AMI - actions and events that convey MWI state within Asterisk. This includes - the MWIGet, MWIUpdate, and MWIDelete actions, as well as the MWIGet and - MWIGetComplete events that occur in response to an MWIGet action. - - - AMI now contains a new class authorization, 'security'. This is used with - the following new events: FailedACL, InvalidAccountID, SessionLimit, - MemoryLimit, LoadAverageLimit, RequestNotAllowed, AuthMethodNotAllowed, - RequestBadFormat, SuccessfulAuth, UnexpectedAddress, ChallengeResponseFailed, - InvalidPassword, ChallengeSent, and InvalidTransport. - - - Bridge related events now have two additional fields: BridgeName and - BridgeCreator. BridgeName is a descriptive name for the bridge; - BridgeCreator is the name of the entity that created the bridge. This - affects the following events: ConfbridgeStart, ConfbridgeEnd, - ConfbridgeJoin, ConfbridgeLeave, ConfbridgeRecord, ConfbridgeStopRecord, - ConfbridgeMute, ConfbridgeUnmute, ConfbridgeTalking, BlindTransfer, - AttendedTransfer, BridgeCreate, BridgeDestroy, BridgeEnter, BridgeLeave - - - MixMonitor AMI actions now require users to have authorization classes. - * MixMonitor - system - * MixMonitorMute - call or system - * StopMixMonitor - call or system - - - Removed the undocumented manager.conf block-sockets option. It interferes with - TCP/TLS inactivity timeouts. - - - The response to the PresenceState AMI action has historically contained two - Message keys. The first of these is used as an informative message regarding - the success/failure of the action; the second contains a Presence state - specific message. Having two keys with the same unique name in an AMI - message is cumbersome for some client; hence, the Presence specific Message - has been deprecated. The message will now contain a PresenceMessage key - for the presence specific information; the Message key containing presence - information will be removed in the next major version of AMI. - -CDRs: - - The "endbeforehexten" setting now defaults to "yes", instead of "no". - When set to "no", yhis setting will cause a new CDR to be generated when a - channel enters into hangup logic (either the 'h' extension or a hangup - handler subroutine). In general, this is not the preferred default: this - causes extra CDRs to be generated for a channel in many common dialplans. - - - The cdr_sqlite module was deprecated and has been removed. Users of this - module should use the cdr_sqlite3_custom module instead. - -chan_dahdi: - - SS7 support now requires libss7 v2.0 or later. - - - Added the inband_on_setup_ack compatibility option to chan_dahdi.conf to - deal with switches that don't send an inband progress indication in the - SETUP ACKNOWLEDGE message. - Default is now no. - -chan_gtalk - - This module was deprecated and has been removed. Users of chan_gtalk - should use chan_motif. - -chan_h323 - - This module was deprecated and has been removed. Users of chan_h323 - should use chan_ooh323. - -chan_jingle - - This module was deprecated and has been removed. Users of chan_jingle - should use chan_motif. - -chan_pjsip: - - Added a 'force_avp' option to chan_pjsip which will force the usage of - 'RTP/AVP', 'RTP/AVPF', 'RTP/SAVP', or 'RTP/SAVPF' as the media transport type - in SDP offers depending on settings, even when DTLS is used for media - encryption. - - - Added a 'media_use_received_transport' option to chan_pjsip which will - cause the SDP answer to use the media transport as received in the SDP - offer. - -chan_sip: - - Made set SIPREFERREDBYHDR as inheritable for better chan_pjsip - interoperability. - - - The SIPPEER dialplan function no longer supports using a colon as a - delimiter for parameters. The parameters for the function should be - delimited using a comma. - - - The SIPCHANINFO dialplan function was deprecated and has been removed. Users - of the function should use the CHANNEL function instead. - - - Added a 'force_avp' option for chan_sip. When enabled this option will - cause the media transport in the offer or answer SDP to be 'RTP/AVP', - 'RTP/AVPF', 'RTP/SAVP', or 'RTP/SAVPF' even if a DTLS stream has been - configured. This option can be set to improve interoperability with WebRTC - clients that don't use the RFC defined transport for DTLS. - - - The 'dtlsverify' option in chan_sip now has additional values besides - 'yes' and 'no'. If 'yes' is specified both the certificate and fingerprint - will be verified. If 'no' is specified then neither the certificate or - fingerprint is verified. If 'certificate' is specified then only the - certificate is verified. If 'fingerprint' is specified then only the - fingerprint is verified. - - - A 'dtlsfingerprint' option has been added to chan_sip which allows the - hash to be specified for the DTLS fingerprint placed in SDP. Supported - values are 'sha-1' and 'sha-256' with 'sha-256' being the default. - - - The 'progressinband=never' option is now more zealous in the persecution of - progress messages coming from Asterisk. Channels bridged with a SIP channel - that has 'progressinband=never' set will not be able to forward their - progress indications through to the SIP device. chan_sip will now turn such - progress indications into a 180 Ringing (if a 180 has not yet been - transmitted) if 'progressinband=never'. - - - The codec preference order in an SDP during an offer is slightly different - than previous releases. Prior to Asterisk 13, the preference order of - codecs used to be: - (1) Our preferred codec - (2) Our configured codecs - (3) Any non-audio joint codecs - - One of the ways the new media format architecture in Asterisk 13 improves - performance is by reference counting formats, such that they can be reused - in many places without additional allocation. To not require a large - amount of locking, an instance of a format is immutable by convention. - This works well except for formats with attributes. Since a media format - with an attribute is a different object than the same format without an - attribute, we have to carry over the formats with attributes from an - inbound offer so that the correct attributes are offered in an outgoing - INVITE request. This requires some subtle tweaks to the preference order - to ensure that the media format with attributes is offered to a remote - peer, as opposed to the same media format (but without attributes) that - may be stored in the peer object. - - All of this means that our offer offer list will now be: - (1) Our preferred codec - (2) Any joint codecs offered by the inbound offer - (3) All other codecs that are not the preferred codec and not a joint - codec offered by the inbound offer - -CLI commands: - - "core show settings" now lists the current console verbosity in addition - to the root console verbosity. - - - "core set verbose" has not been able to support the by module verbose - logging levels since verbose logging levels were made per console. That - syntax is now removed and a silence option added in its place. - -ConfBridge: -- The sound_place_into_conference sound used in Confbridge is now deprecated - and is no longer functional since it has been broken since its inception - and the fix involved using a different method to achieve the same goal. The - new method to achieve this functionality is by using sound_begin to play - a sound to the conference when waitmarked users are moved into the conference. - - -Configuration Files: - - The 'verbose' setting in logger.conf still takes an optional argument, - specifying the verbosity level for each logging destination. However, - the default is now to once again follow the current root console level. - As a result, using the AMI Command action with "core set verbose" could - again set the root console verbose level and affect the verbose level - logged. - - - The manager.conf 'eventfilter' now takes an "extended" regular expression - instead of a "basic" one. - - - The unistim.conf 'dateformat' has changed meaning of options values to conform - values used inside Unistim protocol - -HTTP: - - Added http.conf session_inactivity timer option to close HTTP connections - that aren't doing anything. - - - Added support for persistent HTTP connections. To enable persistent - HTTP connections configure the keep alive time between HTTP requests. The - keep alive time between HTTP requests is configured in http.conf with the - session_keep_alive parameter. - -MusicOnHold - - The SetMusicOnHold dialplan application was deprecated and has been removed. - Users of the application should use the CHANNEL function's musicclass - setting instead. - - - The WaitMusicOnHold dialplan application was deprecated and has been - removed. Users of the application should use MusicOnHold with a duration - parameter instead. - -ODBC: -- The compatibility setting, allow_empty_string_in_nontext, has been removed. - Empty column values will be stored as empty strings during realtime updates. - -Realtime Configuration: - - WARNING: The database migration script that adds the 'extensions' table for - realtime had to be modified due to an error when installing for MySQL. The - 'extensions' table's 'id' column was changed to be a primary key. This could - potentially cause a migration problem. If so, it may be necessary to - manually alter the affected table/column to bring it back in line with the - migration scripts. - - - New columns have been added to realtime tables for 'support_path' on - ps_registrations and ps_aors and for 'path' on ps_contacts for the new - SIP Path support in chan_pjsip. - - - The following new tables have been added for pjsip realtime: 'ps_systems', - 'ps_globals', 'ps_tranports', 'ps_registrations'. - - - The following columns were added to the 'ps_aors' realtime table: - 'maximum_expiration', 'outbound_proxy', and 'support_path'. - - - The following columns were added to the 'ps_contacts' realtime table: - 'outbound_proxy', 'user_agent', and 'path'. - - - New columns have been added to the ps_endpoints realtime table for the - 'media_address', 'redirect_method' and 'set_var' options. Also the - 'mwi_fromuser' column was renamed to 'mwi_from_user'. A new column - 'message_context' was added to let users configure how MESSAGE requests are - routed to the dialplan. - - - A new column was added to the 'ps_globals' realtime table for the 'debug' - option. - - - PJSIP endpoint columns 'tos_audio' and 'tos_video' have been changed from - yes/no enumerators to string values. 'cos_audio' and 'cos_video' have been - changed from yes/no enumerators to integer values. PJSIP transport column - 'tos' has been changed from a yes/no enumerator to a string value. 'cos' has - been changed from a yes/no enumerator to an integer value. - - - The 'queues' and 'queue_members' realtime tables have been added to the - config Alembic scripts. - - - A new set of Alembic scripts has been added for CDR tables. This will create - a 'cdr' table with the default schema that Asterisk expects. - -res_jabber: - - This module was deprecated and has been removed. Users of this module should - use res_xmpp instead. - -safe_asterisk: - - The safe_asterisk script was previously not installed on top of an existing - version. This caused bug-fixes in that script not to be deployed. If your - safe_asterisk script is customized, be sure to keep your changes. Custom - values for variables should be created in *.sh file(s) inside - ASTETCDIR/startup.d/. See ASTERISK-21965. - - - Changed a log message in safe_asterisk and the $NOTIFY mail subject. If - you use tools to parse either of them, update your parse functions - accordingly. The changed strings are: - - "Exited on signal $EXITSIGNAL" => "Asterisk exited on signal $EXITSIGNAL." - - "Asterisk Died" => "Asterisk on $MACHINE died (sig $EXITSIGNAL)" - -Unistim: - - Added 'dtmf_duration' option with changing default operation to disable - receivied dtmf playback on unistim phone - -Utilities: - - The refcounter program has been removed in favor of the refcounter.py script - in contrib/scripts. - -WebSockets: - - Added a compatibility option to ari.conf, sip.conf, and pjsip.conf - 'websocket_write_timeout'. When a websocket connection exists where Asterisk - writes a substantial amount of data to the connected client, and the connected - client is slow to process the received data, the socket may be disconnected. - In such cases, it may be necessary to adjust this value. - Default is 100 ms. =========================================================== =========================================================== -- 1.7.9.5