Copyright (c) 1999-2001 by Open Source Telecom Corporation.
Verbatim copying and distribution of this entire article is permitted
in any medium, provided this notice is preserved.

Changes from cvs milestone 1 (0.1) to cvs milestone 2 (0.2)
- new "dummy" telephony driver stub for when no drivers found.
- pika driver being added.
- --test mode selects default test driver based on ivrconfig.h.
- line seizure state added for phonedev outgoing calls.
- 'a'ctive status split between 'i'ncoming and 'o'utgoing.
- fifo line processing bugs and long options fixed thanks to Matt.
- improved reset handling for services.
- tgi signal handling added.
- service stopping defined.
- improved answer supervision.
- getContinuation added for sequenced playback.
- "python" tgi module embedding added.
- "tcl" tgi support added with tcl tgi extensions.
- TGI.py module from Michal Bukovjan.
- INSTALL document updated by Rich Bodo.

Changes from 0.2.0 to 0.2.1 (between cvs milestone 2 and 3)
- added bayonne.conf sample file.
- created rpm build procedure.

Changes from 0.2.1 to 0.3.0
- pack and unpack ccscript commands added.
- ability to chain DSO modules to fifo command handler.
- move user recorded prompts to /var/bayonne/prompts.
- tts translator support added.
- some bug fixes from Matthias Ivers.
- new scheduler code by Matthias.
- scheduler now disabled for --test or implicit script in command line.
- interface for scalable database services.
- fixes for broken tgi.
- Documentation for phrasebook and script interpreter added!
- added autoload of "bayonne.ext" dso for installed applications.
- fixed double listing of steps.
- Pika fixups to use DSP_Reset even tho should not be nessisary.
- Annotated audio file support in script system.
- Ability to "trim" tail end of recorded prompts.
- remove root privilege after fifo is opened.
- signal stoppage fixes.

Changes from 0.3.0 to 0.3.1
- passed fifo ring command may include a starting script
- pika call offer detection disabled if "answer" for trunk group = 0
- new DSO sync class and expanded functionality for scheduler.
- start of mailbox support.
- pika driver must sleep in startup.
- new DSO for network monitoring support.

Changes from 0.3.1 to 0.3.2
- test for and use reentrant functions.
- fixed uninitialized id which caused segfaults.
- some include file restructuring.

Changes from 0.3.2 to 0.3.3
- setenv simulated for Solaris.
- ability to merge voice prompt library/national specific rules on top of
  language specific phrasebook rulesets using new [localize] section
  which will also hold currency information, etc.
- currency phrasebook rules defined for english.tts module.
- [paths] precache entry added for pre-caching of voice libraries as
  may be required for Dialogic support.  This also could prove a useful
  optional feature for other API's.
- new TGI tokenizer based on Matt Benjamin's contributed parser.
- new TGI 2.0 spec with backward compatibility.
- new TGI.pm module which impliments 1.x and 2.x TGI token parsing.
- added append mode for recording into existing audio files.

Changes from 0.3.3 to 0.3.4
- time expired garbage collected sessions are now support by the scheduler
  thread.  This solves issues with service threads that are no longer
  needed but who's scope may still be nessisary for other 
  "dependent" purposes at least for a little while longer.  The most
  common case for this will be with "audio feeds" and disconnected calls
  while in active VoIP stacks.
- a slight change in link order to assure -lhoard is last.
- strange segfault problem related to isThread() resolved by skipping.
- start of resolver thread support and tcp protocols support.

Changes from 0.3.4 to 0.4
- french language support
- once synchronization capability
- pack and unpack now part of core language.
- detached tgi libexec (libexec 0).
- "libonce" added.
- now requires ccscript 1.1.0.
- const fixes for future Common C++ release.
- French Male prompt dictionary contributed by Wilane Ousmane.
- regression test for fifo parser added.
- new &duration rule added to phrasebook.
- delayed init to "98" for future Dialogic support.
- added bayonne.h to spec file.

Changes from 0.4 to 0.4.1
- a new seperate catch for DSO tgi phase loading.
- a fix for PORT_QUERY processing to eliminate "%" prefix.
- a start of the smtp delivery module "vpim".
- all getOption()'s changed to getValue() in language modules.

Changes from 0.4.1 to 0.4.2
- fix for header changes in latest kernels between IXJ_CID and PHONE_CID.
- unique driver specific class names for easier source browsing.
- cross-compiler support for telephony SDK tests.
- Matt's contributed support for pika outbound dialing.
- added "ring" to fifo commands.
- streams and dialogic sdk tests added.

Changes from 0.4.2 to 0.4.3
- added posix realtime scheduling capability.
- some further fixes to pika API detection.
- start of vpb.
- italian language module added.

Changes from 0.4.3 to 0.4.3a
- last minute fixes for Common C++ 1.2

