Commit Graph

195 Commits

Author SHA1 Message Date
Peter Schlaile adc5448774 simplified rebuffer-mode to make large block sizes work better
Thanks to Kristijan Vrban for the patch!
2009-03-09 09:25:26 +01:00
Peter Schlaile da0d507518 added documentation for re-buffer option 2009-03-02 11:46:05 +01:00
Andreas Eversberg 7476048ba3 New release 1.4
modified:   README
	modified:   chan_lcr.c
	modified:   configure
	modified:   configure.ac
2009-03-01 20:03:32 +01:00
Andreas Eversberg ce266f45f3 Added fax detection patch by gregory.
modified:   README
	modified:   chan_lcr.c
	modified:   chan_lcr.h
2009-02-15 14:33:22 +01:00
Andreas Eversberg aaf6f200d7 Added alerting and proceeding to the goto rule.
modified:   README
	modified:   route.c
2009-02-15 11:41:41 +01:00
Andreas Eversberg fb6e219eda chan_lcr hopefully now compiles against SVN version of asterisk.
Added limitation option for maximum dialed digits. If dial string exceeds
that limit, overlap-dialing is used to complete dial string.
Siemens EWSD (APS V16) only allows 20 digits at a time.

	modified:   README
	modified:   chan_lcr.c
	modified:   default/interface.conf
	modified:   dss1.cpp
	modified:   dss1.h
	modified:   ie.cpp
	modified:   interface.c
	modified:   interface.h
2009-02-15 09:04:14 +01:00
Andreas Eversberg 53b5521b34 fixed end-pointer bug on forwarded messages. thanx to bodo for this bugfix.
modified:   message.c
2009-01-06 18:44:41 +01:00
Andreas Eversberg f8cbd5d6f1 added capabilites to lcr channel driver to fix some codec problems. thanx to gregor for this patch!
modified:   chan_lcr.c
2009-01-06 18:37:02 +01:00
Andreas Eversberg bf61575a94 changed error message a bit...
added support for asterisk 1.6. it now compiles with both 1.4 and 1.6. (tested with 1.4 only) thanx to gregor for his valuable help!

	modified:   bchannel.c
	modified:   chan_lcr.c
	modified:   config.h.in
	modified:   configure
	modified:   configure.ac
	modified:   lcradmin.c
	modified:   main.c
2009-01-06 18:34:05 +01:00
Andreas Eversberg efc550418c Added processing of second caller id.
New routing macht rule to filter second caller id.

Fixed extensions directory path.

"make clean" now cleans ".po" files.

Fixed unititialized variable bugs and compiler warnings.

	modified:   Makefile.am
	modified:   Makefile.in
	modified:   action.cpp
	modified:   apppbx.cpp
	modified:   callerid.c
	modified:   chan_lcr.c
	modified:   dss1.cpp
	modified:   dss1.h
	modified:   extension.c
	modified:   gentones.c
	modified:   ie.cpp
	modified:   mISDN.cpp
	modified:   message.h
	modified:   port.cpp
	modified:   route.c
	modified:   route.h
	modified:   socket_server.c
	modified:   tones.c
	modified:   trace.c
2008-11-04 09:31:09 +01:00
Andreas Eversberg 2b8b9508c6 Merge branch 'master' of ssh://jolly@www.mISDN.org/var/git/lcr 2008-10-27 23:51:03 +01:00
Andreas Eversberg 8455b2dd9d added "lcradmin portinfo" for 'ifconfig' like port informations at run time.
modified:   lcradmin.c
2008-10-27 23:50:45 +01:00
Peter Schlaile c37c79c76b chan_lcr: fixed SRCUPDATE
Asterisk 1.4.21 already has source update, so let's check for it by
ifdef again.
2008-10-25 19:02:14 +02:00
Peter Schlaile 6c4b239a3a chan_lcr: Fixed automagic 's' extension and made pickup work.
Last commit by Andreas changed matching semantics to make it possible
to go directly into the dialplan _without_ dialing any digits by implicitly
dialing the 's' extension.

That is fine, if there is one to match :)

If we do not find an implicit 's' extension, we will wait for more digits
instead of hanging up immediately. (If you _really_ depended on that 'feature'
please add s => { Hangup(); } :)

Pickup: the pickup application can be used with PICKUPMARK to match
a channel, that is in RINGING state. Unfortunately, one has to explicitly
use ast_setstate() in addition to ast_queue_event() to convince asterisk
to change the channel state...

=> Pickup works now.
2008-10-25 18:44:31 +02:00
Andreas Eversberg 122a9b2329 added chan_lcr and Makefile.am fixes by Matthias
minor improvements for lcradmin

	modified:   Makefile.am
	modified:   Makefile.in
	modified:   chan_lcr.c
	modified:   configure
	modified:   configure.ac
	modified:   lcradmin.c
