Commit Graph

120 Commits

Author SHA1 Message Date
paulc ec4e0f9369 Stop processing early if the external message receiver is dying.
Yield if any message relay is removed to allow it to detect the receiver is dying and return false.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2587 acf43c95-373e-0410-b603-e72c3f656dc1
2009-04-17 13:27:27 +00:00
paulc f2b2e01529 Complain less loud about unmatched messages while the module is disconnecting.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2531 acf43c95-373e-0410-b603-e72c3f656dc1
2009-03-22 21:36:49 +00:00
paulc f51989fc1b Added local setting that controls if channel pointer is set in emitted messages.
A channel creating call.execute message no longer looks up for user data in the waiting messages as it could result in immediate destruction.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2410 acf43c95-373e-0410-b603-e72c3f656dc1
2008-12-23 15:50:13 +00:00
paulc a54cd57e23 Lock waiting message list while cleaning it up.
Increased level of debugging message when needing to clean up waiting list.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2385 acf43c95-373e-0410-b603-e72c3f656dc1
2008-12-02 21:42:10 +00:00
paulc 72f453e88a Cleanup an ExtMessage only if it successfully started up.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2288 acf43c95-373e-0410-b603-e72c3f656dc1
2008-10-24 14:26:51 +00:00
paulc dc67319d01 Made Module::itemComplete public, use it in several more places.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2204 acf43c95-373e-0410-b603-e72c3f656dc1
2008-09-16 15:30:54 +00:00
paulc 55f7cae0f9 Change the mode external module are referenced, fix some abnormalities and crashes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2022 acf43c95-373e-0410-b603-e72c3f656dc1
2008-06-11 14:37:14 +00:00
paulc 85dc0fc7cd Moved restarting dead externals earlier to guarantee autorestart.
Improved debugging and info messages.


git-svn-id: http://yate.null.ro/svn/yate/trunk@1981 acf43c95-373e-0410-b603-e72c3f656dc1
2008-05-13 08:39:12 +00:00
paulc 6fc01e7c92 Added "info" subcommand to show more info about running externals.
Added command line completion for command and subcommands.


git-svn-id: http://yate.null.ro/svn/yate/trunk@1932 acf43c95-373e-0410-b603-e72c3f656dc1
2008-04-17 20:21:01 +00:00
paulc a18a77fd7a Made debug messages a little more verbose and uniformized display order.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1930 acf43c95-373e-0410-b603-e72c3f656dc1
2008-04-17 15:18:54 +00:00
paulc ee59b2d42c Added a list of run instance parameters to the engine, access from extmodule.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1665 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-24 11:43:04 +00:00
paulc 1e690c41e2 Added a way for extmodule to query node name and run id.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1664 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-23 22:08:30 +00:00
paulc 26f073a334 Loop while writing to the output since the socket is non-blocking.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1663 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-23 20:14:18 +00:00
paulc 6fe354c1de Added auto restart capability that can be set by external module.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1539 acf43c95-373e-0410-b603-e72c3f656dc1
2007-12-13 11:33:59 +00:00
paulc b42a894ddc Directory reorder #3
git-svn-id: http://yate.null.ro/svn/yate/trunk@1476 acf43c95-373e-0410-b603-e72c3f656dc1
2007-11-15 23:06:36 +00:00
paulc db1058cc16 Block in creation of new messages until the return of initial call.execute
is noticed and the channel connected. Fixes connect related race issues.