Changes from 0.4.3a to 0.4.4
- resolved pika config to only appear in pika driver subdirectory.
- resolved /dev/phone config to only appear in /dev/phone subdirectory.
- restricting GPL related exceptions only to specified driver directories.
- aculab driver configuration added.
- dialogic driver configuration added.
- fifo "busy" and "idle" commands added.
- fifo "hangup" and integrated TRUNK_STOP_DISCONNECT request added.
- some clarification on signaling events for "digital" (T1) calls.
- events defined for "digital" (ISDN) calls.
- added libpath to [keypaths] for TGI execution path.
- added support for new Voicetronix vpb2 API.
- all DSO modules are now found in a "versioned" /usr/lib/bayonne path
  (hence /usr/lib/bayonne/0.4.4/).

Changes from 0.4.4 to 0.5.0
- added bayonne.faq
- added stack frame tuning for FreeBSD threads.
- use libvpb2 test for voicetronix rather than header test.
- interum FreeBSD Quicknet device support added.
- do not activate bayonne on rpm install.
- pika ring debounce setting added.
- "digits" now initialized in trunk.
- only disconnect on loop drop if already offhook.

Changes from 0.5.0 to 0.5.1
- fix in answer state for delayed answer.
- fix small memory leak in vpim and pika driver restart.
- trunk mempager auditing in debug modes.
- fix disconnect issue.
- start of audiofeed
- fix of double fifo execute

Changes from 0.5.1 to 0.5.2
- use "static" allocation of audio buffers in trunk class for Pika driver.
  This assures the pika audio buffer is present even if processing has
  stopped.
- rewrote database access integration for ccscript; now uses udp broadcast
  and assumes to talk to a new "database adapter" rather than DSO based.
- statmon functionality merged with database core to new network node
  service.

Changes from 0.5.2 to 0.5.3
- fixed fifo shutdown for daemon mode.
- pika state machine supports dsp request failures in scripting now.
- added --without-hoard configure option to disable hoard check to build
  images for test debugging.
- added gui debugger, --gui and --display options, with FOX toolkit.
- added macros for sym names to avoid typos.
- made drivers busy out correctly update call counters.
- some adjustment on pika play for short prompts.
- added -with-mpatrol for memory debugging support.
- bayonne extension compiler added.

Changes from 0.5.3 to 0.5.4
- change "or" in translators for RH7 gcc oddities.
- ani/dnis/did/etc reduced to new "%clid" (calling line id) and "%dnid"
  (dialed number id) for all future references.
- extensive changes for correct pika callerid behavior.
- fixed pika play issues where duplicate threads could be created.
- added trunk group pickup timer and updated vpb to use it.
- have made "FrenchF" part of standard Bayonne distribution.

Changes from 0.5.4 to 0.5.5
- support for "map" files...
- fix clearing of callerid info in Attach.
- new initial call selection mechanism to support mapping.
- zapata autoconf tests.
- addition of "request" queues by trunk group.
- addition of scripting entity and fifo command "request".
- addition of idle processing of pending requests.

Changes from 0.5.5 to 0.5.6
- use new getGroup() friend.
- add "ready" status to trunk state flags.
- add "isReady()" check for a trunk.
- add group based fifo operations.
- added trunk group selection methods.
- added "generic" modules which bind to the interpreter.
- updated for Common C++ 1.3.0.
- moved special keywords into generic modules.

Changes from 0.5.6 to 0.5.7
- addition of application specific prompt libraries using "::" paths.
- application specific prompt libraries can be on an alternate search path.
- condensed playrec script.
- cleaned up some leftovers from stripping server down.
- added %gid as unique global call identifier in scripting.
- start of buddies mechanism for electing a failover monitor.
- audit and cdr updated to parse variables and to provide gid reference.
- base rtp functionality added for vpb driver.
- changes to support Bayonne application "hosting".
- use of special "hosting.conf" for reviewable root setable overrides
  when a "hosted" Bayonne server is launched.
- cdrsend added for network broadcast of audit records.
- test case 1 updated for new cdr processing format.
- dialogic fixups in autoconf/configure stages.
- .aaprompts and .aascripts possible on ~/ path.
- .aaschedule possible on ~/ path.
- default root "user" level is now found under userid "bayonne" rather
  than userid "mail".  It is suggested a "bayonne" system user and group
  is created, along with a /home/bayonne working directory for locally
  created scripts and prompts that are not part of the initial 
  distribution. 

Changes from 0.5.7 to 0.5.8
- fixed multi-trunk group loader.
- always disable ring detect for trunk groups with answer = 0.
- regression "test" module can update trunk linked to group.
- regression "test" scripts merged into single script (uses :: scope).
- enhanced script scheduling to support lists of days on one line.
- smart "reset" handling for pika
- dialogic completes interpreter regression!

Changes from 0.5.8 to 0.5.9
- use HOLD and RELEASE macros in Dialogic driver to make it easier to
  document and strip later.
- uio tie-in between Dialogic and trunk AudioFile buffer i/o.
- call redirect handling for forwarding, hold/recall, etc.
- introduction of "alternate" scheduler functionality to specify something
  other than days of the week.  Initially under fifo control, but will
  support definition of holidays, etc.  Can also be used to schedule
  'states', like "away", "closed", or "holiday".