2008-10-23 21:26:44 +02:00
Andreas Eversberg 8033d9a61a now chan_lcr.so is moved to asterisk' modules directory when installing.
modified:   Makefile.am
	modified:   Makefile.in
	modified:   autogen.sh
2008-10-11 08:51:38 +02:00
Peter Schlaile c04c3f61ac chan_lcr: fixed some "bridging typos" 2008-10-09 20:51:00 +02:00
Peter Schlaile ba7a15918a Merge branch 'master' of ssh://schlaile@git.misdn.org/var/git/lcr 2008-10-09 20:31:40 +02:00
Peter Schlaile fab0ad70c7 added inband dtmf support to chan_lcr
Use option 's' in lcr_config or within the dial-command options,
just like in misdn.
2008-10-09 20:30:59 +02:00
Andreas Eversberg b519aa7e74 Completed documentation about instance creation/destruction proceedure.
modified:   chan_lcr.c
	modified:   chan_lcr.h
2008-09-28 17:37:56 +02:00
Peter Schlaile f9933186f3 chan_lcr: forgotten commit for new ref fix 2008-09-27 22:26:02 +02:00
Peter Schlaile 01c11f2ecf Merge branch 'master' of ssh://schlaile@git.misdn.org/var/git/lcr 2008-09-27 22:04:14 +02:00
Peter Schlaile 08f7138ac0 chan_lcr: fixed race condition in new ref assignment
LCR assumes, that any call in the list, that has ref set to 0 is waiting for a ref to be assigned.
That can cause trouble, if we have one call waiting for a ref to be assigned and another call
hanging in the list, that was just released in the same moment.

Both have ref == 0 and in some circumstances, the new ref message picks the wrong one for
assignment...

This patch makes chan_lcr distinguish between calls waiting for a new ref and those, that
only have their ref removed due to release. (It is not enough, to check for state, since
new calls can change into release state immediately! That is also one of the race conditions,
when this can get you into trouble: asterisk receives call1 by LCR, makes a SETUP call2 immediately
through LCR and then receives a release for call1 by LCR before call2 got it's ref assigned!)

This patch also removes some dead code, that was #ifdef'd out.

End user notice: if you ever got into the situation, that _all_ calls from asterisk to LCR got released
immediately and only a restart of asterisk got you out of the situation, then you might need
this fix :)
2008-09-27 22:03:44 +02:00
Andreas Eversberg 6b20d4b4eb updated autoconf
modified:   Makefile.in
2008-09-27 17:23:43 +02:00
Peter Schlaile 1d89e5aebc added options.c to automake, so that chan_lcr gets built correctly 2008-09-23 21:14:15 +02:00
Peter Schlaile ee848d3a9e Merge branch 'master' of ssh://schlaile@git.misdn.org/var/git/lcr 2008-09-22 20:43:33 +02:00
Peter Schlaile 3acba5ac9b work around broken HOLD/UNHOLD handling on some SIP phones
Some SIP phones don't send RETRIEVE before they send TRANSFER.
So we RETRIEVE if we bridge two channels, if calls are still on hold.

Also: handle CONTROL_SRCUPDATE with a debug message in recent
versions of asterisk.
2008-09-22 20:35:37 +02:00
Andreas Eversberg 26c7e0d22e Finished autoconf.
-> Commments are welcome.

	deleted:    Makefile
	modified:   Makefile.am
	new file:   Makefile.in
	modified:   README
	new file:   aclocal.m4
	modified:   action_vbox.cpp
	modified:   alawulaw.h
	modified:   autogen.sh
	new file:   config.h.in
	new file:   configure
	modified:   configure.ac
	modified:   default/interface.conf
	modified:   default/options.conf
	modified:   dss1.cpp
	modified:   dss1.h
	modified:   extension.c
	modified:   genext.c
	modified:   interface.c
	modified:   interface.h
	modified:   mISDN.cpp
	modified:   mISDN.h
	modified:   main.h
	new file:   mkinstalldirs
	modified:   options.c
	modified:   options.h
	modified:   port.cpp
	modified:   route.c
	modified:   todo.txt
	modified:   tones.c
	modified:   vbox.cpp
	deleted:    watch.c
2008-09-21 08:57:51 +02:00
Andreas Eversberg 6d3d13def3 fixed some layer 2 link issues
modified:   README
	modified:   apppbx.cpp
	modified:   lcradmin.c
	modified:   mISDN.cpp
	modified:   route.c
2008-09-14 14:37:51 +02:00
Andreas Eversberg 6f1ac87333 Fixed trace bugs.
modified:   README
	modified:   interface.c
	modified:   lcradmin.c
	modified:   mISDN.cpp
	modified:   main.c
	modified:   socket_server.c
	modified:   trace.c
	modified:   vbox.cpp
