Commit Graph

114 Commits

Author SHA1 Message Date
paulc 49c8f201aa Clear disconnect parameters after retrieving them once.
Being set by the peer we don't want them in our chan.hangup message.


git-svn-id: http://voip.null.ro/svn/yate@4141 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-01 16:06:22 +00:00
paulc e70e1a0110 Return the chan.disconnected from getDisconnected() with the Channel already set as userData.
git-svn-id: http://voip.null.ro/svn/yate@4101 acf43c95-373e-0410-b603-e72c3f656dc1
2011-02-09 11:16:43 +00:00
paulc fa661af327 Automatically copy disconnect parameters to the chan.hangup message.
Provide those parameters to the peer call endpoint when disconnecting it.
Add numeric cause_q931 to disconnect params of h323chan.


git-svn-id: http://voip.null.ro/svn/yate@4052 acf43c95-373e-0410-b603-e72c3f656dc1
2011-01-21 10:21:01 +00:00
paulc a2102dfbf1 Emit a chan.connected notification message when a Channel was just connected.
git-svn-id: http://voip.null.ro/svn/yate@3755 acf43c95-373e-0410-b603-e72c3f656dc1
2010-10-26 15:48:36 +00:00
paulc 33a98e83aa Added Channel::initChan() method to add the channel to the driver explicitely, after the object is fully constructed.
git-svn-id: http://voip.null.ro/svn/yate@3033 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-26 10:31:32 +00:00
paulc 717a87c5af Reduced contention on mutex in CallEndpoint::getPeerId() when there is no peer.
Report the name of the thread holding CallEndpoint::commonMutex() locked.


git-svn-id: http://voip.null.ro/svn/yate@3023 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-16 21:04:08 +00:00
paulc 5950cdd9df Modified the CallEndpoint::getPeerId() API so it copies the string while holding CallEndpoint::commonMutex().
git-svn-id: http://voip.null.ro/svn/yate@3019 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-14 00:01:38 +00:00
paulc 657bfc063c Apply "maxcall" and "timeout" parameters on the "chan.control" message.
git-svn-id: http://voip.null.ro/svn/yate@2995 acf43c95-373e-0410-b603-e72c3f656dc1
2009-12-20 15:17:37 +00:00
paulc 455b6dbf81 Automatically reset the maxcall timer when entering "answered" status.
git-svn-id: http://voip.null.ro/svn/yate@2991 acf43c95-373e-0410-b603-e72c3f656dc1
2009-12-18 19:08:41 +00:00
paulc 2ebf04b2a3 The worker thread of ThreadedSource now keeps it referenced.
New methods of DataEndpoint, CallEndpoint and ThreadedSource allow easier handling of concurrent operations.
Modules using ThreadedSource were modified to use the new API.


git-svn-id: http://voip.null.ro/svn/yate@2827 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-07 23:49:12 +00:00
paulc 51e203934c When masquerading a call.answered message change the status but don't call status() that would set the isAnswered() flag and prevent a call.answered in the other direction from working.
git-svn-id: http://voip.null.ro/svn/yate@2787 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-12 15:31:05 +00:00
paulc 09b07f4b00 Added Semaphore class, made Mutex derive from (new class) Lockable, made Lock able to get a lock on any Lockable - Mutex or Semaphore.
Use pthread_mutex_timedlock and sem_timedwait if available on platform.
Fixed a bug in the IAX channel exposed by Mutex having virtual methods.