- new "schedule" script command to issue fifo scheduling from script.
- fix for segfault in peer network stack.

Changes from 0.5.9 to 0.5.10
- cleaner permissions for /var/bayonne workspace.
- auto purge of temp and cache at startup.
- introduction of "start" to allow one script to immediately initiate a
  call on another channel relative to the current one (as compared to
  request).
- test mode now cleans up temp directories.
- join state and trunk joining support now in the pika driver.
- signal notification in script, completes trunk join functionality.
- "wait" renamed to "sync".
- "join" and "wait" script commands used for join state operations.

Changes from 0.5.10 to 0.5.11
- fix join and wait timeout into seconds from milliseconds.
- conference dsp support in the pika driver.
- idle timer added for forced hangup on inactivity.
- idle command added to set idle time over trunk group default.

Changes from 0.5.11 to 0.5.12
- pika call progress detection.
- pika call progress during flash.
- sieze timer in trunk groups.
- pika sieze state on outbound scripts.
- use different back-to-back solution which doesnt interfere with dtmf.
- big fix for collect.

Changes from 0.5.12 to 0.5.13
- start of dynamic conference resource pool resource management.
- build of dynamic cache pool.
- user startup selects "group".
- added dtmf key events to fifo, TGI 2.1.

Changes from 0.5.13 to 0.5.14
- fix for dnis/dlid/dnid bug in tgi.
- added database adapter to bayonne.conf for bayonnedb adapter.
- "start" command now does trunk groups as well as port offset.
- fifo "start" now does trunk group search.
- start of reserved/preallocated conf. resources for pika.
- fifo commands for meet-me conference allocation.
- .mix file for exporting mixer configuration.
- added fixed dates to secheduler and other scheduler improvements.
- scheduler no longer order dependent!

Changes from 0.5.14 to 0.5.15
- fixed segfault in Request constructor.
- fix for vpb digit termination.
- Dialogic plugin is operationally usable.
- fix in pika dial state handler if offhook.
- "bayonne_wrapped" added to simply cgi execution environment.
- TGI 2.2 with "SERVER_CONTROL", and seperate "SERVER_PROTOCOL" vs 
  "SERVER_VERSION".
- internal support for tagging and cancelling requests.  This allows
  for msgwaiting support with the ability to cancel old changes, and
  for priority paging services.
- mystery for loss of TGI processes fixed.
- new "request" support logic which can process requests immediately
  if a resource is available and threashold limits for trunk policies.
- policies can override global language selections.
- start of new "tcpmon" interactive tcp session debugging tool.

Changes from 0.5.15 to 0.5.16
- added vovida check code.
- tcpmon support working.
- sendmail.pl updated.
- some good vpb fixes from David Rowe.
- support for advanced outdialing plugins and call initiation.
- make bayonne_wrapper more of a sudo facility
- place call on hold added.
- flash linked to dial state for transfer and hold operations.
- passwordless ssh remote entry for wrappers possible.
- convergence of several extension classes into common class Module.

Changes from 0.5.16 to 0.5.17
- further consolidation of DSO "Module" class.
- support for DSO modules that are peer networking aware.
- support model for DSO modules that can perform ASR and TTS services. 
- rewrite of peer networking to add buddies and node elections.
- support of gateway captive execution for host based TTS and ASR programs.
- start of full digital support for dialogic cards.
- start of replacing sctools with direct timeslot management code in the
  dialogic state machine.
- wrappers changed to be more web server friendly, to allow interpreter
  startup, and to avoid conflicts between SERVER_ definitions of a CGI
  and Bayonne environment.
- very basic "sunrpc" plugin added.  This will eventually do more...

Changes from 0.5.17 to 0.5.18
- duplex operation added to pika.
- "detect" added to trunk groups to enable dialtone detection during call.
- urldecode used for parsed pathnames to voice libraries.
- init script now has telephony driver "autodetect" capability.
- fifo based restart.

Changes from 0.5.18 to 0.5.19
- fix for dialogic analog card autodetect code.
- fix for pika duplex resource allocation.
- fix for baxs.
- added datafile and other installs to baxs.
- fix for sunrpc -lnsl as autoconf test and disabled for freebsd.
- added "bayonne_status" to show status of running nodes.
- some fixes from rich for scheduler parsing and trunk groups.
- fixed startup bug from not having "bayonne.nodes" initially created!
- added "bayonne_apache" for all things bayonne web related.  It can
  clone an apache config into a new one that runs under the bayonne
  user id, and can execute apache with this new config.
- "playany" added as alternate play that will play any of the listed
  prompts found in order, rather than reporting missing prompt files
  as ^error events.
- "speakany" added to do the same as "playany" for the say command.
- extensive renaming of internally defined variable name space.
- "playone" added to skip thru and play the first found audio sample.
- create php config drop file.

Changes from 0.5.19 to 0.5.20
- additions to dropfile.
- bayonne_setup added to manipulate other config file options.
- fixed %digit bug
- made playrec always use .au
- added playtmp to play and remove temporary voice files.

