Commit Graph

58 Commits

Author SHA1 Message Date
marian a27e7f1b9e Added support to track message enqueue/dispatch time. Added support to track the time spent by a message in handler.
git-svn-id: http://yate.null.ro/svn/yate/trunk@6513 acf43c95-373e-0410-b603-e72c3f656dc1
2021-08-16 08:02:49 +00:00
marian 17f46a9ce1 Added support to set a Regexp in message handler filter.
git-svn-id: http://yate.null.ro/svn/yate/trunk@6425 acf43c95-373e-0410-b603-e72c3f656dc1
2020-09-22 11:25:41 +00:00
paulc 27de15bc48 Fixed compile time bugs and warnings exposed by Visual Studio.
git-svn-id: http://yate.null.ro/svn/yate/trunk@6256 acf43c95-373e-0410-b603-e72c3f656dc1
2017-09-07 15:29:32 +00:00
paulc 81eb63826e Added computation and congestion limit for average dequeued messages age.
git-svn-id: http://yate.null.ro/svn/yate/trunk@6217 acf43c95-373e-0410-b603-e72c3f656dc1
2017-05-15 15:28:47 +00:00
paulc 887e0cd860 Fixed a JS deadlock caused by uninstalling a message handler from itself (even indirectly).
This required exposing some internal methods of MessageHandler.


git-svn-id: http://yate.null.ro/svn/yate/trunk@6173 acf43c95-373e-0410-b603-e72c3f656dc1
2017-01-23 19:53:55 +00:00
paulc e5a8a16f1d Added setting to automatically enter congested mode over a queue size threshold.
Added access to Engine's call accept state from Javascript and regexroute.
Optimized MessageDispatcher::messageCount() using the enqueue / dequeue counters.


git-svn-id: http://yate.null.ro/svn/yate/trunk@6163 acf43c95-373e-0410-b603-e72c3f656dc1
2017-01-09 15:04:04 +00:00
paulc a77f38aaed Added message queue and dispatcher stats to the "status engine" response.
git-svn-id: http://yate.null.ro/svn/yate/trunk@6158 acf43c95-373e-0410-b603-e72c3f656dc1
2016-12-29 15:10:30 +00:00
paulc 37a72e4bc1 Added copyright notices to sources and scripts missing them.
Updated copyright notices for 2014.
Fixed end of lines in many files.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5755 acf43c95-373e-0410-b603-e72c3f656dc1
2014-02-05 11:42:17 +00:00
paulc 76fdb5ce75 Added support for counting allocated objects for memory leaks troubleshooting.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5752 acf43c95-373e-0410-b603-e72c3f656dc1
2014-02-04 16:36:23 +00:00
paulc cf5d0fd71a Changed license terms in each source file to reference an external file.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5609 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-06 13:38:10 +00:00
paulc d5a5d0f8f3 Fixed several race conditions in message post-dispatch hooks and extmodule watchers.
Engine status now reports the number of post-dispatch hooks installed.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5458 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 14:17:31 +00:00
andrei ef6d1f89ae Added MessageHook and MessageQueue classes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5455 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 13:54:55 +00:00
paulc 3b49b78ecb Added a shared static list of Atom strings and an YATOM macro.
This speeds up signifficantly the Yate RTTI on compilers that HAVE_BLOCK_RETURN.
Made the String comparison operator inline to shave off a few cycles.
Fast handle the comparison in identity case.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5449 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 13:19:14 +00:00
paulc 53e27dafbd No longer compile out message performance checking, it can be fully disabled at runtime.
Fixed the display of message performance warning and made it similar to sniffer.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5447 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 12:58:04 +00:00
paulc a67b9f560b Fixed a crash caused by removing the last handler from within a message handler.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5142 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-21 12:36:31 +00:00
paulc da4ff77c26 Add the handler's name to "handlers" before calling the handler.
This reduces confusion for reentrant messages (lateroute).


git-svn-id: http://yate.null.ro/svn/yate/trunk@5113 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-13 08:23:50 +00:00
paulc 4992e68d53 Add :priority to track name even if priority is zero.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5112 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-13 07:29:43 +00:00
paulc bf57830c7f Added possibility to track message progress through handlers.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5107 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-12 23:47:01 +00:00
paulc fa0269ba4f New YSTRING macro that creates an ad-hoc static const String to speed up comparations and conversions from literal strings.
On unsupported compilers the literal string is returned unchanged.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4423 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-03 12:26:53 +00:00
paulc 91ca986d14 Added a broadcast flag to class Message so it can continue dispatching even if one of the handlers returned true.
Use the broadcast flag in the messages emitted by the engine.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3384 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-16 11:42:52 +00:00
paulc b4d67b1951 Backstep when a jump is needed in the handler list since the scanning loop will move to the next handler.
Should fix some hard to explain missed handler calls.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2758 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-14 13:33:02 +00:00
paulc 85da36395b Added names to the Mutex class to ease debugging of deadlocks.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2611 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-05 12:25:31 +00:00
paulc 1aefd3f093 Wait for a message handler to become safe to destroy when uninstalling it.
Make MessageRelay become safe early so it can be uninstalled from its receiver.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2581 acf43c95-373e-0410-b603-e72c3f656dc1
2009-04-15 10:05:25 +00:00
paulc 22dd033927 Improved debugging mode messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2579 acf43c95-373e-0410-b603-e72c3f656dc1
2009-04-14 20:06:48 +00:00
paulc ade53f8424 Fixed String::msgUnescape to always unescape "%z" as ":" since msgEscape
always escapes the other way around.