git-svn-id: http://yate.null.ro/svn/yate/trunk@1468 acf43c95-373e-0410-b603-e72c3f656dc1
2007-11-05 19:25:34 +00:00
paulc 3296a0b454 Added "start" and "restart" commands, simplified parsing.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1434 acf43c95-373e-0410-b603-e72c3f656dc1
2007-08-24 15:29:24 +00:00
paulc 7cac19ce8c Added "call.execute" handler priority setting.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1366 acf43c95-373e-0410-b603-e72c3f656dc1
2007-06-19 12:42:27 +00:00
paulc e39385fdd5 Use TelEngine::destruct(obj) or GenObject::destruct() wherever applicable.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1325 acf43c95-373e-0410-b603-e72c3f656dc1
2007-05-15 15:40:50 +00:00
paulc 514c9cfee6 Fixed minor typo.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1318 acf43c95-373e-0410-b603-e72c3f656dc1
2007-05-13 22:37:50 +00:00
paulc 2dea9e1b4d Improved handler installation debugging message.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1317 acf43c95-373e-0410-b603-e72c3f656dc1
2007-05-13 22:36:26 +00:00
paulc 93719a4fcc 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://yate.null.ro/svn/yate/trunk@1076 acf43c95-373e-0410-b603-e72c3f656dc1
2006-10-17 20:40:01 +00:00
paulc 2fc5d19dad Call Socket::setReuse() on the listening sockets.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1041 acf43c95-373e-0410-b603-e72c3f656dc1
2006-09-18 01:30:15 +00:00
paulc 55e98818e6 Added dumb channel to Windows, removed unused variable from extmodule.
git-svn-id: http://yate.null.ro/svn/yate/trunk@917 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-30 22:51:55 +00:00
paulc 7bab87ff1f Reduced spam level on XDEBUG
git-svn-id: http://yate.null.ro/svn/yate/trunk@909 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-28 17:38:16 +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 4a292bd06b Moved all classes in all modules in anonymous namespaces.
Added RTLD_GLOBAL dlopen()ing so symbols exported by libraries loaded by
modules will be available.


git-svn-id: http://yate.null.ro/svn/yate/trunk@813 acf43c95-373e-0410-b603-e72c3f656dc1
2006-05-27 14:53:18 +00:00
paulc 6151a36a63 Added setlocal parameter "reason".
git-svn-id: http://yate.null.ro/svn/yate/trunk@808 acf43c95-373e-0410-b603-e72c3f656dc1
2006-05-25 09:57:45 +00:00
paulc dc2917560c Fixed bug found by Maciek Kaminski.
git-svn-id: http://yate.null.ro/svn/yate/trunk@741 acf43c95-373e-0410-b603-e72c3f656dc1
2006-04-06 17:37:30 +00:00
paulc ec13d8c086 Fixes in Windows
git-svn-id: http://yate.null.ro/svn/yate/trunk@730 acf43c95-373e-0410-b603-e72c3f656dc1
2006-03-30 00:21:37 +00:00
paulc 8ba0ab46b4 Improved the external module - supports connecting on sockets, watching
message answers and option settings.


git-svn-id: http://yate.null.ro/svn/yate/trunk@729 acf43c95-373e-0410-b603-e72c3f656dc1
2006-03-29 23:05:36 +00:00
paulc 7186ae42c3 Fixed compilation on x86_64
git-svn-id: http://yate.null.ro/svn/yate/trunk@715 acf43c95-373e-0410-b603-e72c3f656dc1
2006-03-22 21:25:33 +00:00
paulc 41e0489d65 Increased some buffers to accomodate large text elements.
SDP can be forwarded as-is instead of the parsed version.


git-svn-id: http://yate.null.ro/svn/yate/trunk@681 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-08 16:53:08 +00:00
paulc 637b63217b Changed all internal comments to //
git-svn-id: http://yate.null.ro/svn/yate/trunk@605 acf43c95-373e-0410-b603-e72c3f656dc1
2005-12-14 20:09:08 +00:00
paulc 112f8cc624 Fixed a bug in Regexp match.
Channel IDs are reported in debug messages.
A debug filter can be set on channels.


git-svn-id: http://yate.null.ro/svn/yate/trunk@596 acf43c95-373e-0410-b603-e72c3f656dc1
2005-12-09 21:33:10 +00:00
paulc 394fc6e834 Separated scripts from modules directory.
git-svn-id: http://yate.null.ro/svn/yate/trunk@563 acf43c95-373e-0410-b603-e72c3f656dc1
2005-11-07 03:09:23 +00:00
paulc ec58e83ddd Added parameter filter for installed handlers.
git-svn-id: http://yate.null.ro/svn/yate/trunk@561 acf43c95-373e-0410-b603-e72c3f656dc1
2005-11-07 01:28:12 +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 7162de80d4 Fixes for Windows compilation suggested by Faizan Naqvi (Tili).
Added names for thread priorities.
Fixed the way some channels handle timestamps (broken by the delta->full API change).