Changes from 0.5.20 to 0.5.21
- added "say" command and host tts gateway support.
- added playwait state for host tts operations.
- added festival tts wrapper script for gateway execution.
- added "libplay" for libexec programs that generate audio samples.
- syntax and command usage extensivily revised to take advantage of
  new member function support in ccScript 1.5.0.
- baxs has become "bayonne_install", an application installer script.
- bayctrl has become "bayonne_control"
- modular config/admin system with dialog.

Changes from 0.5.21 to 0.5.22
- added "sys" prompts for non-language localized applet prompts.
- fix segfault of member functions.

Changes from 0.5.22 to 0.5.23
- map support for different scan modes.
- digit manipulation with chop, trim, insert, delete, prefix, and replace.
- intelligent timeout values, like 1.5s, 10m, etc.
- "assign" added for mapping CallXML assign and clear operations.
- some xmlish parms and keywords added here and there...
- bindings for XML parser plugin.
- added "load" to initiate xml parsing and CallXML "goto" operation.
- URLAudio support for direct URL access to audio resources.
- proxy server configuration support.
- Anders Bayonne Manual in doc directory.

Changes from 0.5.23 to 0.6.0
- RTP trunk driver started.
- XML parser integration and BayonneXML parsing.
- support for multiple xml parsers and runtime script selection thru
  load.xml

Changes from 0.6.0 to 0.6.1
- fix in rpm spec for calling bayonne_apache
- changed order of prompt type precidence evaulation.
- added perl.tgi module to default distribution and made it functional.
- vmodem driver now can be worked on
- fix for pika audio parellelism
- new alternate specs for ftp site building.
- server "--aliases" option to provide default aliases for old style
  session variable naming.

Changes from 0.6.1 to 0.6.2
- switch integration support and msg waiting lamp control for voicemail.
- new aculab driver init code.
- add dummy script handler methods support.
- modules can now influence what script files are compiled.  Some cool
  stuff possible with this.
- thread auditing.
- pika stopServices() bug fixed.
- collect timeout handling on quicknet and dialogic fixed.
- secure server startup options thru init script and --secure flag.
- support for ccscript 1.6.0.
- send command added to post into foreign fifo's.

Changes from 0.6.2 to 0.6.3
- hangup state handlers ignore additional hangup requests while within.
- support for voicetronix pci/isa unified driver.

Changes from 0.6.3 to 0.6.4
- submitted patch for "request" bug from Andreas Damm.
- added idle request handler to Dialogic driver.
- fix flash.
- dammy fix for audio clipping on record.
- dammy fix for audio play on fast machines.
- a fix for cpu load on non-threaded dialogic.
- added timeout for web transactions.
- cpu loading fix for async vpb event thread.

Changes from 0.6.4 to 0.6.5
- gcc 3.0 stuff.
- bayonne vpb updates for CID support from David Rowe.
- xml support based on test of Common C++ 1.5.1 "COMMON_XML_PARSING" flag.
- support for dso modules in perl and temp. fix for DSO loader.
- tcl and python tgi modules.
- fix for perl.tgi to support perl DSO's.
- patches for linear2ulaw and minor bug fixes from Kai Germaschewski.

Changes from 0.6.5 to 0.7.0
- fix for tcl check macro.
- addition of javascript support check.
- fix for Dialogic audio file usage.
- Kai's patch for speaking numbers and drivers without status.
- Kai's CAPI support for generic Linux (CAPI) ISDN cards.
- new options in play, record, and timeout, using keyword syntax.
- changes for ccScript 1.7.0, including elimination of ".fun", and
  use of "preload" in configure.
- "%error" now "%script.error"
- preliminary support for German phrasebook (Kai)

Changes from 0.7.0 to 0.7.1
- extended tgi timeout and error check for fifo opens.
- header fixups for c++ headers.
- /var/run moved to /var/run/bayonne.
- support for running libexec manager serverlets.
- support for new Common C++ 1.9.0 and namespaces.

Changes from 0.7.1 to 0.7.2
- fix for old redhat/gcc compilers.
- new cid code for Voicetronix.
- perl default in test mode killed.
- fix for perl test of xs_init support

Changes from 0.7.2 to 0.7.3
- restructure of dialing.
- noanswer event handler.
- %pstn.cpa added for call progress support.
- Dialogic ISDN trunk support fixes from Mark.
- Dialogic tone command.
- "accept" handling specified in trunk group.
- virtuals Accept and Reject for trunk call processing.
- Dialogic span hint for auto-detect of digital cards.

Changes from 0.7.3 to 0.7.4
- apps directory buildout.
- isdn call progress detection.
- dynamic menu play thru trap identifiers.
- move /usr/libexec/tgi to /usr/libexec/bayonne!
- capi clean build configure fixes.

Changes from 0.7.4 to 0.7.5
- isdn fix for dialogic Answer.
- tgi detach fix.
- spanish language support from Henry Molina.
- fix solaris/phonedev compile support.