git-svn-id: http://voip.null.ro/svn/yate@2761 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-22 12:57:14 +00:00
paulc c163a762f9 Clear the DataEndpoint's owner early, do not assume the CallEndpoint will still be valid when the DataEndpoint is finally destroyed.
git-svn-id: http://voip.null.ro/svn/yate@2634 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-20 12:30:57 +00:00
paulc 5227505c00 Added names to the Mutex class to ease debugging of deadlocks.
git-svn-id: http://voip.null.ro/svn/yate@2611 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-05 12:25:31 +00:00
paulc cb2e516f13 Do not handle Progress, Ringing or Answered messages by channels that are already answered.
git-svn-id: http://voip.null.ro/svn/yate@2562 acf43c95-373e-0410-b603-e72c3f656dc1
2009-04-02 15:52:21 +00:00
paulc c546face0d Added channel disconnect parameter list and methods to use them.
git-svn-id: http://voip.null.ro/svn/yate@2549 acf43c95-373e-0410-b603-e72c3f656dc1
2009-03-29 18:11:54 +00:00
paulc 14e16c86d7 Added a static helper method to complete one item, use it where applicable.
git-svn-id: http://voip.null.ro/svn/yate@2202 acf43c95-373e-0410-b603-e72c3f656dc1
2008-09-16 13:30:04 +00:00
paulc 9439ffcb52 Added the basic IM related messages.
git-svn-id: http://voip.null.ro/svn/yate@2147 acf43c95-373e-0410-b603-e72c3f656dc1
2008-08-06 17:21:44 +00:00
paulc 08b2064e3d Merged branches/marian/client up to rev. 2134.
git-svn-id: http://voip.null.ro/svn/yate@2135 acf43c95-373e-0410-b603-e72c3f656dc1
2008-08-04 02:06:00 +00:00
paulc 5028b01139 Added capability to route to "line/..." no matter what protocol it uses.
Added driver method to query the existence of a line, use it in routing.


git-svn-id: http://voip.null.ro/svn/yate@2073 acf43c95-373e-0410-b603-e72c3f656dc1
2008-07-16 09:48:49 +00:00
marian 183356fdf1 Added channel data to keep the last connected peer id.
git-svn-id: http://voip.null.ro/svn/yate@2052 acf43c95-373e-0410-b603-e72c3f656dc1
2008-07-04 07:51:44 +00:00
paulc d46fd8f5e1 Duplicate detector now ignores the last DTMF method after 4 seconds.
git-svn-id: http://voip.null.ro/svn/yate@1956 acf43c95-373e-0410-b603-e72c3f656dc1
2008-04-28 16:54:03 +00:00
paulc 8554e1a45b Made DTMF duplicate dropping messages a little more visible.
git-svn-id: http://voip.null.ro/svn/yate@1955 acf43c95-373e-0410-b603-e72c3f656dc1
2008-04-25 13:23:43 +00:00
paulc f04087500c Added capability to mark or block duplicate DTMFs detected by different methods.
git-svn-id: http://voip.null.ro/svn/yate@1954 acf43c95-373e-0410-b603-e72c3f656dc1
2008-04-25 13:11:49 +00:00
paulc 01fc9de725 Disallow installing relays at priority zero.
git-svn-id: http://voip.null.ro/svn/yate@1939 acf43c95-373e-0410-b603-e72c3f656dc1
2008-04-23 12:54:20 +00:00
paulc 2fb90309a6 Apply the "timeout" parameter if available.
git-svn-id: http://voip.null.ro/svn/yate@1897 acf43c95-373e-0410-b603-e72c3f656dc1
2008-04-14 09:40:48 +00:00
paulc f645a91c11 Made custom relay installer protected so it can be used for private messages.
git-svn-id: http://voip.null.ro/svn/yate@1697 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-28 17:24:55 +00:00
paulc a2e2e8a270 Added methods to remove just one message relay from module.
git-svn-id: http://voip.null.ro/svn/yate@1683 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-27 10:04:42 +00:00
paulc 8fd3986742 Custom message relays can be installed in Modules, relays can be uninstalled.
git-svn-id: http://voip.null.ro/svn/yate@1682 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-26 20:43:05 +00:00
paulc ef8140fccf Added capability for plugins to request early init order.
git-svn-id: http://voip.null.ro/svn/yate@1496 acf43c95-373e-0410-b603-e72c3f656dc1
2007-11-26 23:56:37 +00:00
paulc 051f6c1c7a The "peerid" takes precedence over "targetid". Masquerading rules are applied
before the message is completed.


git-svn-id: http://voip.null.ro/svn/yate@1385 acf43c95-373e-0410-b603-e72c3f656dc1
2007-07-05 11:39:43 +00:00
paulc 1a79d8b770 Changed the unlocking order to prevent races. Perform cleanups in the
destroyed() method instead of the destructor.


