X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=README;h=8c0d65ae5537b28adcc804777f3cc688d3bcef9b;hp=e69de29bb2d1d6434b8b29ae775ad8c2e48c5391;hb=8994874d7bcb1eff9ee833fb22e4910cc365f456;hpb=1bf9bb306b9b92b50e56a2dcce131eb5e82e667a diff --git a/README b/README index e69de29..8c0d65a 100644 --- a/README +++ b/README @@ -0,0 +1,526 @@ + +Note: +----- +PBX software can be connected to private hardware, as well as public +switched networks. Due to wrong use or software bugs, it can cause failures +to these networks and hardware, disturbing users of these networks and +hardware, cause load and unwanted costs, and may prohibit making calls, +especially in case of an emergency. + +The authors of this software cannot take any responsibility for correct +use and correct behaviour of this software. +If you use this software, you aggree the terms of the LICENSE and README +file. +You will also inform your customers about the content of the LICENSE and +README file. + +Some countries and/or telephone networks require special approval in order +to allow telephone devices to be connected to their networks. + + +Installation and Usage: +----------------------- +Read the documentation at http://www.linux-call-router.de +Also you will find a quick howto there. + + +History: +-------- + +Changes in Version 20021228 +- first release + +Changes in Version 20030111 (buggy and unuseable) +- support dtmf for callback and dtmf dialing mode (dial through via dtmf) +- bug fixes +- dialing improvement: dialing h323 now possible with port and alias +- other stuff +- new Makefile: make install will now install binaries and data on your system + +Changes in Version 20030118 (buggy and unuseable) +- information exchange between isdn/h323-ports, endpoints and calls are messages now + previousely using direct calls with pointers were dangerous +- removed bug since 200301011, which caued h323 calls to deadlock + +Changes in Version 20030120 +- login function +- callback authentication +- h323 audio bug. no h323 audio transmission sice version 20030111 +- some other bug fixes + +Changes in Version 20030206 (first beta release 1.0) +- callerid (CLIP/COLP) is now processed correctly with all features +- hold sound and active/inactive notification +- CD notification +- many callerid display function +- bug fixes +- documentation as word document (partly done) +- Note: This week I have my vakation, so there is no response to any question in the mailing list. + +Changes in Version 1.0 +- first release +- finished the first version of the documentation +- new style internet page with documentation in html +- all enities (port, endpoint, call) are now c++ objects, rather than structures +- tones may now be played and recorded using wave (8bit mono, 16bit mono, 16bit stereo) or law (alwa/ulaw mono) +- fixed corruption in wave-file creation +- now call forwad (cfb, cfnr) is implemented and working +- an answering machine with playback function is implemented. +- lots of bug fixes + +Changes in Version 1.1 +- option to fetch tones into memory, causing faster access, then from hard disk +- Memory is now locked using mlockall(), to prevent paging which causes jitter and interruption. +- Answering machine now works with keypad information. +- callback on internal port, if hangup with call on hold. +- A pocket calcularor with simple terms (*, /, +, -) and floating point is added. +- If a calls had more than two endpoints, any message has been ignored. + This caused not to receive the retreive notification, which caused the hold + music to continue to play. +- minor buf fixes +- Disconnect/release "causes" are now processed by priority, if a multipoint call is made. + +Changes in Version 1.2 +- bugfix: dialing of vbox-caller now works. +- bugfix: minor answering machine announcement bug +- fixed compiling error: h323_con.cpp (p_type not declared) thanx arne! +- added include definition for kernel api in Makefile. Hope it works... +- fix: dummyid is used for external calls when no caller id is available. the + dummy id is transmitted as restricted id. if the police is called, it will + see the dummyid rather than the pbx line id. this is used on forwarded calls + when the caller id is not available. +- doc: added a simple instruction to build a cross over cable. + +Changes in Version 2.0pre +- NEW ISDN DRIVER SUPPORT (Forget the HiSax, now use 'mISDN'.) +- NEW KERNEL REALTIME MODULE (mISDN_dsp.o) +- NEW NT-MODE LIBRARY SUPPORT (now MULTIPOINT!!!) +- NEW TE-MODE STACK SUPPORT +- support of call suspension and retrieval (switch between calls) +- call waiting on internal phone (calls when no bchannel is available) +- doc: Now headlines are moved to the next page if they are at the bottom of a + page. +- vbox: minor speech syntax bugfix +- up to 50 (compiler flag) dialed numbers can be recalled. +- up to 50 (compiler flag) received calls are listed and can be replied. +- Dialing informations are now queued by endpoint until port has received + setup acknowledge on the outgoing connection. +- Starting PBX without parameter gives a list of options. +- Query option for listing available ports/cards. +- CNIP (calling name) Some Simens switches and telephones support this. +- Extensions no have names. +- Timeouts can now be specified for different call states on ISDN phones. +- Tones/Announcements can now be overridden at different call states. +- isdn.cpp is completely reworked. +- Tones/Announcements can be played externally, if supported by the external + line. +- Commandline parameters must be given on startup of pbx. +- query option to check out the current isdn cards and protocolls. +- Debug flags can now be used to speciallize the debug output. +- vbox: Recorded calls can now be sent as attached sound file via email, or + just a notifaction mail without sound file can be sent. +- PBX now runs with highest prio (99) to get as much cpu as possible. +- CPU scheduler now runs PBX4Linux as real time process. +- Internal calls now use internal extension number as caller id. +- Rework of hold/conference. +- New option to allow an incoming h323-call to be connected at ringing state. +- New codecs supported with h323 (speex and law) +- COLP now works with h323 +- Answering machine now delays to avoid the dtmf tone when start recording +- Answering machine now adds the beep behind the announcement file. +- keypad facility dialing option +- Conference now really works using call hold feature in conjunction with + keypad feature +- Picking of an incoming call on isdn now really works. +- picking of a call forwarded to vbox +- I fixed a bug that did not queue the dialed digits correctly before getting + an external connecting. +- Logfiles of calls now show the correct year. +- Callback now rejects if no password is given or the given extension doesn't + exist. +- Incoming H.323 calls may now instantly connect using a special option. +- H323 compiles faster, because the H323 includes are only used for the H323 + code part. +- Using 'curses' for a state debugging. The current state of all instances + is displayed on the screen including calls, endpoints and ports. +- manny, manny more things that I forgot + +Changes in Version 2.0 +- fixed memory leak +- fixed COLP bug +- finally SUSPEND/RESUME (call parking), resume is allowed from any ISDN-port +- some CRITICAL bugfixes +- Fixed and reworked sample counting when playing tones. Now fast wind and + rewind works correctly. Also 8-bit recording can be played back now. + I hope it works now without problems. +- An internal phone without caller id will now be rejected rather than + treated as an extenal call. +- Fixed bug in rejecting an external call. +- Corrected handeling of 'inbandpatterns'. +- Data calls will not enable DTMF detection. +- Data calls will not use any audio transmission from user space. +- Forward to VBOX only if call is an audio call. +- Fixed library bug, that caused not to process keypad-information during + setup message. +- Fixed a 'release_complete' bug. +- Debug information now have the correct month. +- Fixed bug of wave-playback of voicebox recoding, caused by rework of the + audio routines. It caused a SEGMENTATION FAULT! +- Using threads now to send email and using libcrypto. +- Introducing encryption of external calls using Blowfish. +- Key exchange using RSA. +- Fixed a bug in dialing H323-IP with numerical digits. +- Fixed a bug that causes endpoint, which receives audio data, to crash when + no port is related to it. +- Fixed a bug that did not release endpoint, when it receives a disconnect + if it has no port (parked). +- Fixed a channel assignment bug when retrieving call. (second B-channel) +- Now COLP with H.323 works. No more crash! +- Park attribute was not set, which caused a crash. +- Conference now works correctly with dsp-module. +- Fixed a serious NT-mode process handling problem. (crash after some calls) +- Added log file which is also displayed on the 'state' screen. +- * Happy new year 2004 * + +Changes in Version 2.1 +- Fixed a bug that caused not to reply external calls (also VBOX). +- 'genrc' now supports loading HFC-4S, HFC-8S and HFC-E1 drivers +- Outgoing setup now expires after 8 seconds! +- Fixed a bug that causes mISDNuser to crash during cleanup. +- Fixed memory bug, thanx Paul! +- hfc-4s/8s driver support (mISDN) +- Improvement of isdn audio processing, hardware support. +- Fixed diplay callerid bug "anonymousunknown anon" +- Added more stable malloc (calloc) / free handling + +Changes in Version 2.2 +- PRI proof (2 MBit interface support when using HFC-E1) +- Fixed data call bug +- Improved display of PRI channels +- Now VBOX playback says "no messages" if the last message has been deleted + and will not play the last but one, unless the "previous" button has been + pressed. + +Changes in Version 2.3 +- Fixed HFC_MULTI driver activation problem (HW_RESET was not implemented) +- Fixed login prefix bug. Thanx Karsten V. +- MISDN: better layer 2 check +- Now facility informations are transfered during call to terminal + (finally advice of charge is displayed) MUST BE ENABLED BY SETTINGS! +- Fixed 'reply' dialing bug, that caused a crash. Thanx Karsten V. +- Added L1 activation for NT-Mode. Fixed problems with inactive links. +- Fixed a bug that caused subsequent data calls after a data call. Thanx JC. +- mISDN: layer 1 now works correct with E1 cards. + +Changes in Version 2.4 +- Fixed parallel ringing to multiple external numbers. +- Fixed login again (was still buggy). + +Changes in Version 2.5 +- Fixed callback bug. (International numbers were not detected.) +- Fixed typos (mostly "incoming") - thanx Lars. +- Fixed vbox-email bug - thanx Martin. (and also the compiler error) +- Fixed compiler bug, that caused compiling without crypto lib to fail. +- Fixed some mISDN crash problems. +- Now it should also compile with the original CVS tree. +- Fixed hfc_multi unloading bug - thanx Karsten! +- Now disabling DSP_MODULE really causes DSP to be disabled. +- Now disabling real time scheduling really works. +- mISDNuser (CVS) now compiles with the mISDN (CVS) +- Adding the outdial prefix to the caller ID is now possible. +- Fixed bug that caused echo test not to work. +- And finally hardware echo now works on HFC 4s/8s/E1 (hfc_multi) + For echo dial 993 (Test + 3) for standard configuration. +- Added new hfc_multi vendor IDs including "Beronet Cards". + +Changes in Version 2.6 +- Fixed hookflash bug in conjunction with prefix. Thanx Tobias! +- Fixed cleanup bug when loading of ISDN driver failed. +- Fixed mISDN bug that caused cards not to be found, if loaded in different + order as found by kernel. +- Fixed a bug that causes a segfault when a phone disconnects while + parallel ringing multiple phones/ports. +- Added capability for Point-To-Point in NT mode, including PRI. +- Added L1 link control for NT mode. +- Fixed bug in hfc_multi and mISDN driver that caused mISDN not to work + with kernel > 2.6.7. +- Fixed a but when detecting different cards with hfc_multi. +- Fixed timer bug that caused timers of multiple NT ports not to work + correctly. + +Changes in Version 2.7 +- Fixed lots of bugs. +- Now receive stream from mISDN is disabled when not needed. +- Added NT mode support for incoming "SETUP_ACKNOWLEDGE". + +Changes in Version 3.0 +- Advanced routing capability to replace the numbering_*.conf + (Don't worry, internal and external numbering is a feature of the routing + capability and is easy to convert.) +- Now correct cause location is generated and handled. +- New cause display feature. Location is displayed with the cause number. +- Many source cleanups. +- New interface (Unix socket) to administrate. Status informations are now + viewable without restarting PBX. Even may processes may view status info. + Starting / stopping state debugging, doesn't require to restart PBX. +- Status information now has selectable details. +- Better structure for debugging functions and better logging. (code) +- Dialing may also be done via command line interface. +- Now internel/external dialtone and ringing depends on internal/external call. +- Now endpoints (partys) can be released via command line (admin tool). +- Watchdog "pbxwatch" to automatically restart and even debug PBX4Linux. +- Removed problem with uninitialized variable in ISDNPort object causing to + crash. It did not happen very often.(only after some hundred/thousand calls) +- HFC-E1 cards did not correctly synchronize to external lines. +- dsp.o now allocates only one timeslot per call, as expected. +- mISDNuser now correctly connects PRI calls. +- PRI improvements and bugfixes. +- Support for conference rooms. +- Voice box is now able to play announcement before connecting the call. + A special feature on the external line is required to send audio before + answering the call. +- It is now possible to include seconds (time) in the connect message. This + might not be supported by all telephones, so it is an optional feature. +- Moved open and close of recording audio to the "Port" class, where it + belongs. The mixer will be more performant this way. +- Notify is now supported by mISDN and also correctly handled and queued + by PBX. +- Fixed bug that caused not to free broadcast process IDs in certain cases. + This would cause calls to internal phones (from extern or intern) not to + work after a while. +- Added HFC-S USB to 'genrc' tool. +- printisdn now shows corret month. + +Changes in Version 3.0-fix1 +- Rule for changing the forwarding now works. Enter "pbx rules forward" for + description. Also the example in "defaults/route.conf" is corrected. +- Forking now forks twice and suppresses debug output. Closing of shell is + possible. + +Changes in Version 3.0-fix2 +- Fixed memory leak bug in pbxadmin that caused to eat all memory and make it + stop. +- Fixed audio handling that cause forking calls to be mute. (Parallel + forwarding causes calls to fork to multiple destinations.) + +Changes in Version 3.0-fix3 +- Added "nopassword" parameter for login action. +- Fixed bolean condition bug. +- pbxadmin will not exit if terminal size changes. + +Changes in Version 3.1 +- Internal structure changed. "Endpoints" and "applications" are now two + linked classes. The code is now reusable for other projects than + "PBX4Linux". (No added features!) +- Some source cleanups. +- Now keypad must be enabled for each extension if required. (settings) +- Removed a new bug that caused remotely parked/holded calls not to be removed + from conference. The conference got disturbed by park/hold sound from + remote. +- Removed bug that caused printing of unset pointers. + +Changes in Version 3.2 +- PBX now works with mqueue branch. This is the latest CVS source: + * HFCmulti is ported + * HFC-PCI is ported + * DSP is ported + * nt-mode lib (libi4l) is ported + * source is now SMP (multiple processors or hyperthreading) save. +- Fixed bug that caused not to record if annoucement is missing +- A prefix may be specified with callback for predefined dialing after + callback. +- Now b-channels are displayed more compressed on admin tool. + +Changes in Version 3.3 +- * te-mode works +- * te-mode layer 1 and layer 2 control works (SHORTMESSAGE) + +Changes in Version 3.3-fix2 +- OpenH323 midas release compiles +- Fixed bug in MESSAGE_NOTIFY which cases display information not to dliver. +- OpenH323 midas release works currently only with law-codecs +- Dixed some dial string parsing for Openh323. + +Changes in Version 3.3-fix3 +- Rework of kernel audio briding. Much faster (less delay), dynamically + handles jitter. Ready for future RTP / ISDNoIP modules. + +Changes in Version 3.4 +- Removed DSP_MODULE switch, because it will be essential for PBX operation. +- Fixed pbxadmin offset bug. +- Added special feature "efi" to announce caller's ID. You call, and it tells + your caller ID. (if available) Sample set is not complete! +- Now caller ID and type can be given for external call rule. +- Now caller ID and type can be given for changing caller ID. +- Removed a display bug in pbxadmin, that caused busy channels to be omitted. +- Fixed layer 2 handling bug. +- Increased performance of pbx-status screen. Many interfaces/calls caused + lock up of machine. +- Timeout condition seems to work now. +- Timeout action seems to work now. + +New Verion for new name: LCR + +Changes in Version 0.1 +- Statefull b-channel open and closing +- Rebuild audio flow + Made much simpler + Preloading and keeping transmit buffer for seamless tones and patterns. + Recording of what is actually transmitted and received by party. +- Logging is replaced by trace +- New isdn interface and port structure with many features + Interfaces can be changed at runtime. + Interfaces can be loaded and unloaded at runtime. +- mISDN stack fixes +- DDI in and out on all stacks +- Layer 1 over IP supports interconnection via IP +- Rebuild line and b-channel hunting with individual lists +- Screen lists for changing caller IDs +- Multiplexing calls to multiple extensions +- Removed all VoIP stuff to make core fast and stable (Use Asterisk for VoIP.) +- Fixed a bug that caused some isdn connections to hang during disconnect +- Many bug fixes +- Many minor improvements +- New bugs of course... +- Rename of 'Call' instances to 'Join', because they join parties together. +- A new remote interface for external applications is integrated + -> Our first application is (-: *ASTERISK CHANNEL DRIVER* :-) + +Changes in Version 0.2 +- Fixed partyline handling +- Stall warning +- Audio recoriding still does not work. + +Changes in Version 0.3 +- Added join/release jingle options for partylines +- Fixed bug that did not release reserved channels, so interface run out of + channels. +- Bugfixes... +- Minor bugfixes +****** Major hfc_multi bugfix ******* +* no more crash with multiple cards * +************************************* +- Screening bug removed. (Thanx Martin) +- Wave files with FMT header > 16 now work. +- Added timeouts for testcall feature. (lcradmin) + -> You can run scripts, that generate testcalls of multiple destinations. +- Added origin flag to correctly process last_in and last_out call logging. +- Tones and annoucements are not overwritten if exist, during installation. +- Screening now also works for outgoing calls (to interface) +- Fixed VBox, also added trace debugging. +- Nice 'Beep' after the announcement. +- Special announcement recording without beep. +- Filters now work for interface.conf +- Fixed minor audio gain bug. +- Moved timeout setting from extension to interface.conf. + +Changes in Version 0.4 +- Complete set of EFI samples + +Changes in Version 0.5 +- Preperations for Asterisk channel driver (chan_lcr) +- Errors in information elements are now reported inside log/trace. +- Recover bchannel (de-)activation if message from mISDN got lost + +Changes in Version 1.0 +- Bugfixes +- Complete port to new mISDN V2 API (socket based). + -> Old mISDN will not work anymore. +- Interfaces mode (NT/TE PTP/PTMP) can now be changed at runtime. + -> No more module parameters must be given for cards. +- First Alpha release of chan_lcr - the Asterisk PBX channel link driver. + -> Use LCR in conjunction with Asterisk, or simply as ISDN frontend. + +Changes in Version 1.1 +- Fixed dtmf bug. +- Added more display infos +- Fixed b-channel check bug. (channel seemed busy, even if it was free) +- Forced proceeding, if "sending complete". +- Removed 'lcr query'. It is obsolete, because 'isdninfo' does it. +- Fixed lockinproblem with chan_lcr (hopefully). +- HDLC now works and is used for B-channels, if required. +- Briding for chan_lcr fixed, many other fixed for chan_lcr. Overlap dialing! +- Compiling and 64-bit issues fixed by Karsten. +- chan_lcr fixes and tests by Peter. +- LCR now runs as user, but still can be run as root. +- Ports can now be given with number or with name. + +Changes in Version 1.2 +- Changed isdninfo to misdn_info. +- Fixed some trace bugs. +- Fixed some layer2-link issues. +- special interface config option "te-special" to allow transmit of all IEs + in TE-mode. this is usefull to interconnect LCRs. +- Introduceing autoconf (./configure) with help of Joerg and Peter. + -> Default installation path remains /usr/local/lcr, so don't worry! + +Changes in Version 1.3 +- Finished autoconf. +- Obsolete "pbxwatch" is removed. + +Changes after Version 1.3 release +- fixes in chan_lcr, thanx to peter and gregor +- message pointer forwarding fix, thanx to bodo! +- capability fix, thanx to gregor +- processing of second caller id +- Dialing length can now be limited. EWSD allows only 20 digits at a time. + -> Multiple messages are sent to dial full string. +- Added alerting and proceeding to the goto rule. +- Added patch by gregory, asterisk should now use faxdetection with mISDN_dsp + disabled. + +Changes after Version 1.4 release +- Bugfix: When reloading interfaces, interface will not be reopened, if + interface was specified by name. +- Added PID file (thanx to Joerg) +- Added Callweaver support. (thanx to Kristijan) +- Bugfix on timeout rules. (thanx to Benjamin) +- Fixed dtmf detection of A-D. (thanx to Ralf) +- Fixed Notification messages in NT-mode + -> Notifications like diversions are now sent to terminal. +- Added l1hold feature (requires new mISDN and mISDNuser). +- chan_lcr: Fixed compile problem with newer versions. +- chan_lcr: Open b-channel if asterisk indicates "PROGRESS". + -> Also if tones are available, asterisk gets "PROGRESS" indication. +- lcradmin displays TEI values in NT-mode PTMP +- Added patch from Daniel + -> Improved forking + -> Execution action can now be done on call init or on call hangup. + +New release Version 1.5 +- Added GSM network support. + -> Requires OpenBSC, GSM codec, and a BS11 base station. + -> For more refer to www.linux-call-router.de. + +Changes after Version 1.5 +- Tones are restructured: + -> mISDN_dsp.ko tones must now be specified via 'tones_dir' parameter. + -> interface.conf has a tones_dir options for individual interfaces. + -> interface.conf has priority over tones_dir in options.conf. + -> exnsion's settings has pritority over other tones_dir setting. +- Debug option now works for GSM. +- Fixed some GSM information elements. +- OpenBSC api changes. +- Fixed disabling of DTMF using 'n' option of chan_lcr. +- Added GSM IMSI dialing by using dialing "imsi-". +- Applied API change of OpenBSC. +- Applied changes of OpenBSC main branch. LCR now works with OpenBSC main + branch. +- Minor fixes and source cleanups. +- Added patch by Kai Peter to complete screening indicators. Thanx! +- Join conference during alerting phase, so calls can be forwarded. +- Fixed conference release bug. + +New release Version 1.6 + +Changes after Version 1.6 +- Fixed bad call/conference bug in joinpbx.c +- External interfaces must now be specified using 'extern' keyword. + -> This prevents from selecting other interfaces when dialing out. + -> Just add 'extern' right below your external interface definition, or give + external interface name in routing.conf: ": extern interfaces=XXXXX" +- Added experimental CCITT No. 5 signalling system. (for educational purpose) +- Added socket owner/group options to options.conf +- Fixed/simplyfied config parser. The last digit of the last line was ignored. + +