Changes from 0.7.5 to 0.7.6
- minor bug fixes
- jason's new TGI.pm parser.
- dial with "origin=" patch.
- fix in chop, trim, replace, and delete.
- more Dialogic digital support fixes.

Changes from 0.7.6 to 0.7.7
- a bunch of Dialogic fixes.
- use of play offset= and limit= in most drivers.
- aculab driver from David Kerry!

Changes from 0.7.7 to 0.7.8
- reverse date & time.
- local path in service script prompt name file selection now like 1.0.

Changes from 0.7.8 to 0.8.0
- support for current Common C++ "2" series libraries.
- Tom Penny examples.
- support for stack trace debugging.
- support for "::exit" disconnect handling script destructors.

Changes from 0.8.0 to 0.8.1
- support for Bayonne "2" style binding between config file and script
  service initialized constants.
- penny vmhost prompts
- support for Bayonne "2" style binding of policy config to script

Changes from 0.8.1 to 0.8.2
- Mark's dialogic fixes.
- Mark's monitor/broadcast extensions for one-way joins.
- Mark's tcpmon additions.
- Russian voice prompts from Dmitry and Natalia
- Russian translator module
- added &several rule to all phrasebooks for consistency in
  operation with russian phrasebook.
- added &weekday rule to all phrasebooks.
- some experimentation in the vpb driver between old and new api
- some standardization of use of ^silence and ^tone events and 
  "%pstn.tone" to standardize call progress handling/tone detection.
- new "%pstn.interface" to obtain interface "type".
- new "%pstn.network" to obtain timeslot bus interconnect type (tdm,
  soft, or none)

Changes from 0.8.2 to 0.8.3
- rewrite of vpb driver for new api
- added exp version of Jason's soft join for voicetronix
- updating of server events
- addition of more tone handling in vpb
- vpb tone command
- more extensive use of keyword options for commands

Changes from 0.8.3 to 0.8.4
- libext path info and better extension handling of prompts.
- span and card policy setting for trunk groups.
- simplified libexec with keyword=value query options.
- play and record support gain= option.
- record now uses annotation="annotation" and encoding="encoding" to
  alter record options, rather than symbols.
- self prefix on startup (for test mode pathing...)
- two pass directory compile allows module specific script extensions to
  override default xxx.scr scripts of the same name if the module is
  present.
- fix for delayed fifo startup and convergence of fifo with scheduler 
  thread, fast tgi startup!
- introduction of switch integration modules.
- fifo "span" control command.
- get rid of import/export and use NG style global symbol remapping.
- modules can have local or global symbol spaces.

Changes from 0.8.4 to 0.8.5
- cygwin build support.
- "send" to pass arbitrary messages between trunk sessions, including new
  ^event trap messages.  "send.post" does old symbol send.  Other "send"
  options include "send.digits" to post pseudo-dtmf events and perhaps
  "send.copy" to copy variables.
- new %session.state info variable.
- %server.xxx objects moved to global symbol constants for efficiency.
- newly defined %driver.xxx objects.
- span and card virtual driver event handlers.
- vpb reorder tone detect and disconnect support.
- drivers return capabilities.
- play and speak can pass alternate voices directly with voice= keyword.
- use of new xxx: prefix for prompts, such as sys: as alternate to *::,
  music: to play decoded music files, and mem: to use audio in tmpfs.
- new softtone generation.
- support for new ccScript 2.1.1 preprocessor directive overloading, and
  .xxx language rule parsing from config files.
- some new tcpmon commands
- tcpmon is now a normal module, not a debug module
- PAM support for tcpmon (you need to create /etc/pam.d/bayonne to use it)
- lots and lots of dialogic bug fixes
- record support for join'ed trunks with dialogic driver (use join %trunk record=filename)
- some code cleanup by removing unimplemented features (like feeds...)
- support for prefix "memory" pointing to /dev/shm/bayonne.
- support for revolving audio mix temporary record (to memory prefix) to 
  allow file system based sharing of audio feeds as alternate to 
  half-duplex bus joins.
- we now use "bayonne_start" to start the server!!!
- support for full user hosting, including user hosted xml content, 
  prompts, script, and tgi.
- ability to select at compile time to disable XML scripting support
  thru new configure --without-xml option.  Allows creation of a smaller
  application server.
- configure --without-users option to disable support for user local
  telephony services, such as for embedded servers.

Changes from 0.8.5 to 0.8.6
- pause removed (redundent with sleep xxxms).
- driver level span and card event processing fixed.
- new Monitor class for monitoring modules
- script step tracing in tcpmon
- driver initSyms() support and request handling of child notify.
- "request" handles timeout requests, var to save, etc.
- "request" and "start" merged into a single and new "start" command.
- "^child" handler detach notification for exiting of child scripts.
- <accept>, <cancel>, and "select" case blocks added to BayonneXML.
- "cdr" becomes "audit", and alog/cdr merged together.
- released for immediate testing, known memory leak in dialogic.

Changes from 0.8.6 to 1.0pre1
- when we use --without-xml we now also get rid of URLAudio support and
  proxy keys...
