Commit Graph

108 Commits

Author SHA1 Message Date
paulc d9b07638b6 Made a lot of constructors explicit to prevent undesirable automatic conversions.
Fixed two undesirable automatic conversions exposed by this change.


git-svn-id: http://voip.null.ro/svn/yate@3366 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-08 15:25:05 +00:00
paulc 4ee71ea8b8 Made DataFormat inherit NamedList so it can have arbitrary extra parameters.
git-svn-id: http://voip.null.ro/svn/yate@3279 acf43c95-373e-0410-b603-e72c3f656dc1
2010-05-04 10:21:46 +00:00
paulc 1469b445ca Added names to codec translator factories to aid in debugging.
Try all possible formats when attempting to crate a new chain.
Fixes some missing conversions like speex/32000<->slin.


git-svn-id: http://voip.null.ro/svn/yate@3165 acf43c95-373e-0410-b603-e72c3f656dc1
2010-04-02 14:28:27 +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 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 407bc8cf66 Added a validity check method to DataNode and some descendants.
A DataSource will remove invalid consumers that returned zero.


git-svn-id: http://voip.null.ro/svn/yate@2854 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-23 14:50:51 +00:00
paulc 2d0f41a0e4 Added parameter to ThreadedSource::looping() so it can keep running while it has consumers.
Fixed behavior of wave and tone "override" and "replace" methods.


git-svn-id: http://voip.null.ro/svn/yate@2835 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-14 11:02:27 +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 2f1a5ff2f6 Added flags to data forwarded through DataNodes.
The amount of consumed data is returned to the source.


git-svn-id: http://voip.null.ro/svn/yate@2745 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-02 09:24:33 +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 2b8a5e0614 Made DataSource inherit Mutex instead of having it as a field.
git-svn-id: http://voip.null.ro/svn/yate@2614 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-05 20:49:05 +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 9ba9451343 Made Module::itemComplete public, use it in several more places.
git-svn-id: http://voip.null.ro/svn/yate@2204 acf43c95-373e-0410-b603-e72c3f656dc1
2008-09-16 15:30: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 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 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 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 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 d74dc8bd26 Added static method that computes all transcodings possible from a given
format list.


git-svn-id: http://voip.null.ro/svn/yate@1232 acf43c95-373e-0410-b603-e72c3f656dc1
2007-03-26 17:20:34 +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 fba53dfec5 Implemented an alternative way of destroying a ThreadedSource from the data
pumping thread itself, should fix most threading related problems.


git-svn-id: http://voip.null.ro/svn/yate@1162 acf43c95-373e-0410-b603-e72c3f656dc1
2007-01-12 22:16:38 +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 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 927d5db29a Fixed bug in automatical generation of data timestamps.
git-svn-id: http://voip.null.ro/svn/yate@1030 acf43c95-373e-0410-b603-e72c3f656dc1
2006-09-13 18:52:25 +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 3610c579ab Fixed timestamp jumps when switching between different data sources.
git-svn-id: http://voip.null.ro/svn/yate@910 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-28 17:39:15 +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 ad7f82e9f3 API docs can be built with doxygen. Also cleaned headers to generate
proper documentation.


git-svn-id: http://voip.null.ro/svn/yate@845 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-08 18:31:00 +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 f5fcb270db Rewritten most of the codec chaining logic.
Added wideband and stereo formats and some simple translators.


git-svn-id: http://voip.null.ro/svn/yate@809 acf43c95-373e-0410-b603-e72c3f656dc1
2006-05-25 20:40:58 +00:00
paulc 00b6a8a675 Greatly improved conference, added to some CallEndpoint methods a much
needed option to disable disconnect notifications.


git-svn-id: http://voip.null.ro/svn/yate@726 acf43c95-373e-0410-b603-e72c3f656dc1
2006-03-28 22:10:35 +00:00
paulc 01765ddd2b Added more flexible timer check method in Channel.
git-svn-id: http://voip.null.ro/svn/yate@708 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-28 15:12:12 +00:00
paulc 1e3e20fbba Fixed minor bug that mangled timestamps of 1st and 2nd packets.
git-svn-id: http://voip.null.ro/svn/yate@702 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-24 15:45:35 +00:00
paulc 76cf40333b Fixed minor problem - made Channel::statusParams protected.
git-svn-id: http://voip.null.ro/svn/yate@692 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-17 16:57:22 +00:00
paulc cb99398f55 Added per channel status information retrieval.
git-svn-id: http://voip.null.ro/svn/yate@691 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-17 15:39:36 +00:00
paulc 2d0dad068d Added post-preroute hook.
Abstract tables support in client.


git-svn-id: http://voip.null.ro/svn/yate@672 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-30 20:44:03 +00:00
paulc 34a3743073 Reorganized Module message IDs to make room for Route and Update.
git-svn-id: http://voip.null.ro/svn/yate@662 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-23 15:57:47 +00:00
paulc 9211f29772 Fixed several race and deadlock conditions.
RTPGroup no longer corrupts memory if transports are removed from its own thread.


git-svn-id: http://voip.null.ro/svn/yate@654 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-19 21:13:49 +00:00
paulc 3490d2d891 Refactored locking and list iteration to solve deadlocks and race conditions.
git-svn-id: http://voip.null.ro/svn/yate@639 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-12 05:32:06 +00:00
paulc 6b28b93abd Put Driver's init in a separate method.
git-svn-id: http://voip.null.ro/svn/yate@635 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-09 23:19:36 +00:00