This commit closes bug 7605, and half-closes 7638. The AEL code has been redistribute...
[asterisk/asterisk.git] / UPGRADE.txt
1 Information for Upgrading From Previous Asterisk Releases
2 =========================================================
3
4 Manager:
5
6 * The CallerID fields across Manager events have now been made more
7   consistent. CallerID Number will be sent as CallerIDNum and CallerID
8   Name will be sent as CallerIDName wherever used.
9
10 AEL:
11
12 * Macros are now implemented underneath with the Gosub() application.
13   Heaven Help You if you wrote code depending on any aspect of this!
14   Previous to 1.6, macros were implemented with the Macro() app, which
15   provided a nice feature of auto-returning. The compiler will do its
16   best to insert a Return() app call at the end of your macro if you did
17   not include it, but really, you should make sure that all execution
18   paths within your macros end in "return;".
19
20 * The conf2ael program is 'introduced' in this release; it is in a rather
21   crude state, but deemed useful for making a first pass at converting
22   extensions.conf code into AEL. More intelligence will come with time.
23
24 Core:
25
26 * The 'languageprefix' option in asterisk.conf is now deprecated, and
27   the default sound file layout for non-English sounds is the 'new
28   style' layout introduced in Asterisk 1.4 (and used by the automatic
29   sound file installer in the Makefile).
30
31 * The ast_expr2 stuff has been modified to handle floating-point numbers.
32   Numbers of the format D.D are now acceptable input for the expr parser, 
33   Where D is a string of base-10 digits. All math is now done in "long double",
34   if it is available on your compiler/architecture. This was half-way between
35   a bug-fix (because the MATH func returns fp by default), and an enhancement.
36   Also, for those counting on, or needing, integer operations, a series of
37   'functions' were also added to the expr language, to allow several styles
38   of rounding/truncation, along with a set of common floating point operations,
39   like sin, cos, tan, log, pow, etc. The ability to call external functions
40   like CDR(), etc. was also added, without having to use the ${...} notation.
41  
42 * The delimiter passed to applications has been changed to the comma (','), as
43   that is what people are used to using within extensions.conf.  If you are
44   using realtime extensions, you will need to translate your existing dialplan
45   to use this separator.  To use a literal comma, you need merely to escape it
46   with a backslash ('\').  Another possible side effect is that you may need to
47   remove the obscene level of backslashing that was necessary for the dialplan
48   to work correctly in 1.4 and previous versions.  This should make writing
49   dialplans less painful in the future, albeit with the pain of a one-time
50   conversion.
51
52 Voicemail:
53
54 * The voicemail configuration values 'maxmessage' and 'minmessage' have
55   been changed to 'maxsecs' and 'minsecs' to clarify their purpose and
56   to make them more distinguishable from 'maxmsgs', which sets folder
57   size.  The old variables will continue to work in this version, albeit
58   with a deprecation warning.
59 * If you use any interface for modifying voicemail aside from the built in
60   dialplan applications, then the option "pollmailboxes" *must* be set in
61   voicemail.conf for message waiting indication (MWI) to work properly.  This
62   is because Voicemail notification is now event based instead of polling
63   based.  The channel drivers are no longer responsible for constantly manually
64   checking mailboxes for changes so that they can send MWI information to users.
65   Examples of situations that would require this option are web interfaces to
66   voicemail or an email client in the case of using IMAP storage.
67
68 Applications:
69
70 * ChanIsAvail() now has a 't' option, which allows the specified device
71   to be queried for state without consulting the channel drivers. This
72   performs mostly a 'ChanExists' sort of function.
73 * SetCallerPres() has been replaced with the CALLERPRES() dialplan function
74   and is now deprecated.
75 * DISA()'s fifth argument is now an options argument.  If you have previously
76   used 'NOANSWER' in this argument, you'll need to convert that to the new
77   option 'n'.
78 * Macro() is now deprecated.  If you need subroutines, you should use the
79   Gosub()/Return() applications.  To replace MacroExclusive(), we have
80   introduced dialplan functions LOCK(), TRYLOCK(), and UNLOCK().  You may use
81   these functions in any location where you desire to ensure that only one
82   channel is executing that path at any one time.
83
84 CDR:
85
86 * The cdr_sqlite module has been marked as deprecated in favor of
87   cdr_sqlite3_custom.  It will potentially be removed from the tree
88   after Asterisk 1.6 is released.
89
90 Formats:
91
92 * format_wav: The GAIN preprocessor definition and source code that used it
93   is removed.  This change was made in response to user complaints of
94   choppiness or the clipping of loud signal peaks.  To increasing the volume
95   of voicemail messages, use the 'volgain' option in voicemail.conf
96
97 Channel Drivers:
98
99 * chan_sip.c: a small upgrade to support the "Record" button on the SNOM360,
100   which sends a sip INFO message with a "Record: on" or "Record: off" 
101   header. If asterisk is set up (via features.conf) to accept "One Touch Monitor"
102   requests (by default, via '*1'), then the user-configured dialpad sequence
103   is generated, and recording can be started and stopped via this button. The
104   file names and formats are all controlled via the normal mechanisms. If the
105   user has not configured the automon feature, the normal "415 Unsupported media type"
106   is returned, and nothing is done.
107
108 * chan_local.c: the comma delimiter inside the channel name has been changed to a
109   semicolon, in order to make the Local channel driver compatible with the comma
110   delimiter change in applications.
111