git-svn-id: http://yate.null.ro/svn/yate/trunk@536 acf43c95-373e-0410-b603-e72c3f656dc1
2005-10-07 22:03:19 +00:00
paulc 0126e0c86a Added restart command in rmanager and also by signals.
Added a global child reaper to avoid zombies.


git-svn-id: http://yate.null.ro/svn/yate/trunk@530 acf43c95-373e-0410-b603-e72c3f656dc1
2005-09-29 19:34:23 +00:00
paulc 14c3a10eeb Added Stream and File classes, fixed a data related bug in extmodule.
git-svn-id: http://yate.null.ro/svn/yate/trunk@470 acf43c95-373e-0410-b603-e72c3f656dc1
2005-08-06 19:37:31 +00:00
paulc be181f6ae6 Implemented authenticated outgoing SIP calls.
git-svn-id: http://yate.null.ro/svn/yate/trunk@399 acf43c95-373e-0410-b603-e72c3f656dc1
2005-06-12 18:58:17 +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 14da393886 Made compile some modules, added socket address class.
git-svn-id: http://yate.null.ro/svn/yate/trunk@315 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-28 17:40:41 +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 8123c918b2 Moved the engine away, added install-noapi
git-svn-id: http://yate.null.ro/svn/yate/trunk@260 acf43c95-373e-0410-b603-e72c3f656dc1
2005-03-18 18:16:59 +00:00
paulc 704351f1b7 Added new XDebug macro for those messages that generate LOT of output like
in long running loops.
Implemented non-branch transaction matching in SIP.
Fixed handling of multi-tone chan.dtmf messages in PHP.


git-svn-id: http://yate.null.ro/svn/yate/trunk@236 acf43c95-373e-0410-b603-e72c3f656dc1
2005-01-27 21:26:00 +00:00
paulc f8a1595b61 Added final parameter to disconnect. Renamed most messages.
Version header file is generated at configure time. Added soname in library.
Proper handling of DTMF in IAX, H.323 and Zap.


git-svn-id: http://yate.null.ro/svn/yate/trunk@133 acf43c95-373e-0410-b603-e72c3f656dc1
2004-12-21 04:16:09 +00:00
paulc 5e2e0b46fd Changed status format to make it easily parsable by a program.
git-svn-id: http://yate.null.ro/svn/yate/trunk@120 acf43c95-373e-0410-b603-e72c3f656dc1
2004-12-01 14:25:30 +00:00
paulc 3c141c611b Added context jumping and message parameter setting to regexroute.
Added DDebug and NDebug macros to keep down the number of #define.


git-svn-id: http://yate.null.ro/svn/yate/trunk@116 acf43c95-373e-0410-b603-e72c3f656dc1
2004-11-29 21:01:04 +00:00
paulc 656e423474 Added copyright notice.
git-svn-id: http://yate.null.ro/svn/yate/trunk@114 acf43c95-373e-0410-b603-e72c3f656dc1
2004-11-29 03:56:41 +00:00
paulc b64dd554e4 Added a textual disconnect reason - usefull for building proper messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@104 acf43c95-373e-0410-b603-e72c3f656dc1
2004-11-01 12:41:38 +00:00
paulc 767e4dcc23 Fixed major memory leak in threads.
Added automatic restart when no module is busy.


git-svn-id: http://yate.null.ro/svn/yate/trunk@101 acf43c95-373e-0410-b603-e72c3f656dc1
2004-11-01 00:07:00 +00:00
paulc efaa903106 Lots of stability improvments and bug fixes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@91 acf43c95-373e-0410-b603-e72c3f656dc1
2004-10-22 02:45:19 +00:00
paulc 834da3a0eb Implemented stopping and listing external modules.
git-svn-id: http://yate.null.ro/svn/yate/trunk@87 acf43c95-373e-0410-b603-e72c3f656dc1
2004-10-20 00:08:15 +00:00
paulc 345605581b Zap compiles with older, non-NSF capable libpri.
External scripts can be started or stopped from the remote manager.