2008-09-14 12:27:11 +02:00
Andreas Eversberg 2ce5c9f92f Corrected error print, if mISDN_dsp.ko module cannot be loaded.
modified:   README
	modified:   bchannel.c
	modified:   mISDN.cpp
	modified:   main.c
2008-09-12 07:43:21 +02:00
Andreas Eversberg b2a665f8f1 Ports can now be specified by number or by name.
Names are shown in state-screen also.

	modified:   README
	modified:   default/interface.conf
	modified:   interface.c
	modified:   interface.h
	modified:   lcradmin.c
	modified:   lcrsocket.h
	modified:   mISDN.cpp
	modified:   mISDN.h
	modified:   main.h
	modified:   socket_server.c
2008-09-07 10:31:58 +02:00
Andreas Eversberg b95114936f changed port attribute to "portnum".
modified:   bchannel.c
	modified:   default/interface.conf
	modified:   interface.c
	modified:   mISDN.cpp
	modified:   route.c
2008-09-06 13:59:48 +02:00
Karsten Keil 7f5c1d1e2e Fix missing argument
open with O_CREATE need 3 args.

Signed-off-by: Karsten Keil <kkeil@suse.de>
2008-09-03 20:57:58 +02:00
Karsten Keil 7740a62116 Fix possible bufferoverflows
strncat(dest,src,n)

The size of dest must  be  at least strlen(dest)+n+1.

Signed-off-by: Karsten Keil <kkeil@suse.de>
2008-09-03 20:57:00 +02:00
Karsten Keil 08aad9a8c5 Fix lot of warnings 2008-09-02 02:02:11 +02:00
Karsten Keil b3974893ba Fix 64bit build 2008-09-01 22:23:01 +02:00
Andreas Eversberg 9939cc6641 Added -fPIC to fix chan_lcr shared object.
modified:   Makefile
2008-08-30 08:55:34 +02:00
Andreas Eversberg b1ab2b9ac1 LCR now runs as a user.
You may change the path of socket and lock files.
LCR admin socket's flags can now be altered to allow access to other users.
Lock and socket files will now be removed when terminating LCR.

	modified:   Makefile
	modified:   chan_lcr.c
	modified:   default/options.conf
	modified:   lcradmin.c
	modified:   lcrsocket.h
	modified:   main.c
	modified:   options.c
	modified:   options.h
	modified:   socket_server.c
2008-08-30 08:24:52 +02:00
Karsten Keil 69fd5e0ae9 Fix conversion string warnings, there are lot more like these. 2008-08-29 13:13:03 +02:00
Peter Schlaile e496175482 chan_lcr: fixed lcr_fixup (compare with chan_misdn for reference)
- oldast is totally unimportant
- we didn't unlock correctly

=> works now :)
Test case: open two lcr channels using a sip phone. Do a transfer between
them.
2008-08-23 09:56:19 +02:00
Peter Schlaile 5e274aa742 chan_lcr: fixed typo, that made rebuffer-mode request a parameter,
that isn't necessary... shame on me :)
2008-08-22 20:09:33 +02:00
Peter Schlaile a9c1ce57ba chan_lcr: this fixes hanging with app_rxfax and a race condition
in lcr_read

(lcr_read was hanging in locked-state forever, when no data was
available, making any further calls impossible.
Now we return a null-packet to asterisk)

Sidenode: you have to use lcr_config(r) to receive faxes correctly.
(app_rxfax seems to rely on 160-byte buffers)
2008-08-22 20:08:43 +02:00
Peter Schlaile 712c4dfdcb removed debug code from last commit 2008-08-21 08:46:28 +02:00
Peter Schlaile b8ff0dae45 chan_lcr: added missing memcpy to bchannel_transmit. HDLC data was not send at all! 2008-08-21 08:45:30 +02:00
schlaile 3a5b34a850 make LCR compile again with latest mISDNuser changes 2008-08-12 16:16:54 +02:00
Super User 9a0197e709 fixed audio preload of tones. this reduces the propability of audio gaps resulting in clicking noise. only if dsp clock and kernel clock shifts away, gaps will happen.
modified:   mISDN.cpp
2008-07-30 19:35:28 +02:00
Super User de8f81a69b make compile with gcc 4.* without warnings. (hopefully with all versions)
modified:   Makefile
	modified:   bchannel.c
	modified:   chan_lcr.h
	modified:   extension.c
	modified:   gentones.c
	modified:   genwave.c
	modified:   joinpbx.cpp
	modified:   tones.c
2008-07-29 19:00:12 +02:00
Super User 2ac0ed4fc4 fixed problem with "Answer" after extension matches.
some cleanups in the makefile.

	modified:   Makefile
	modified:   chan_lcr.c
2008-07-27 10:35:55 +02:00
Super User e5c62aa7cb updated README
modified:   README
2008-07-26 17:44:01 +02:00