git-svn-id: http://voip.null.ro/svn/yate@1357 acf43c95-373e-0410-b603-e72c3f656dc1
2007-06-08 18:33:33 +00:00
paulc b4350bddd5 Use TelEngine::destruct(obj) or GenObject::destruct() wherever applicable.
git-svn-id: http://voip.null.ro/svn/yate@1325 acf43c95-373e-0410-b603-e72c3f656dc1
2007-05-15 15:40:50 +00:00
paulc 1813f9adba Removed Driver::msgStatus() since was identical to the base class Module.
git-svn-id: http://voip.null.ro/svn/yate@1311 acf43c95-373e-0410-b603-e72c3f656dc1
2007-05-12 13:41:50 +00:00
paulc 18cb09b371 Added method to copy multiple parameters from a list of names.
git-svn-id: http://voip.null.ro/svn/yate@1310 acf43c95-373e-0410-b603-e72c3f656dc1
2007-05-12 13:27:44 +00:00
paulc 0e6b8e285b Removed extra timeout checks, checkTimers() does all verifications.
git-svn-id: http://voip.null.ro/svn/yate@1214 acf43c95-373e-0410-b603-e72c3f656dc1
2007-03-12 18:13:56 +00:00
paulc 2c107549b3 Minor typo not catched by gcc (weird...)
git-svn-id: http://voip.null.ro/svn/yate@1208 acf43c95-373e-0410-b603-e72c3f656dc1
2007-03-01 17:15:09 +00:00
paulc 8b31673e8a Minor optimisation, avoid copying one string over and over.
git-svn-id: http://voip.null.ro/svn/yate@1207 acf43c95-373e-0410-b603-e72c3f656dc1
2007-03-01 17:14:03 +00:00
paulc a6ba6bffc5 Added capability to copy parameters from call.execute to outgoing channel's
chan.startup (and from there to call.cdr).


git-svn-id: http://voip.null.ro/svn/yate@1174 acf43c95-373e-0410-b603-e72c3f656dc1
2007-01-23 00:17:11 +00:00
paulc 3bf374738d Added method to inject a foreign DataEndpoint into a CallEndpoint.
git-svn-id: http://voip.null.ro/svn/yate@1149 acf43c95-373e-0410-b603-e72c3f656dc1
2006-12-22 16:48:51 +00:00
paulc 34e84e83a0 Added DTMF sequence number so that reordering can be detected.
Added post-masquerade handler, by default updates channel state on call
progress, ringing and answered - should fix bug #54.3 globally.


git-svn-id: http://voip.null.ro/svn/yate@1140 acf43c95-373e-0410-b603-e72c3f656dc1
2006-12-19 17:48:57 +00:00
paulc b789332037 Try to match peerid if targetid does not match.
git-svn-id: http://voip.null.ro/svn/yate@1105 acf43c95-373e-0410-b603-e72c3f656dc1
2006-11-08 23:16:28 +00:00
paulc e093e287ca Character mode telnet server allows for interactive line edit.
Support for line completion on TAB key.
The Windows telnet client should be happy with line endings.


git-svn-id: http://voip.null.ro/svn/yate@1076 acf43c95-373e-0410-b603-e72c3f656dc1
2006-10-17 20:40:01 +00:00
paulc 5d2740c949 Added almost uniform debug details in all Module derived classes.
Implemented "status overview" in all modules.


git-svn-id: http://voip.null.ro/svn/yate@1055 acf43c95-373e-0410-b603-e72c3f656dc1
2006-09-26 09:54:11 +00:00
paulc 548fc71d68 Status can provide just an overview, without channel details.
git-svn-id: http://voip.null.ro/svn/yate@1054 acf43c95-373e-0410-b603-e72c3f656dc1
2006-09-26 09:12:17 +00:00
paulc dbcc8c9fce Added support for multiple data sniffers.
git-svn-id: http://voip.null.ro/svn/yate@1021 acf43c95-373e-0410-b603-e72c3f656dc1
2006-09-08 09:50:19 +00:00
paulc 4ef15a6ee1 Removed confusing warning message.
git-svn-id: http://voip.null.ro/svn/yate@891 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-20 21:49:35 +00:00
paulc d25f94c71f Moved isE164() in common telephony functions.
git-svn-id: http://voip.null.ro/svn/yate@855 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-10 17:35:56 +00:00
paulc 3a1938c2c7 Updated copyright and FSF address.
git-svn-id: http://voip.null.ro/svn/yate@815 acf43c95-373e-0410-b603-e72c3f656dc1
2006-05-27 15:08:43 +00:00
paulc cfcf26c842 Added check to prevent connection to itself.
git-svn-id: http://voip.null.ro/svn/yate@791 acf43c95-373e-0410-b603-e72c3f656dc1
2006-05-16 16:49:34 +00:00