- dial command supports maxTime= override for cp.
- bayonnexml <dial> tag (essentially callxml <call>).
- bayonnexml <start> tag (similar to callxml <run>).
- bayonnexml <send> tag for ipc message events.
- a number of small jason patches for documentation and error messages and
  such.
- support for more extensive timer controls and expanded sync command.

Changes from 1.0pre1 to 1.0pre2
- record ... minSize=min-samples option added.
- record ... trim=samples override
- tests for async i/o support and async i/o maybe added to some drivers.
- support idle and down count checking in Bayonne drivers.
- support for auto-restart at specified time of day if all ports idle.
- abbreviated library use when not building xml support.
- map tables support complex dialplan masks.
- collect has map info.
- build fix for hammer (x86-64) target systems.
- ItalianM prompts contributed by Wireless Solutions SpA.
- generic support for sync.max exit timing and new regression test.

Changes from 1.0pre2 to 1.0pre3
- stripped out Map class and associated functions (now integral to 
  ccscript 2.2)
- stripped out insert, delete, replace, trim, chop, and prefix (now
  part of ccscript 2.2 "digits" package)

Changes from 1.0pre3 to 1.0pre4
- *xxx now can be used as a sys prompt name without having to use the
  longer and less natural *::xxx.
- fix for missing map in sunrpc
- fix of xml prescan

Changes from 1.0pre4 to 1.0pre5
- support of new fifo "down xxx" for service down rather than server down,
  interacts with "down" script override.
- support for optional "up::xxx" search override for default service up 
  script from scheduler.
- fifo "up" command to clear "down xxx".
- service.up to do fifo "up" from ccScript
- service.down [reason] to do fifo down xxx behavior from script.
- further change on *xxx prompt shortcut.  Now searches for language/app
  specific voice set, and if not found, defaults to the sys path.  This
  is different from plain xxx in that it does not default to the local
  voice library selected.  It is meant for system service scripts that
  may or may not have a local voice library language equivillent with a
  fallback to the sys as a global set.
- reworking of prompt paths.
- runclock timing of dummy sound driver.
- reorganization of "down" script and down prompts as sys prompts.

Changes from 1.0pre5 to 1.0pre6
- now a sys/xxx prompt subdirectory supported with *
- down script can use /var/bayonne/down overrides and has text for testing.
- playrec will NOT be language localized, hence all playrec prompts are
  now specified as sys:xxx which makes for easier reading.
- fix bug in speaking &weekday rule.
- "record offset=xxx" now supported.
- BAYONNE_VOICE and BAYONNE_LANGUAGE can be set in the environment to
  create initial defaults.
- bayonne.init now checks /etc/sysconfig/bayonne for additional config
  information.
- David Kerry's tgi module patch for memory trashing.
- auto conversion from mulaw to s16 in dummy sound driver as mulaw doesnt
  work well with some oss soundcard drivers.
- correction for "0x" minute speaking in English &time rule.

Changes from 1.0pre6 to 1.0pre7
- LiS now preloaded by bayonne_start script rather than implicitly linked
  with the server image.
- --without-streamlink added so I can create production rpm's that build
  the dialogic driver but do not create a RPM dependency on LiS or require
  the server to be prelinked with LiS.  The LiS prelink can now be done by
  the bayonne_start script on the target machine instead.
- new interpreter delayed sleep module commit support.
- start of infotel/gnufo protocol module and info script command.
- /etc/bayonne.init can be used to pre-load fifo (init file!) at startup
- support for optional altscripts in configure
- support for BAYONNE_CONFIG setting in /etc/sysconfig/bayonne
- added %audio.offset
- "erase" command added
- "move" command added

Changes from 1.0pre7 to 1.0rc1
- cleardigits now supports cleardigits.last to fetch last digit.
- cleardigits supports optional branch label.
- cleardigits has .trap option to force label banching from digit cache.
- cleardigits .pop option to pop off first digit and then trap.
- use of MAX_DIGITS to set max dtmf digit buffer.
- gateway sox assisted "copy" command.
- copy and copy.append to copy and append audio into another file.
- new "sox" option in [paths].
- options keyword with dtmf=mode option to enable support for highly
  interactive dtmf systems and various interesting behavior changes.  use
  carefully.
- collect can now prescan current %session.digits to validate if input
  already collected, and has new .trim option and term behavior when
  testing prebuffered digits.
- collect now has var=symname to store collect results seperate from
  dtmf session stream.
- bayonne interpreter modules can override and save original method
  calls.
- addModule allows aliasing.
- infotel service is bound to known port and interface so it may be
  easily firewalled or used for localhost only operations.
- oss soundcard set to O_NDELAY for close so that close never locks up.
- sunrpc is now defined as a server "protocol" module rather than old
  .svc plugin type.
- group dump --groups option for testing trunk group configuration.

Changes from 1.0rc1 to 1.0.0
- fixed auto-path searching if no config file found.
- fixed bayonne.init test for /etc/sysconfig/bayonne
- patch for multiple dialogic t1 span resource allocation.