git-svn-id: http://yate.null.ro/svn/yate/trunk@1369 acf43c95-373e-0410-b603-e72c3f656dc1
2007-06-21 12:47:56 +00:00
paulc 6be659a835 Message handlers are removed from dispatcher before being destroyed.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1220 acf43c95-373e-0410-b603-e72c3f656dc1
2007-03-19 21:05:41 +00:00
paulc cda2d9f1c2 Updated copyright and FSF address.
git-svn-id: http://yate.null.ro/svn/yate/trunk@815 acf43c95-373e-0410-b603-e72c3f656dc1
2006-05-27 15:08:43 +00:00
paulc d9ec2f62a3 Added configuration parameter for excessive message dispatch time.
git-svn-id: http://yate.null.ro/svn/yate/trunk@739 acf43c95-373e-0410-b603-e72c3f656dc1
2006-04-04 15:39:54 +00:00
paulc 58b9faac12 Added copy constructors for NamedList and Message
git-svn-id: http://yate.null.ro/svn/yate/trunk@696 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-21 14:56:39 +00:00
paulc 5bc18c7a40 Added a virtual destructor to please the compilers.
git-svn-id: http://yate.null.ro/svn/yate/trunk@694 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-19 01:24:03 +00:00
paulc 4d6ee9d16b Avoiding a potential performance loss in unused message notifiers.
git-svn-id: http://yate.null.ro/svn/yate/trunk@678 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-02 14:15:29 +00:00
paulc 6ea652118b Asynchronous processing of messages by using notifiers.
git-svn-id: http://yate.null.ro/svn/yate/trunk@677 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-01 22:45:43 +00:00
paulc abbd686624 Fixed userData to no longer hold pointers to dead objects.
git-svn-id: http://yate.null.ro/svn/yate/trunk@660 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-20 18:39:31 +00:00
paulc ea013542b3 Fixed interlocking problem in message post-hook.
Fixed transport cleanup in RTP session.


git-svn-id: http://yate.null.ro/svn/yate/trunk@627 acf43c95-373e-0410-b603-e72c3f656dc1
2005-12-30 17:45:30 +00:00
paulc d8c52bc7bc Added common pre-answer timeout in class Channel.
Fixed bugs in disconnecting wave sources.
Added option settings for external modules.


git-svn-id: http://yate.null.ro/svn/yate/trunk@559 acf43c95-373e-0410-b603-e72c3f656dc1
2005-11-04 19:30:47 +00:00
paulc 0de5e0f4cd Fixed a bug in parsing message time from external modules.
Better time display in message sniffer.


git-svn-id: http://yate.null.ro/svn/yate/trunk@556 acf43c95-373e-0410-b603-e72c3f656dc1
2005-11-02 04:10:15 +00:00
paulc 8ad4bd1b78 Changed escaping of message strings to always escape colon.
Proper passing of SIP dialog tags to custom handlers.


git-svn-id: http://yate.null.ro/svn/yate/trunk@511 acf43c95-373e-0410-b603-e72c3f656dc1
2005-09-13 16:11:30 +00:00
paulc 78622ce308 Added engine restart method, increased message warn time.
git-svn-id: http://yate.null.ro/svn/yate/trunk@465 acf43c95-373e-0410-b603-e72c3f656dc1
2005-07-29 23:32:19 +00:00
paulc f64ca1875c Removed old Gtk-1 and Qt clients, added hashed lists.
git-svn-id: http://yate.null.ro/svn/yate/trunk@447 acf43c95-373e-0410-b603-e72c3f656dc1
2005-07-15 20:48:06 +00:00
paulc be9c3cabb4 Fixed DirectSound and OpenH323 modules for Windows.
git-svn-id: http://yate.null.ro/svn/yate/trunk@440 acf43c95-373e-0410-b603-e72c3f656dc1
2005-07-09 18:27:49 +00:00
paulc bf510d7445 Added counts for dispatcher handlers and messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@389 acf43c95-373e-0410-b603-e72c3f656dc1
2005-06-07 16:12:25 +00:00
paulc b52a90a618 Updated copyright years, fixed %ll formatting.
git-svn-id: http://yate.null.ro/svn/yate/trunk@320 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-29 22:05:07 +00:00
paulc 2a2dae6466 *** empty log message ***
git-svn-id: http://yate.null.ro/svn/yate/trunk@308 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-24 01:08:51 +00:00
paulc a23541f40d *** empty log message ***
git-svn-id: http://yate.null.ro/svn/yate/trunk@306 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-23 19:33:37 +00:00
paulc 11fedca824 Ported bugfixes and timestamps from 0.8
git-svn-id: http://yate.null.ro/svn/yate/trunk@304 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-22 20:07:26 +00:00
paulc 6fae685e7e no message
git-svn-id: http://yate.null.ro/svn/yate/trunk@294 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-14 03:14:20 +00:00
paulc 8db5c6f0d4 no message
git-svn-id: http://yate.null.ro/svn/yate/trunk@283 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-10 21:42:49 +00:00
paulc 60ec9fec0b Added VC++6 projects and lots of porting changes
git-svn-id: http://yate.null.ro/svn/yate/trunk@272 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-02 00:49:38 +00:00
paulc a6d115c986 Workin' hard - lots'o'changes
git-svn-id: http://yate.null.ro/svn/yate/trunk@266 acf43c95-373e-0410-b603-e72c3f656dc1
2005-03-28 22:27:26 +00:00
paulc e14d74a073 *** empty log message ***
git-svn-id: http://yate.null.ro/svn/yate/trunk@265 acf43c95-373e-0410-b603-e72c3f656dc1
2005-03-28 00:58:26 +00:00