git-svn-id: http://yate.null.ro/svn/yate/trunk@86 acf43c95-373e-0410-b603-e72c3f656dc1
2004-10-19 22:11:59 +00:00
paulc 5211a08504 Fixed crash in termination of non-channel external programs.
git-svn-id: http://yate.null.ro/svn/yate/trunk@84 acf43c95-373e-0410-b603-e72c3f656dc1
2004-10-19 15:31:20 +00:00
paulc 2b1ff201db Added timestamps to the data channels and external RTP support for h323chan.
git-svn-id: http://yate.null.ro/svn/yate/trunk@68 acf43c95-373e-0410-b603-e72c3f656dc1
2004-09-29 00:15:52 +00:00
diana 0704015cc0 Added IVR support, fixed some bugs.
git-svn-id: http://yate.null.ro/svn/yate/trunk@65 acf43c95-373e-0410-b603-e72c3f656dc1
2004-09-25 18:22:40 +00:00
paulc 6fa61486c0 Fixed some crashes and libiax vulnerabilities in iaxchan.
Fixed same *printf vulnerability in zapchan.
Minor bugfixes in register and regfile.
External module can inherit the user data pointer by copying the message id.


git-svn-id: http://yate.null.ro/svn/yate/trunk@50 acf43c95-373e-0410-b603-e72c3f656dc1
2004-09-10 21:53:59 +00:00
paulc 0b8910bc5a Thread termination more forgiving to long cleanups.
External module fixed - it now works properly in channels.
Non-string parameters of messages are stringified by libyate.php


git-svn-id: http://yate.null.ro/svn/yate/trunk@41 acf43c95-373e-0410-b603-e72c3f656dc1
2004-09-08 15:54:56 +00:00
paulc bfadca02b4 Set proper signal handlers for child processes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@27 acf43c95-373e-0410-b603-e72c3f656dc1
2004-08-23 14:20:07 +00:00
paulc 74fb58051f Solved a nasty pthread problem related to weak symbols.
Improved the PHP library a little.


git-svn-id: http://yate.null.ro/svn/yate/trunk@23 acf43c95-373e-0410-b603-e72c3f656dc1
2004-08-19 22:53:55 +00:00
paulc 63d2c1e091 Minor fixes in external module and tone generator.
New OSS channel by Diana.


git-svn-id: http://yate.null.ro/svn/yate/trunk@12 acf43c95-373e-0410-b603-e72c3f656dc1
2004-06-26 23:10:50 +00:00
paulc b60e5fec2e Allow external modules to take one argument from routing.
git-svn-id: http://yate.null.ro/svn/yate/trunk@11 acf43c95-373e-0410-b603-e72c3f656dc1
2004-06-25 22:03:36 +00:00
paulc fdc485f075 Lots of hacks to handle concurrent destruction. Wish I had smart pointers.
git-svn-id: http://yate.null.ro/svn/yate/trunk@9 acf43c95-373e-0410-b603-e72c3f656dc1
2004-06-06 01:27:21 +00:00
paulc 9b50c3f572 The initial call message is delayed until the external module has forked.
git-svn-id: http://yate.null.ro/svn/yate/trunk@8 acf43c95-373e-0410-b603-e72c3f656dc1
2004-06-06 00:27:50 +00:00
paulc ab85663c64 Codec support, IAX channel
git-svn-id: http://yate.null.ro/svn/yate/trunk@4 acf43c95-373e-0410-b603-e72c3f656dc1
2004-06-03 22:26:29 +00:00
paulc 06959fa99b Fixes that make external module usable. Added codec declaration.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3 acf43c95-373e-0410-b603-e72c3f656dc1
2004-05-24 00:38:23 +00:00
paulc 628070ee2e Imported in new CVS
git-svn-id: http://yate.null.ro/svn/yate/trunk@2 acf43c95-373e-0410-b603-e72c3f656dc1
2004-05-22 00:05:20 +00:00