Changes from 1.0.0 to 1.1.0 (-head beta...)
- Italian language support.
- gcc 3.2 related fixups.
- autovon keycode map, and dual use of ^flash for station events.
- trunk station events.
- internal pbx dialing plan virtuals and "start", "send", and "examine".
- bayonne hosted station dialing plans with dso override capability.
- new organization of xxx:yyy url formatted paths and use of sys prompt
  directory.
- keyterm sample scripts and lots of station side functionality changes.
- now REQUIRES ccScript 2.3.0 or above
- switch integration modules added, starting with smdi protocol.
- merged globalcall driver for Dialogic
- named holidays in scheduler, submitted patch
- new infrastructure for inserting tts modules
- flite TTS support integration
- "bayonne" is now a shell script that calls "bayonne.bin"!  This was
  done so that drivers which require pre-loaded shared objects can have
  those set in LD_PRELOAD before bayonne is started.
- all bug fixes and improvements 1.0.0 through 1.0.8

Changes from 1.1.0 to 1.1.1
- BengaliM voice library added.
- Ability to select phrasebook "language" thru voice library alone.
- fix for regression tests!
- direct xml parser execution
- sql module support
- sync state in join for sync retry possible
- join improved in other drivers to allow easy connect/disconnect
  multiple times.  now use join.hangup and wait.hangup to get original
  behavior.
- aculab join now updated to level of dialogic join.
- tgi php support contributed.

Changes from 1.1.1 to 1.1.2
- more tts tie ins such as conditional xxx.tts source scripts.
- theta build option for flite tts.
- support for dialogic auto-conversion of linear to ulaw.
- allow support in tone audio processing.
- say tts cache coherency and global threadlock.
- altplay and altspeak conditional versions of play and speak that are
  used only if no tts plugin found.
- playrec.scr now dual mode tts/non-tts

Changes from 1.1.2 to 1.1.3
- auto-loading of tones section.
- statnode_t expanded.
- monitoring node status broadcast option (seperate from bayonne peer 
  node), used for universal system monitor.
- dial.dtmf replaces "dtmf" script command.
- EnglishF added
- rpc transaction log added to support rpc operations that depend on
  script processing/call results by allowing extended query.
- new dial options to automatically handle local, national, and
  international dialing and base phone number digit manipulation,
  along with trunk-group entries for different prefixes.
- usr: path extended for script specific alt paths.
- var: prompt path added to make use of appname in /var/bayonne.
- general code cleanup!
- .rpc script registeration preprocessor token to override default
  rpc.scr methods.
- preprocessor .module and .xml loading.
- "exists" command replaced with ccScript 2.4.1's new "file.pkg" and the
  2.4.1 ability to add "if" extensions.
- embedable "SQL" query module and sql command extension (postgres)!
- making of tgi as "optional" feature (disable using --without-tgi)!

Changes from 1.1.3 to 1.1.4
- fifo input extended to use atomic PIPE_BUF based size.
- msgbox module and "msgs" command to process simple voice mail folder.
- record has "save=" option to auto-rename on end of successful record.
- %user.xxx per-user properties, and login/logout state management.
- some script operations now require "admin" priv, and default privs
  set in [server] under login=.
- new admin level "control" command!
- fixed voicetronix dialing.

Changes from 1.1.4 to 1.1.5
- transfer of loginid between parent and started child.
- rpc can pass a loginid.
- msgbox uses login info and is more complete.
- globalcall driver dialing updated.

Changes from 1.1.5 to 1.1.6
- introduction of Bayonne Site Monitoring tool (gui manager)
- system up statistics collection
- some fixes for gui "plugin module" that make it do something useful
- statnode_t includes uptime info.

Changes from 1.1.6 to 1.1.7
- bayonne.pid control for running instances.
- small compile fix for non-xml use.
- fix for dir and msgbox cancellation of dir objects (were on stack frame).
- lots of Intel/Dialogic "GlobalCall" driver fixes to be migrated in
- lots of Voicetronix PBX related os12 driver fixes
- if -extension xxx check.
- if -user xxx check for active user profiles.
- new fastbranch "redirect" option added.
- if -hunt for huntgroup checks
- save and binding of pbx line and hunting preferences
- huntinfo to extract hunt group info
- bayonne_control doesn't run if no server instances running
- major globalcall updates
- virtual extension support.
- if -virtial xxx check.
- if -station xxx check.

Changes from 1.1.7 to 1.1.8
- .dtmf object property to transpose text to dtmf equiv.
- bayonne_globalcall and bayonne_update depreciated
- sitemon rpm seperated
- merge bayonne_control and bayonne_down into "bayonne" script
- tgi size settable
- fifo extension fixups and changable tgi buffer size
- mass merger and elimination of bayonne_install scripting by folding into
  "bayonne" super script.
- bayonne_status replaced with bayonne --status.
- libexec query options now passed url escaped!
- --init now initializes preferences database
- support for --sysconfdir options for specifying location of default
  configure path, and improved handling of config switching, for local
  or global install support.

Changes from 1.1.8 to 1.1.9
- Luc Vidal's fifo send patch.
- fhs 2.2 compliance changes
- Mark's globalcall fixes
- extensive work for fhs compatibility
- ability to directly select older installed servers with --version=...

Changes from 1.1.9 to 1.1.10
- trunk sieze states and os12 card updated hardware
- init script fixup
- fix for xml buffering.
- fix for dummy driver on systems without a sound card

Changes from 1.1.10 to 1.1.11
- pass correct prefix from shell script to binary module
- mysql database plugin contributed by Mark Lipscombe
- gcdiag programs contributed by Gerry Gilmore for GlobalCall testing
- fix for libexec of uninitialized key=value values
- fix for argument passing of shell script

Changes from 1.1.11 to 1.2.0
- support for installing and creating voice library repository
- aculab fixes from Simon Millard for u/a-law, etc
- some basic fax code for scripting support when drivers add capability
- --test becomes --trace automatically in runtime invokation
- remote installation and voice library support includes alaw preconversion
- capi patches from Gregor Goldbach.
- clarification of pbx hooks in trunk group, and replacement of keyterm.
- statinfo command added to retrieve call stats into scripts
- analog hangup patch for dialogic runtime driver from Dmitry Agafonov
- support for new softdial state.
- original manual replaced with install, admin, and scripting guides.
- fix to bayonne script to make downloading of voice libraries actually 
  work!
- removal of all non-english voices from the distribution tarball; they
  are now downloaded by the admin using "bayonne --voices".
- when used with Common C++ 1.0.10 or later, now uses Common C++ passed
  module link flags, which allows build for macosx plugins.

Changes from 1.2.0 to 1.2.1
- enhanced CAPI driver for multipe pri cards from Peter Krapfl.
- fifo "service" command for use in front of up/down.
- fifo "test" command to redirect to test:: based automated testing.
- added %driver.trunkid to seperately manage trunks for pbx.
- fix commit for array indexes
- improved purge in server.cpp.
- extended did support patch from Marco Lanzotti
- fix for tonetmp and soft dialing...
- flash handling and stop state.
- recursive tone name search support.
- advanced tone handling for continues tones, pbx toneset, etc

Changes from 1.2.1 to 1.2.2
- valid user id's restricted in pbx mode.
- use loss of ringing as a disconnect in nonanswered call (vpb driver)!
- selective loading of user records by dialing plan when in pbx mode
- more vpb tone changes...

Changes from 1.2.2 to 1.2.3
- pickup and intercom script selection processed by passing scheduled 
  script of originating port rather than using the destination port.
- improved if -service test.
- fix for new vpb api release.

Changes from 1.2.3 to 1.2.4
- fixes to use getopt_long in freebsd 5.0 and later; strangeness...
- fix capi init
- bayonne --status fixed

Changes from 1.2.4 to 1.2.5
- fix for startup segfault issue.
- version id now returned by script rather than binary.

Changes from 1.2.5 to 1.2.6
- fix for uninitialized variables passed to libexec call.
- autoloop turned off for exit handlers, and in drivers.
- generate "bayonne.nodes" when networking disabled!
- TCPServer cleaned out
- new packet ipc subsystem added
- partial fix h323
- test for theta...
- updated configure system
- support for newer autoconf/automake
- support for suse 8.2 postgres c++ changes
- new symlinked "openswitch" and "openline4" driver names

Changes from 1.2.6 to 1.2.7
- missing m4 files from dist.
- fix for newest autoconf.

Changes from 1.2.7 to 1.2.8
- excellent scripting example manual

Changes from 1.2.8 to 1.2.9
- fix for "init" script.
- Suse patches for 64 bit clean, sysconfig

Changes from 1.2.9 to 1.2.10
- new "bayonne" startup script with improved checks, --kill and --gdb
  options.
- new "drop" option in [vpb] bayonne.conf.
- fix for .init to kill bayonne.bin instances.
- new clean setVariable method for passing back reference entries.
- iso date processing in phrasebook
- support for ccscript3 releases??
- new clean getVariable method to extract vars in correct reference.
- fix for dialogic record.info processing.

Changes from 1.2.10 to 1.2.11
- "erase" uses extension and path processing more correctly
- "move" uses extension and path processing more correctly
- compile for Common C++ 1.1.0
- fix for "step"/"exit" problem.

Changes from 1.2.11 to 1.2.12
- fix for phonedev driver for bsd quicknet.
- dutch language addition.
- fix configure to .ac.
- experimental multi-party audioconference support in dialogic with
  reroute command,  fdr patch.
- some fix for group and nobody default

Changes from 1.2.12 to 1.2.13
- fix for russian language.
- fix for compiling against Common C++ 1.2.5 and later...
- backport of capi driver update for alert sending
- luci patches for global call stability, and audio between 
  accept & answer
- sunrpc patch and utility from stam.
- new [dialogic] "queue" option to set depth of driver event queue.

Changes from 1.2.13 to 1.2.14
- more sunrpc updates.
- EventError removed from gc driver...
- Some build fixes...
- fix for dialogic driver counting
- audioconferencing in globalcall driver

