From brian at freeswitch.org Wed Jul 1 06:37:39 2009 From: brian at freeswitch.org (Brian West) Date: Wed, 1 Jul 2009 08:37:39 -0500 Subject: [Freeswitch-dev] Fwd: [UniMRCP] PocketSphinx Plugin Available References: <38406.33226.qm@web111316.mail.gq1.yahoo.com> Message-ID: <5FBF1AE5-62B7-4025-A264-1C0E513EEA7C@freeswitch.org> I'm about to wire Arsen the donated money for his work. Remember if you haven't sent me what you have said you would send in please paypal brian at freeswitch.org so I can wire it to Arsen. Thanks, Brian Begin forwarded message: > I would like to announce the availability of PocketSphinx ASR plugin > for UniMRCP server. > > PocketSphinx UniMRCP server can be used with an MRCP compliant > client, which supports JSGF grammar. > Currently supported ASR features are as follows: > > Methods: > DEFINE-GRAMMAR > RECOGNIZE > GET-RESULT > START-INPUT-TIMERS > STOP > Events: > START-OF-INPUT > RECOGNITION-COMPLETE > Headers: > Noinput-Timeout > Recognition-Timeout > Completion-Cause > Completion-Reason > Save-Waveform > Grammar: JSGF > > For the instructions on how to build and configure PocketSphinx with > UniMRCP refer to > http://code.google.com/p/unimrcp/wiki/PocketSphinxPlugin > > Please note, everything is working now, nevertheless this is basic > availability only. > I have mostly tested the integrated solution in the following setup > SipPhone -> FreeSWITCH/UniMRCPClient -> UniMRCPServer/PocketSphinx > > However it requires further testing in different environments from > different speakers, e.t.c. > In other words, your feedback is welcome. > > Thanks, > -- > Arsen Chaloyan > The author of UniMRCP > http://www.unimrcp.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090701/3ef320b1/attachment.html From shaheryarkh at googlemail.com Wed Jul 1 14:04:34 2009 From: shaheryarkh at googlemail.com (Muhammad Shahzad) Date: Thu, 2 Jul 2009 03:04:34 +0600 Subject: [Freeswitch-dev] G723 timer problem Message-ID: Hi, I am using FS svn revision 14046 and trying to send call from SIP Dialer to a SIP gateway using G723 in passthrough mode. Everything works perfect and destination rings but then call drops with following error on FS CLI, 2009-07-02 02:39:28.790508 [WARNING] mod_sofia.c:807 We were told to use ptime 30 but what they meant to say was 60 This issue has so far been identified to happen on the following broken platforms/devices: Linksys/Sipura aka Cisco ShoreTel Sonus/L3 We will try to fix it but some of the devices on this list are so broken who knows what will happen.. 2009-07-02 02:39:28.790508 [WARNING] switch_core_codec.c:499 Codec G723 Exists but not at the desired implementation. 8000hz 60ms Is there any work around for this or i have downgrade my server back to Asterisk. :'-( Thank you. -- Muhammad Shahzad ----------------------------------- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +92 334 422 40 88 MSN: shari_786pk at hotmail.com Email: shaheryarkh at googlemail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090702/45c95653/attachment.html From brian at freeswitch.org Wed Jul 1 14:13:00 2009 From: brian at freeswitch.org (Brian West) Date: Wed, 1 Jul 2009 16:13:00 -0500 Subject: [Freeswitch-dev] [Freeswitch-users] G723 timer problem In-Reply-To: References: Message-ID: You have two choices... set codec neg. to scrooge or get a provider that doesn't lie about the ptime in their SDP. /b On Jul 1, 2009, at 4:04 PM, Muhammad Shahzad wrote: > Hi, > > I am using FS svn revision 14046 and trying to send call from SIP > Dialer to a SIP gateway using G723 in passthrough mode. Everything > works perfect and destination rings but then call drops with > following error on FS CLI, > > > 2009-07-02 02:39:28.790508 [WARNING] mod_sofia.c:807 We were told to > use ptime 30 but what they meant to say was 60 > This issue has so far been identified to happen on the following > broken platforms/devices: > Linksys/Sipura aka Cisco > ShoreTel > Sonus/L3 > We will try to fix it but some of the devices on this list are so > broken who knows what will happen.. > 2009-07-02 02:39:28.790508 [WARNING] switch_core_codec.c:499 Codec > G723 Exists but not at the desired implementation. 8000hz 60ms > > > Is there any work around for this or i have downgrade my server back > to Asterisk. :'-( > > Thank you. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090701/00663137/attachment.html From brian at freeswitch.org Wed Jul 1 14:29:55 2009 From: brian at freeswitch.org (Brian West) Date: Wed, 1 Jul 2009 16:29:55 -0500 Subject: [Freeswitch-dev] [Freeswitch-users] G723 timer problem In-Reply-To: References: Message-ID: <97A687D1-E73F-4743-A83C-FF94BB61F211@freeswitch.org> I'm sorry about my response... I had overlooked that I only did one 30ms implementation in mod_g723_1.c, Anthony added some more to the list so it might actually work correctly. Thanks, Brian On Jul 1, 2009, at 4:04 PM, Muhammad Shahzad wrote: > Hi, > > I am using FS svn revision 14046 and trying to send call from SIP > Dialer to a SIP gateway using G723 in passthrough mode. Everything > works perfect and destination rings but then call drops with > following error on FS CLI, > > > 2009-07-02 02:39:28.790508 [WARNING] mod_sofia.c:807 We were told to > use ptime 30 but what they meant to say was 60 > This issue has so far been identified to happen on the following > broken platforms/devices: > Linksys/Sipura aka Cisco > ShoreTel > Sonus/L3 > We will try to fix it but some of the devices on this list are so > broken who knows what will happen.. > 2009-07-02 02:39:28.790508 [WARNING] switch_core_codec.c:499 Codec > G723 Exists but not at the desired implementation. 8000hz 60ms > > > Is there any work around for this or i have downgrade my server back > to Asterisk. :'-( > > Thank you. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090701/2c3a02f2/attachment-0001.html From anthony.minessale at gmail.com Wed Jul 1 14:30:12 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Wed, 1 Jul 2009 16:30:12 -0500 Subject: [Freeswitch-dev] [Freeswitch-users] G723 timer problem In-Reply-To: References: Message-ID: <191c3a030907011430r47f8a903s4e268702650767db@mail.gmail.com> try revision 14095 or higher. This adds the ability to use g723 at 60ms, If this does not work, set the param rtp-autofix-timing to true in your sip profile. On Wed, Jul 1, 2009 at 4:13 PM, Brian West wrote: > You have two choices... set codec neg. to scrooge or get a provider that > doesn't lie about the ptime in their SDP. > /b > > On Jul 1, 2009, at 4:04 PM, Muhammad Shahzad wrote: > > Hi, > > I am using FS svn revision 14046 and trying to send call from SIP Dialer to > a SIP gateway using G723 in passthrough mode. Everything works perfect and > destination rings but then call drops with following error on FS CLI, > > > 2009-07-02 02:39:28.790508 [WARNING] mod_sofia.c:807 We were told to use > ptime 30 but what they meant to say was 60 > This issue has so far been identified to happen on the following broken > platforms/devices: > Linksys/Sipura aka Cisco > ShoreTel > Sonus/L3 > We will try to fix it but some of the devices on this list are so broken > who knows what will happen.. > 2009-07-02 02:39:28.790508 [WARNING] switch_core_codec.c:499 Codec G723 > Exists but not at the desired implementation. 8000hz 60ms > > > Is there any work around for this or i have downgrade my server back to > Asterisk. :'-( > > Thank you. > > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090701/07f4bd21/attachment.html From jalsot at gmail.com Wed Jul 1 15:52:44 2009 From: jalsot at gmail.com (Tamas) Date: Thu, 02 Jul 2009 00:52:44 +0200 Subject: [Freeswitch-dev] crash running the core twice in one process Message-ID: <4A4BE8BC.3060903@gmail.com> Hello, I'm trying to embed FS in a C application where I should have to restart the whole stuff (core) in one process/thread, however it crashes. I assume, something is not freed up before the new startup. I've used mrene's fshost example to reproduce the issue: Index: contrib/mrene/fshost/main.c =================================================================== --- contrib/mrene/fshost/main.c (revision 14092) +++ contrib/mrene/fshost/main.c (working copy) -82,7 +82,34 @@ ret = system(buf); } + + + /* Here I start my 2nd start */ + + /* Initialize libs & globals */ + printf("Initializing globals...\n"); + switch_core_setrlimits(); + switch_core_set_globals(); + /* If you need to override configuration directories, you need to change them in the SWITCH_GLOBAL_dirs global structure */ + printf("Initializing core...\n"); + /* Initialize the core and load modules, that will startup FS completely */ + if (switch_core_init_and_modload(flags, console, &err) != SWITCH_STATUS_SUCCESS) { + fprintf(stderr, "Failed to initialize FreeSWITCH's core: %s\n", err); + return 1; + } + + printf("Everything OK, Entering runtime loop.\n"); + + fflush(stdout); + + /* Go into the runtime loop. If the argument is true, this basically sets runtime.running = 1 and loops while that is set + * If its false, it initializes the libedit for the console, then does the same thing + */ + switch_core_runtime_loop(!console); + + /* When the runtime loop exits, its time to shutdown */ + destroy_status = switch_core_destroy(); return ret; } -95,4 +122,4 @@ * End: * For VIM: * vim:set softtabstop=4 shiftwidth=4 tabstop=4: - */ \ No newline at end of file + */ Here are some gdb backtraces: (gdb) bt #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, data=0x12b4b60) at misc/apr_queue.c:215 #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, data=0x12b4b60) at src/switch_apr.c:931 #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, obj=0x12b8398) at src/switch_event.c:305 #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at threadproc/unix/thread.c:138 #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 #6 0x0000000000000000 in ?? () (gdb) bt full #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, data=0x12b4b60) at misc/apr_queue.c:215 rv = 0 #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, data=0x12b4b60) at src/switch_apr.c:931 s = 0 #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, obj=0x12b8398) at src/switch_event.c:305 pop = 0x12b4b60 event = 0x12b4b60 queue = 0x12b8398 index = 0 my_id = 0 __func__ = "switch_event_thread" #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at threadproc/unix/thread.c:138 thread = 0x1663a98 #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 No symbol table info available. #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 No symbol table info available. #6 0x0000000000000000 in ?? () No symbol table info available. (gdb) thread apply all bt Thread 5 (Thread 31286): #0 0x00007fb41892c742 in select () from /lib/libc.so.6 #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/time.c:246 #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/switch_time.c:109 #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at src/switch_time.c:178 #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, obj=0x0) at src/switch_core_memory.c:531 #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at threadproc/unix/thread.c:138 #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 #8 0x0000000000000000 in ?? () Thread 4 (Thread 31264): #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from /lib/libpthread.so.0 #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/libpthread.so.0 #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from /lib/libpthread.so.0 #3 0x00007fb418ca12de in apr_thread_mutex_unlock (mutex=0x12b83d8) at locks/unix/thread_mutex.c:121 #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, data=0x12b4b60) at misc/apr_queue.c:242 #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, data=0x12b4b60) at src/switch_apr.c:931 #6 0x00007fb418c3dfe8 in switch_event_fire_detailed (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 "switch_xml_open_root", line=1918, event=0x7fff211d0a58, user_data=0x0) at src/switch_event.c:1128 #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', err=0x7fff211d1110) at src/switch_xml.c:1918 #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, err=0x7fff211d1110) at src/switch_xml.c:1945 #9 0x00007fb418c2d78f in switch_core_init (flags=1, console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at main.c:97 Thread 3 (Thread 31288): #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, mutex=0x14dbab8) at locks/unix/thread_cond.c:68 #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, data=0x7fb41676c0b8) at misc/apr_queue.c:276 #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, data=0x7fb41676c0b8) at src/switch_apr.c:902 #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, obj=0x14dba78) at src/switch_event.c:289 #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at threadproc/unix/thread.c:138 #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 #8 0x0000000000000000 in ?? () Thread 2 (Thread 31289): #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, mutex=0x159fac8) at locks/unix/thread_cond.c:68 #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, data=0x7fb4167a80b8) at misc/apr_queue.c:276 #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, data=0x7fb4167a80b8) at src/switch_apr.c:902 #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, obj=0x159fa88) at src/switch_event.c:289 #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at threadproc/unix/thread.c:138 #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 #8 0x0000000000000000 in ?? () Thread 1 (Thread 31287): #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, data=0x12b4b60) at misc/apr_queue.c:215 #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, data=0x12b4b60) at src/switch_apr.c:931 #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, obj=0x12b8398) at src/switch_event.c:305 #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at threadproc/unix/thread.c:138 #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 #6 0x0000000000000000 in ?? () (gdb) thread apply all bt full Thread 5 (Thread 31286): #0 0x00007fb41892c742 in select () from /lib/libc.so.6 No symbol table info available. #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/time.c:246 tv = {tv_sec = 0, tv_usec = 88462} #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/switch_time.c:109 No locals. #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at src/switch_time.c:178 No locals. #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, obj=0x0) at src/switch_core_memory.c:531 len = 0 #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at threadproc/unix/thread.c:138 thread = 0x1417ff8 #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 No symbol table info available. #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 No symbol table info available. #8 0x0000000000000000 in ?? () No symbol table info available. Thread 4 (Thread 31264): #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from /lib/libpthread.so.0 No symbol table info available. #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/libpthread.so.0 No symbol table info available. #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from /lib/libpthread.so.0 No symbol table info available. #3 0x00007fb418ca12de in apr_thread_mutex_unlock (mutex=0x12b83d8) at locks/unix/thread_mutex.c:121 status = 0 #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, data=0x12b4b60) at misc/apr_queue.c:242 rv = 0 #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, data=0x12b4b60) at src/switch_apr.c:931 s = 0 #6 0x00007fb418c3dfe8 in switch_event_fire_detailed (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 "switch_xml_open_root", line=1918, event=0x7fff211d0a58, user_data=0x0) at src/switch_event.c:1128 was = 0 index = 0 __PRETTY_FUNCTION__ = "switch_event_fire_detailed" __func__ = "switch_event_fire_detailed" #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', err=0x7fff211d1110) at src/switch_xml.c:1918 event = 0x12b4b60 path_buf = "/opt/freeswitch/conf/freeswitch.xml\0\0\0\0\0\340\33\"\1\0\0\0\0\0\320\34\31\264\177\0\0)'\214\30\264\177\0\0\6\0\0\0\b\0\0\1\200\247\273\30\264\177\0\0\0\0\0\0\0\0\0\0\340\33\"\1\0\0\0\0O\0\0\0\0\0\0\0\271\24\214\0\0\4\0\0`\6\35!\377\177\0\0@\16\35!\377\177\0\0\340\33\"\1\0\0\0\0\0\272\273\30\264\177\0\0p\r\35!\377\177\0\0`\v@\0\0\0\0\0 \26\35!\377\177", '\0' , "v\202\214\30\264\177\0\0\71\0\0\0\0\0\0\0\224\t\307\30\264\177\0\0\65\2\0\0\60\0\0\0\200\0\0\0\377\177\0\0\6\0\325\30\264\177\0\0\263\352\16\0\377\177\0\0\320\v\35!\377"... hasmain = 0 '\0' errcnt = 0 '\0' new_main = 0x1221ca0 r = 0x0 __func__ = "switch_xml_open_root" #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, err=0x7fff211d1110) at src/switch_xml.c:1945 xml = 0x12b8338 __PRETTY_FUNCTION__ = "switch_xml_init" ---Type to continue, or q to quit--- #9 0x00007fb418c2d78f in switch_core_init (flags=1, console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 uuid = {data = "\0\0\0\0\0\0\0\0\200\247\273\30\264\177\0"} guess_ip = "::1\0\61\66\70.69.69", '\0' "\331, _\222\30\264\177\0\0\0\0\0\0\0\0\0\0\25\0\0\0\0\0\0\0\0\320\34\31\264\177\0\0\25", '\0' , "J\30\214\30\264\177\0" dir_path = 0x0 mask = 16777215 in = {s_addr = 16777215} __PRETTY_FUNCTION__ = "switch_core_init" #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 event = 0x400b60 __func__ = "switch_core_init_and_modload" #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at main.c:97 flags = 1 err = 0x7fb418d56314 "Success" console = SWITCH_TRUE destroy_status = SWITCH_STATUS_SUCCESS ret = 0 __PRETTY_FUNCTION__ = "main" Thread 3 (Thread 31288): #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 No symbol table info available. #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, mutex=0x14dbab8) at locks/unix/thread_cond.c:68 rv = 0 #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, data=0x7fb41676c0b8) at misc/apr_queue.c:276 rv = 0 #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, data=0x7fb41676c0b8) at src/switch_apr.c:902 No locals. #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, obj=0x14dba78) at src/switch_event.c:289 pop = 0x0 event = 0x0 queue = 0x14dba78 index = 0 my_id = 1 __func__ = "switch_event_thread" #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at threadproc/unix/thread.c:138 thread = 0x1663ac8 #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 No symbol table info available. #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 No symbol table info available. #8 0x0000000000000000 in ?? () No symbol table info available. Thread 2 (Thread 31289): #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 No symbol table info available. #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, mutex=0x159fac8) at locks/unix/thread_cond.c:68 rv = 0 #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, data=0x7fb4167a80b8) at misc/apr_queue.c:276 rv = 0 #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, data=0x7fb4167a80b8) at src/switch_apr.c:902 No locals. #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, obj=0x159fa88) at src/switch_event.c:289 ---Type to continue, or q to quit--- pop = 0x0 event = 0x0 queue = 0x159fa88 index = 0 my_id = 2 __func__ = "switch_event_thread" #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at threadproc/unix/thread.c:138 thread = 0x1663af8 #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 No symbol table info available. #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 No symbol table info available. #8 0x0000000000000000 in ?? () No symbol table info available. Thread 1 (Thread 31287): #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, data=0x12b4b60) at misc/apr_queue.c:215 rv = 0 #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, data=0x12b4b60) at src/switch_apr.c:931 s = 0 #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, obj=0x12b8398) at src/switch_event.c:305 pop = 0x12b4b60 event = 0x12b4b60 queue = 0x12b8398 index = 0 my_id = 0 __func__ = "switch_event_thread" #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at threadproc/unix/thread.c:138 thread = 0x1663a98 #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 No symbol table info available. #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 No symbol table info available. #6 0x0000000000000000 in ?? () No symbol table info available. FS svn r14092, gcc-4.3.3, x86_64 Any idea what should I add to free up everything after shutdown and lets start with "blank list"? Thanks in advance, Tamas From anthony.minessale at gmail.com Wed Jul 1 16:00:42 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Wed, 1 Jul 2009 18:00:42 -0500 Subject: [Freeswitch-dev] crash running the core twice in one process In-Reply-To: <4A4BE8BC.3060903@gmail.com> References: <4A4BE8BC.3060903@gmail.com> Message-ID: <191c3a030907011600k444ed904vc54f12672ae05fed@mail.gmail.com> look in switch.c we do it when you say "fsctl shutdown restart" and it works fine over and over. On Wed, Jul 1, 2009 at 5:52 PM, Tamas wrote: > Hello, > > I'm trying to embed FS in a C application where I should have to restart > the whole stuff (core) in one process/thread, however it crashes. I > assume, something is not freed up before the new startup. I've used > mrene's fshost example to reproduce the issue: > > Index: contrib/mrene/fshost/main.c > =================================================================== > --- contrib/mrene/fshost/main.c (revision 14092) > +++ contrib/mrene/fshost/main.c (working copy) > -82,7 +82,34 @@ > > ret = system(buf); > } > + > + > + /* Here I start my 2nd start */ > + > + /* Initialize libs & globals */ > + printf("Initializing globals...\n"); > + switch_core_setrlimits(); > + switch_core_set_globals(); > > + /* If you need to override configuration directories, you need to > change them in the SWITCH_GLOBAL_dirs global structure */ > + printf("Initializing core...\n"); > + /* Initialize the core and load modules, that will startup FS > completely */ > + if (switch_core_init_and_modload(flags, console, &err) != > SWITCH_STATUS_SUCCESS) { > + fprintf(stderr, "Failed to initialize FreeSWITCH's core: %s\n", > err); > + return 1; > + } > + > + printf("Everything OK, Entering runtime loop.\n"); > + > + fflush(stdout); > + > + /* Go into the runtime loop. If the argument is true, this > basically sets runtime.running = 1 and loops while that is set > + * If its false, it initializes the libedit for the console, then > does the same thing > + */ > + switch_core_runtime_loop(!console); > + > + /* When the runtime loop exits, its time to shutdown */ > + destroy_status = switch_core_destroy(); > return ret; > } > > -95,4 +122,4 @@ > * End: > * For VIM: > * vim:set softtabstop=4 shiftwidth=4 tabstop=4: > - */ > \ No newline at end of file > + */ > > > Here are some gdb backtraces: > > (gdb) bt > #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at misc/apr_queue.c:215 > #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at src/switch_apr.c:931 > #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, > obj=0x12b8398) at src/switch_event.c:305 > #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at > threadproc/unix/thread.c:138 > #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #6 0x0000000000000000 in ?? () > (gdb) bt full > #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at misc/apr_queue.c:215 > rv = 0 > #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at src/switch_apr.c:931 > s = 0 > #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, > obj=0x12b8398) at src/switch_event.c:305 > pop = 0x12b4b60 > event = 0x12b4b60 > queue = 0x12b8398 > index = 0 > my_id = 0 > __func__ = "switch_event_thread" > #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at > threadproc/unix/thread.c:138 > thread = 0x1663a98 > #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #6 0x0000000000000000 in ?? () > No symbol table info available. > > > (gdb) thread apply all bt > > Thread 5 (Thread 31286): > #0 0x00007fb41892c742 in select () from /lib/libc.so.6 > #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/time.c:246 > #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/switch_time.c:109 > #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at src/switch_time.c:178 > #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, obj=0x0) at > src/switch_core_memory.c:531 > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at > threadproc/unix/thread.c:138 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #8 0x0000000000000000 in ?? () > > Thread 4 (Thread 31264): > #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from /lib/libpthread.so.0 > #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/libpthread.so.0 > #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from > /lib/libpthread.so.0 > #3 0x00007fb418ca12de in apr_thread_mutex_unlock (mutex=0x12b83d8) at > locks/unix/thread_mutex.c:121 > #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, > data=0x12b4b60) at misc/apr_queue.c:242 > #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, > data=0x12b4b60) at src/switch_apr.c:931 > #6 0x00007fb418c3dfe8 in switch_event_fire_detailed > (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 > "switch_xml_open_root", line=1918, event=0x7fff211d0a58, user_data=0x0) > at src/switch_event.c:1128 > #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', > err=0x7fff211d1110) at src/switch_xml.c:1918 > #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, > err=0x7fff211d1110) at src/switch_xml.c:1945 > #9 0x00007fb418c2d78f in switch_core_init (flags=1, > console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 > #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, > console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 > #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at main.c:97 > > Thread 3 (Thread 31288): > #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from > /lib/libpthread.so.0 > #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, > mutex=0x14dbab8) at locks/unix/thread_cond.c:68 > #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, > data=0x7fb41676c0b8) at misc/apr_queue.c:276 > #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, > data=0x7fb41676c0b8) at src/switch_apr.c:902 > #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, > obj=0x14dba78) at src/switch_event.c:289 > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at > threadproc/unix/thread.c:138 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #8 0x0000000000000000 in ?? () > > Thread 2 (Thread 31289): > #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from > /lib/libpthread.so.0 > #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, > mutex=0x159fac8) at locks/unix/thread_cond.c:68 > #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, > data=0x7fb4167a80b8) at misc/apr_queue.c:276 > #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, > data=0x7fb4167a80b8) at src/switch_apr.c:902 > #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, > obj=0x159fa88) at src/switch_event.c:289 > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at > threadproc/unix/thread.c:138 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #8 0x0000000000000000 in ?? () > > Thread 1 (Thread 31287): > #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at misc/apr_queue.c:215 > #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at src/switch_apr.c:931 > #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, > obj=0x12b8398) at src/switch_event.c:305 > #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at > threadproc/unix/thread.c:138 > #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #6 0x0000000000000000 in ?? () > > (gdb) thread apply all bt full > > Thread 5 (Thread 31286): > #0 0x00007fb41892c742 in select () from /lib/libc.so.6 > No symbol table info available. > #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/time.c:246 > tv = {tv_sec = 0, tv_usec = 88462} > #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/switch_time.c:109 > No locals. > #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at src/switch_time.c:178 > No locals. > #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, obj=0x0) at > src/switch_core_memory.c:531 > len = 0 > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at > threadproc/unix/thread.c:138 > thread = 0x1417ff8 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #8 0x0000000000000000 in ?? () > No symbol table info available. > > Thread 4 (Thread 31264): > #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from /lib/libpthread.so.0 > No symbol table info available. > #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/libpthread.so.0 > No symbol table info available. > #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from > /lib/libpthread.so.0 > No symbol table info available. > #3 0x00007fb418ca12de in apr_thread_mutex_unlock (mutex=0x12b83d8) at > locks/unix/thread_mutex.c:121 > status = 0 > #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, > data=0x12b4b60) at misc/apr_queue.c:242 > rv = 0 > #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, > data=0x12b4b60) at src/switch_apr.c:931 > s = 0 > #6 0x00007fb418c3dfe8 in switch_event_fire_detailed > (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 > "switch_xml_open_root", line=1918, event=0x7fff211d0a58, user_data=0x0) > at src/switch_event.c:1128 > was = 0 > index = 0 > __PRETTY_FUNCTION__ = "switch_event_fire_detailed" > __func__ = "switch_event_fire_detailed" > #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', > err=0x7fff211d1110) at src/switch_xml.c:1918 > event = 0x12b4b60 > path_buf = > > "/opt/freeswitch/conf/freeswitch.xml\0\0\0\0\0\340\33\"\1\0\0\0\0\0\320\34\31\264\177\0\0)'\214\30\264\177\0\0\6\0\0\0\b\0\0\1\200\247\273\30\264\177\0\0\0\0\0\0\0\0\0\0\340\33\"\1\0\0\0\0O\0\0\0\0\0\0\0\271\24\214\0\0\4\0\0`\6\35!\377\177\0\0@ > \16\35!\377\177\0\0\340\33\"\1\0\0\0\0\0\272\273\30\264\177\0\0p\r\35!\377\177\0\0`\v@ > \0\0\0\0\0 > \26\35!\377\177", '\0' , > > "v\202\214\30\264\177\0\0\71\0\0\0\0\0\0\0\224\t\307\30\264\177\0\0\65\2\0\0\60\0\0\0\200\0\0\0\377\177\0\0\6\0\325\30\264\177\0\0\263\352\16\0\377\177\0\0\320\v\35!\377"... > hasmain = 0 '\0' > errcnt = 0 '\0' > new_main = 0x1221ca0 > r = 0x0 > __func__ = "switch_xml_open_root" > #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, > err=0x7fff211d1110) at src/switch_xml.c:1945 > xml = 0x12b8338 > __PRETTY_FUNCTION__ = "switch_xml_init" > ---Type to continue, or q to quit--- > #9 0x00007fb418c2d78f in switch_core_init (flags=1, > console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 > uuid = {data = "\0\0\0\0\0\0\0\0\200\247\273\30\264\177\0"} > guess_ip = "::1\0\61\66\70.69.69", '\0' times>"\331, > > _\222\30\264\177\0\0\0\0\0\0\0\0\0\0\25\0\0\0\0\0\0\0\0\320\34\31\264\177\0\0\25", > '\0' , "J\30\214\30\264\177\0" > dir_path = 0x0 > mask = 16777215 > in = {s_addr = 16777215} > __PRETTY_FUNCTION__ = "switch_core_init" > #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, > console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 > event = 0x400b60 > __func__ = "switch_core_init_and_modload" > #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at main.c:97 > flags = 1 > err = 0x7fb418d56314 "Success" > console = SWITCH_TRUE > destroy_status = SWITCH_STATUS_SUCCESS > ret = 0 > __PRETTY_FUNCTION__ = "main" > > Thread 3 (Thread 31288): > #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from > /lib/libpthread.so.0 > No symbol table info available. > #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, > mutex=0x14dbab8) at locks/unix/thread_cond.c:68 > rv = 0 > #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, > data=0x7fb41676c0b8) at misc/apr_queue.c:276 > rv = 0 > #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, > data=0x7fb41676c0b8) at src/switch_apr.c:902 > No locals. > #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, > obj=0x14dba78) at src/switch_event.c:289 > pop = 0x0 > event = 0x0 > queue = 0x14dba78 > index = 0 > my_id = 1 > __func__ = "switch_event_thread" > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at > threadproc/unix/thread.c:138 > thread = 0x1663ac8 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #8 0x0000000000000000 in ?? () > No symbol table info available. > > Thread 2 (Thread 31289): > #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from > /lib/libpthread.so.0 > No symbol table info available. > #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, > mutex=0x159fac8) at locks/unix/thread_cond.c:68 > rv = 0 > #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, > data=0x7fb4167a80b8) at misc/apr_queue.c:276 > rv = 0 > #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, > data=0x7fb4167a80b8) at src/switch_apr.c:902 > No locals. > #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, > obj=0x159fa88) at src/switch_event.c:289 > ---Type to continue, or q to quit--- > pop = 0x0 > event = 0x0 > queue = 0x159fa88 > index = 0 > my_id = 2 > __func__ = "switch_event_thread" > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at > threadproc/unix/thread.c:138 > thread = 0x1663af8 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #8 0x0000000000000000 in ?? () > No symbol table info available. > > Thread 1 (Thread 31287): > #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at misc/apr_queue.c:215 > rv = 0 > #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at src/switch_apr.c:931 > s = 0 > #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, > obj=0x12b8398) at src/switch_event.c:305 > pop = 0x12b4b60 > event = 0x12b4b60 > queue = 0x12b8398 > index = 0 > my_id = 0 > __func__ = "switch_event_thread" > #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at > threadproc/unix/thread.c:138 > thread = 0x1663a98 > #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #6 0x0000000000000000 in ?? () > No symbol table info available. > > > FS svn r14092, gcc-4.3.3, x86_64 > > Any idea what should I add to free up everything after shutdown and lets > start with "blank list"? > > Thanks in advance, > Tamas > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090701/fafd7527/attachment-0001.html From msc at freeswitch.org Wed Jul 1 17:08:01 2009 From: msc at freeswitch.org (Michael Collins) Date: Wed, 1 Jul 2009 17:08:01 -0700 Subject: [Freeswitch-dev] Language Handling: call for assistance Message-ID: <87f2f3b90907011708t161e310em833fc728c7dfdbee@mail.gmail.com> Hello all! There's been some discussion lately on how to handle multiple languages, specifically with the *say* application. We would like some input from the community on how to handle multiple languages and sound files. Anthony notes that the say application needs to build the path to the sound files by using the ${sound_prefix} and ${lang} variables. Some have asked about countries or language variants, like European Portugese vs. Brazilian Portugese. These are good questions. >From the community we need input. If you have experience with multiple languages in a telephony environment then please give us your suggestions. How would you like to see the say application handle various languages and dialects? Please give us your helpful suggestions. Thanks, Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090701/c8a8b8e0/attachment.html From shaheryarkh at googlemail.com Wed Jul 1 23:36:55 2009 From: shaheryarkh at googlemail.com (Muhammad Shahzad) Date: Thu, 2 Jul 2009 01:36:55 -0500 Subject: [Freeswitch-dev] [Freeswitch-users] G723 timer problem In-Reply-To: <191c3a030907011430r47f8a903s4e268702650767db@mail.gmail.com> References: <191c3a030907011430r47f8a903s4e268702650767db@mail.gmail.com> Message-ID: Great. It works. Thank you so much. Now i can restore my production deployment plan back to FS. Thank you. On Wed, Jul 1, 2009 at 4:30 PM, Anthony Minessale < anthony.minessale at gmail.com> wrote: > try revision 14095 or higher. > This adds the ability to use g723 at 60ms, > > If this does not work, > > set the param rtp-autofix-timing to true in your sip profile. > > > > On Wed, Jul 1, 2009 at 4:13 PM, Brian West wrote: > >> You have two choices... set codec neg. to scrooge or get a provider that >> doesn't lie about the ptime in their SDP. >> /b >> >> On Jul 1, 2009, at 4:04 PM, Muhammad Shahzad wrote: >> >> Hi, >> >> I am using FS svn revision 14046 and trying to send call from SIP Dialer >> to a SIP gateway using G723 in passthrough mode. Everything works perfect >> and destination rings but then call drops with following error on FS CLI, >> >> >> 2009-07-02 02:39:28.790508 [WARNING] mod_sofia.c:807 We were told to use >> ptime 30 but what they meant to say was 60 >> This issue has so far been identified to happen on the following broken >> platforms/devices: >> Linksys/Sipura aka Cisco >> ShoreTel >> Sonus/L3 >> We will try to fix it but some of the devices on this list are so broken >> who knows what will happen.. >> 2009-07-02 02:39:28.790508 [WARNING] switch_core_codec.c:499 Codec G723 >> Exists but not at the desired implementation. 8000hz 60ms >> >> >> Is there any work around for this or i have downgrade my server back to >> Asterisk. :'-( >> >> Thank you. >> >> >> >> _______________________________________________ >> Freeswitch-dev mailing list >> Freeswitch-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> >> > > > -- > Anthony Minessale II > > FreeSWITCH http://www.freeswitch.org/ > ClueCon http://www.cluecon.com/ > > AIM: anthm > MSN:anthony_minessale at hotmail.com > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com > IRC: irc.freenode.net #freeswitch > > FreeSWITCH Developer Conference > sip:888 at conference.freeswitch.org > iax:guest at conference.freeswitch.org/888 > googletalk:conf+888 at conference.freeswitch.org > pstn:213-799-1400 > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -- Muhammad Shahzad ----------------------------------- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +92 334 422 40 88 MSN: shari_786pk at hotmail.com Email: shaheryarkh at googlemail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090702/e743842c/attachment.html From jalsot at gmail.com Thu Jul 2 07:47:04 2009 From: jalsot at gmail.com (Tamas) Date: Thu, 02 Jul 2009 16:47:04 +0200 Subject: [Freeswitch-dev] crash running the core twice in one process In-Reply-To: <191c3a030907011600k444ed904vc54f12672ae05fed@mail.gmail.com> References: <4A4BE8BC.3060903@gmail.com> <191c3a030907011600k444ed904vc54f12672ae05fed@mail.gmail.com> Message-ID: <4A4CC868.3040501@gmail.com> Hi, I started with switch.c and saw execv lines. This works for sure. What I don't know is that why the way I'm doing does not work, what have I missed. My original problem is that when I tear down FS core started in a thread, there is no issue, however when I tear down the thread FS core was running in, I'm getting segfault which is similar to what I was able to reproduce with this fshost example (when I don't have FS initiated in that thread, thread tearing works fine). ... 2009-07-02 16:41:08.777480 [CONSOLE] switch_core_sqldb.c:593 Waiting for unfinished SQL transactions 2009-07-02 16:41:08.777576 [NOTICE] switch_core_sqldb.c:199 SQL thread ending 2009-07-02 16:41:08.787766 [CONSOLE] switch_scheduler.c:305 Stopping Task Thread 2009-07-02 16:41:09.190129 [DEBUG] switch_scheduler.c:138 Deleting task 1 heartbeat (core) 2009-07-02 16:41:09.253047 [NOTICE] switch_scheduler.c:176 Task thread ending 2009-07-02 16:41:09.288623 [CONSOLE] switch_core.c:1656 Closing Event Engine. 2009-07-02 16:41:09.288746 [CONSOLE] switch_event.c:468 Stopping event queue 0 2009-07-02 16:41:09.288801 [CONSOLE] switch_event.c:468 Stopping event queue 1 2009-07-02 16:41:09.288844 [CONSOLE] switch_event.c:468 Stopping event queue 2 2009-07-02 16:41:09.288888 [CONSOLE] switch_event.c:325 Event Thread 1 Ended. 2009-07-02 16:41:09.288884 [CONSOLE] switch_event.c:474 Stopping dispatch queue 0 2009-07-02 16:41:09.289079 [CONSOLE] switch_event.c:263 Dispatch Thread 0 Ended. 2009-07-02 16:41:09.289312 [CONSOLE] switch_event.c:325 Event Thread 2 Ended. 2009-07-02 16:41:09.290423 [CONSOLE] switch_event.c:492 Stopping dispatch thread 0 2009-07-02 16:41:09.290471 [CONSOLE] switch_event.c:506 Stopping queue thread 0 2009-07-02 16:41:09.288922 [CONSOLE] switch_event.c:325 Event Thread 0 Ended. 2009-07-02 16:41:09.345453 [CONSOLE] switch_event.c:506 Stopping queue thread 1 2009-07-02 16:41:09.345510 [CONSOLE] switch_event.c:506 Stopping queue thread 2 2009-07-02 16:41:09.345561 [CONSOLE] switch_core.c:1659 Finalizing Shutdown. 2009-07-02 16:41:09.345697 [CONSOLE] switch_log.c:255 Logger Ended. 2009-07-02 16:41:09.347192 [CONSOLE] switch_core_memory.c:567 Stopping memory pool queue. Initializing globals... Initializing core... 2009-07-02 16:41:09.448524 [INFO] switch_event.c:565 Activate Eventing Engine. Szegmens hiba (core dumped) Core was generated by `./fshost'. Program terminated with signal 11, Segmentation fault. #0 0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8, data=0x17cf600) at misc/apr_queue.c:215 215 if (queue->terminated) { (gdb) bt #0 0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8, data=0x17cf600) at misc/apr_queue.c:215 #1 0x00007fce6f86c64a in switch_queue_trypush (queue=0x7fce6d54c5a8, data=0x17cf600) at src/switch_apr.c:931 #2 0x00007fce6f8a3ab8 in switch_event_thread (thread=0x1bd5028, obj=0x17bdb38) at src/switch_event.c:305 #3 0x00007fce6f910c01 in dummy_worker (opaque=0x1bd5028) at threadproc/unix/thread.c:138 #4 0x00007fce6ec5d3ba in start_thread () from /lib/libpthread.so.0 #5 0x00007fce6f59bfcd in clone () from /lib/libc.so.6 #6 0x0000000000000000 in ?? () (gdb) bt full #0 0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8, data=0x17cf600) at misc/apr_queue.c:215 rv = 0 #1 0x00007fce6f86c64a in switch_queue_trypush (queue=0x7fce6d54c5a8, data=0x17cf600) at src/switch_apr.c:931 s = 0 #2 0x00007fce6f8a3ab8 in switch_event_thread (thread=0x1bd5028, obj=0x17bdb38) at src/switch_event.c:305 pop = 0x17cf600 event = 0x17cf600 queue = 0x17bdb38 index = 0 my_id = 0 __func__ = "switch_event_thread" #3 0x00007fce6f910c01 in dummy_worker (opaque=0x1bd5028) at threadproc/unix/thread.c:138 thread = 0x1bd5028 #4 0x00007fce6ec5d3ba in start_thread () from /lib/libpthread.so.0 No symbol table info available. #5 0x00007fce6f59bfcd in clone () from /lib/libc.so.6 No symbol table info available. #6 0x0000000000000000 in ?? () No symbol table info available. (gdb) New info: for the shutdown issue (a different one) I've found that when I don't load mod_portaudio, there is no segfault on shutdown, it tears down everything cleanly. For the fshost issue the same did not have any effect. Is there any know practice how to debug such thing? I'll keep working on these issues... Regards, Tamas Anthony Minessale ?rta: > look in switch.c > > we do it when you say "fsctl shutdown restart" and it works fine over > and over. > > > > On Wed, Jul 1, 2009 at 5:52 PM, Tamas > wrote: > > Hello, > > I'm trying to embed FS in a C application where I should have to > restart > the whole stuff (core) in one process/thread, however it crashes. I > assume, something is not freed up before the new startup. I've used > mrene's fshost example to reproduce the issue: > > Index: contrib/mrene/fshost/main.c > =================================================================== > --- contrib/mrene/fshost/main.c (revision 14092) > +++ contrib/mrene/fshost/main.c (working copy) > -82,7 +82,34 @@ > > ret = system(buf); > } > + > + > + /* Here I start my 2nd start */ > + > + /* Initialize libs & globals */ > + printf("Initializing globals...\n"); > + switch_core_setrlimits(); > + switch_core_set_globals(); > > + /* If you need to override configuration directories, you need to > change them in the SWITCH_GLOBAL_dirs global structure */ > + printf("Initializing core...\n"); > + /* Initialize the core and load modules, that will startup FS > completely */ > + if (switch_core_init_and_modload(flags, console, &err) != > SWITCH_STATUS_SUCCESS) { > + fprintf(stderr, "Failed to initialize FreeSWITCH's core: > %s\n", > err); > + return 1; > + } > + > + printf("Everything OK, Entering runtime loop.\n"); > + > + fflush(stdout); > + > + /* Go into the runtime loop. If the argument is true, this > basically sets runtime.running = 1 and loops while that is set > + * If its false, it initializes the libedit for the console, then > does the same thing > + */ > + switch_core_runtime_loop(!console); > + > + /* When the runtime loop exits, its time to shutdown */ > + destroy_status = switch_core_destroy(); > return ret; > } > > -95,4 +122,4 @@ > * End: > * For VIM: > * vim:set softtabstop=4 shiftwidth=4 tabstop=4: > - */ > \ No newline at end of file > + */ > > > Here are some gdb backtraces: > > (gdb) bt > #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at misc/apr_queue.c:215 > #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at src/switch_apr.c:931 > #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, > obj=0x12b8398) at src/switch_event.c:305 > #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at > threadproc/unix/thread.c:138 > #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #6 0x0000000000000000 in ?? () > (gdb) bt full > #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at misc/apr_queue.c:215 > rv = 0 > #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at src/switch_apr.c:931 > s = 0 > #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, > obj=0x12b8398) at src/switch_event.c:305 > pop = 0x12b4b60 > event = 0x12b4b60 > queue = 0x12b8398 > index = 0 > my_id = 0 > __func__ = "switch_event_thread" > #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at > threadproc/unix/thread.c:138 > thread = 0x1663a98 > #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #6 0x0000000000000000 in ?? () > No symbol table info available. > > > (gdb) thread apply all bt > > Thread 5 (Thread 31286): > #0 0x00007fb41892c742 in select () from /lib/libc.so.6 > #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/time.c:246 > #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/switch_time.c:109 > #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at > src/switch_time.c:178 > #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, obj=0x0) at > src/switch_core_memory.c:531 > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at > threadproc/unix/thread.c:138 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #8 0x0000000000000000 in ?? () > > Thread 4 (Thread 31264): > #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from > /lib/libpthread.so.0 > #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/libpthread.so.0 > #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from > /lib/libpthread.so.0 > #3 0x00007fb418ca12de in apr_thread_mutex_unlock (mutex=0x12b83d8) at > locks/unix/thread_mutex.c:121 > #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, > data=0x12b4b60) at misc/apr_queue.c:242 > #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, > data=0x12b4b60) at src/switch_apr.c:931 > #6 0x00007fb418c3dfe8 in switch_event_fire_detailed > (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 > "switch_xml_open_root", line=1918, event=0x7fff211d0a58, > user_data=0x0) > at src/switch_event.c:1128 > #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', > err=0x7fff211d1110) at src/switch_xml.c:1918 > #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, > err=0x7fff211d1110) at src/switch_xml.c:1945 > #9 0x00007fb418c2d78f in switch_core_init (flags=1, > console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 > #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, > console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 > #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at > main.c:97 > > Thread 3 (Thread 31288): > #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from > /lib/libpthread.so.0 > #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, > mutex=0x14dbab8) at locks/unix/thread_cond.c:68 > #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, > data=0x7fb41676c0b8) at misc/apr_queue.c:276 > #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, > data=0x7fb41676c0b8) at src/switch_apr.c:902 > #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, > obj=0x14dba78) at src/switch_event.c:289 > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at > threadproc/unix/thread.c:138 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #8 0x0000000000000000 in ?? () > > Thread 2 (Thread 31289): > #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from > /lib/libpthread.so.0 > #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, > mutex=0x159fac8) at locks/unix/thread_cond.c:68 > #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, > data=0x7fb4167a80b8) at misc/apr_queue.c:276 > #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, > data=0x7fb4167a80b8) at src/switch_apr.c:902 > #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, > obj=0x159fa88) at src/switch_event.c:289 > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at > threadproc/unix/thread.c:138 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #8 0x0000000000000000 in ?? () > > Thread 1 (Thread 31287): > #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at misc/apr_queue.c:215 > #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at src/switch_apr.c:931 > #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, > obj=0x12b8398) at src/switch_event.c:305 > #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at > threadproc/unix/thread.c:138 > #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 > #6 0x0000000000000000 in ?? () > > (gdb) thread apply all bt full > > Thread 5 (Thread 31286): > #0 0x00007fb41892c742 in select () from /lib/libc.so.6 > No symbol table info available. > #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/time.c:246 > tv = {tv_sec = 0, tv_usec = 88462} > #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/switch_time.c:109 > No locals. > #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at > src/switch_time.c:178 > No locals. > #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, obj=0x0) at > src/switch_core_memory.c:531 > len = 0 > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at > threadproc/unix/thread.c:138 > thread = 0x1417ff8 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #8 0x0000000000000000 in ?? () > No symbol table info available. > > Thread 4 (Thread 31264): > #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from > /lib/libpthread.so.0 > No symbol table info available. > #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/libpthread.so.0 > No symbol table info available. > #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from > /lib/libpthread.so.0 > No symbol table info available. > #3 0x00007fb418ca12de in apr_thread_mutex_unlock (mutex=0x12b83d8) at > locks/unix/thread_mutex.c:121 > status = 0 > #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, > data=0x12b4b60) at misc/apr_queue.c:242 > rv = 0 > #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, > data=0x12b4b60) at src/switch_apr.c:931 > s = 0 > #6 0x00007fb418c3dfe8 in switch_event_fire_detailed > (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 > "switch_xml_open_root", line=1918, event=0x7fff211d0a58, > user_data=0x0) > at src/switch_event.c:1128 > was = 0 > index = 0 > __PRETTY_FUNCTION__ = "switch_event_fire_detailed" > __func__ = "switch_event_fire_detailed" > #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', > err=0x7fff211d1110) at src/switch_xml.c:1918 > event = 0x12b4b60 > path_buf = > "/opt/freeswitch/conf/freeswitch.xml\0\0\0\0\0\340\33\"\1\0\0\0\0\0\320\34\31\264\177\0\0)'\214\30\264\177\0\0\6\0\0\0\b\0\0\1\200\247\273\30\264\177\0\0\0\0\0\0\0\0\0\0\340\33\"\1\0\0\0\0O\0\0\0\0\0\0\0\271\24\214\0\0\4\0\0`\6\35!\377\177\0\0@\16\35!\377\177\0\0\340\33\"\1\0\0\0\0\0\272\273\30\264\177\0\0p\r\35!\377\177\0\0`\v@\0\0\0\0\0 > \26\35!\377\177", '\0' , > "v\202\214\30\264\177\0\0\71\0\0\0\0\0\0\0\224\t\307\30\264\177\0\0\65\2\0\0\60\0\0\0\200\0\0\0\377\177\0\0\6\0\325\30\264\177\0\0\263\352\16\0\377\177\0\0\320\v\35!\377"... > hasmain = 0 '\0' > errcnt = 0 '\0' > new_main = 0x1221ca0 > r = 0x0 > __func__ = "switch_xml_open_root" > #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, > err=0x7fff211d1110) at src/switch_xml.c:1945 > xml = 0x12b8338 > __PRETTY_FUNCTION__ = "switch_xml_init" > ---Type to continue, or q to quit--- > #9 0x00007fb418c2d78f in switch_core_init (flags=1, > console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 > uuid = {data = "\0\0\0\0\0\0\0\0\200\247\273\30\264\177\0"} > guess_ip = "::1\0\61\66\70.69.69", '\0' times>"\331, > _\222\30\264\177\0\0\0\0\0\0\0\0\0\0\25\0\0\0\0\0\0\0\0\320\34\31\264\177\0\0\25", > '\0' , "J\30\214\30\264\177\0" > dir_path = 0x0 > mask = 16777215 > in = {s_addr = 16777215} > __PRETTY_FUNCTION__ = "switch_core_init" > #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, > console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 > event = 0x400b60 > __func__ = "switch_core_init_and_modload" > #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at > main.c:97 > flags = 1 > err = 0x7fb418d56314 "Success" > console = SWITCH_TRUE > destroy_status = SWITCH_STATUS_SUCCESS > ret = 0 > __PRETTY_FUNCTION__ = "main" > > Thread 3 (Thread 31288): > #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from > /lib/libpthread.so.0 > No symbol table info available. > #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, > mutex=0x14dbab8) at locks/unix/thread_cond.c:68 > rv = 0 > #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, > data=0x7fb41676c0b8) at misc/apr_queue.c:276 > rv = 0 > #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, > data=0x7fb41676c0b8) at src/switch_apr.c:902 > No locals. > #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, > obj=0x14dba78) at src/switch_event.c:289 > pop = 0x0 > event = 0x0 > queue = 0x14dba78 > index = 0 > my_id = 1 > __func__ = "switch_event_thread" > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at > threadproc/unix/thread.c:138 > thread = 0x1663ac8 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #8 0x0000000000000000 in ?? () > No symbol table info available. > > Thread 2 (Thread 31289): > #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from > /lib/libpthread.so.0 > No symbol table info available. > #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, > mutex=0x159fac8) at locks/unix/thread_cond.c:68 > rv = 0 > #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, > data=0x7fb4167a80b8) at misc/apr_queue.c:276 > rv = 0 > #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, > data=0x7fb4167a80b8) at src/switch_apr.c:902 > No locals. > #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, > obj=0x159fa88) at src/switch_event.c:289 > ---Type to continue, or q to quit--- > pop = 0x0 > event = 0x0 > queue = 0x159fa88 > index = 0 > my_id = 2 > __func__ = "switch_event_thread" > #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at > threadproc/unix/thread.c:138 > thread = 0x1663af8 > #6 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #8 0x0000000000000000 in ?? () > No symbol table info available. > > Thread 1 (Thread 31287): > #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at misc/apr_queue.c:215 > rv = 0 > #1 0x00007fb418c0464a in switch_queue_trypush (queue=0x7fb4168e45a8, > data=0x12b4b60) at src/switch_apr.c:931 > s = 0 > #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, > obj=0x12b8398) at src/switch_event.c:305 > pop = 0x12b4b60 > event = 0x12b4b60 > queue = 0x12b8398 > index = 0 > my_id = 0 > __func__ = "switch_event_thread" > #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at > threadproc/unix/thread.c:138 > thread = 0x1663a98 > #4 0x00007fb417ff53ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 > No symbol table info available. > #6 0x0000000000000000 in ?? () > No symbol table info available. > > > FS svn r14092, gcc-4.3.3, x86_64 > > Any idea what should I add to free up everything after shutdown > and lets > start with "blank list"? > > Thanks in advance, > Tamas > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > > > > -- > Anthony Minessale II > > FreeSWITCH http://www.freeswitch.org/ > ClueCon http://www.cluecon.com/ > > AIM: anthm > MSN:anthony_minessale at hotmail.com > > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com > > IRC: irc.freenode.net #freeswitch > > FreeSWITCH Developer Conference > sip:888 at conference.freeswitch.org > > iax:guest at conference.freeswitch.org/888 > > googletalk:conf+888 at conference.freeswitch.org > > pstn:213-799-1400 > ------------------------------------------------------------------------ > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > From mrene_lists at avgs.ca Thu Jul 2 07:49:36 2009 From: mrene_lists at avgs.ca (Mathieu Rene) Date: Thu, 2 Jul 2009 10:49:36 -0400 Subject: [Freeswitch-dev] crash running the core twice in one process In-Reply-To: <4A4CC868.3040501@gmail.com> References: <4A4BE8BC.3060903@gmail.com> <191c3a030907011600k444ed904vc54f12672ae05fed@mail.gmail.com> <4A4CC868.3040501@gmail.com> Message-ID: <8FDD1794-D294-4D1B-B0DC-278C2DCAB6C7@avgs.ca> Why exactly do you want to restart the whole core? FS is modular enough so you can restart it per module. Math On 2-Jul-09, at 10:47 AM, Tamas wrote: > Hi, > > I started with switch.c and saw execv lines. This works for sure. > What I > don't know is that why the way I'm doing does not work, what have I > missed. > My original problem is that when I tear down FS core started in a > thread, there is no issue, however when I tear down the thread FS core > was running in, I'm getting segfault which is similar to what I was > able > to reproduce with this fshost example (when I don't have FS > initiated in > that thread, thread tearing works fine). > > ... > 2009-07-02 16:41:08.777480 [CONSOLE] switch_core_sqldb.c:593 Waiting > for > unfinished SQL transactions > 2009-07-02 16:41:08.777576 [NOTICE] switch_core_sqldb.c:199 SQL thread > ending > 2009-07-02 16:41:08.787766 [CONSOLE] switch_scheduler.c:305 Stopping > Task Thread > 2009-07-02 16:41:09.190129 [DEBUG] switch_scheduler.c:138 Deleting > task > 1 heartbeat (core) > 2009-07-02 16:41:09.253047 [NOTICE] switch_scheduler.c:176 Task thread > ending > 2009-07-02 16:41:09.288623 [CONSOLE] switch_core.c:1656 Closing Event > Engine. > 2009-07-02 16:41:09.288746 [CONSOLE] switch_event.c:468 Stopping event > queue 0 > 2009-07-02 16:41:09.288801 [CONSOLE] switch_event.c:468 Stopping event > queue 1 > 2009-07-02 16:41:09.288844 [CONSOLE] switch_event.c:468 Stopping event > queue 2 > 2009-07-02 16:41:09.288888 [CONSOLE] switch_event.c:325 Event Thread 1 > Ended. > 2009-07-02 16:41:09.288884 [CONSOLE] switch_event.c:474 Stopping > dispatch queue 0 > 2009-07-02 16:41:09.289079 [CONSOLE] switch_event.c:263 Dispatch > Thread > 0 Ended. > 2009-07-02 16:41:09.289312 [CONSOLE] switch_event.c:325 Event Thread 2 > Ended. > 2009-07-02 16:41:09.290423 [CONSOLE] switch_event.c:492 Stopping > dispatch thread 0 > 2009-07-02 16:41:09.290471 [CONSOLE] switch_event.c:506 Stopping queue > thread 0 > 2009-07-02 16:41:09.288922 [CONSOLE] switch_event.c:325 Event Thread 0 > Ended. > 2009-07-02 16:41:09.345453 [CONSOLE] switch_event.c:506 Stopping queue > thread 1 > 2009-07-02 16:41:09.345510 [CONSOLE] switch_event.c:506 Stopping queue > thread 2 > 2009-07-02 16:41:09.345561 [CONSOLE] switch_core.c:1659 Finalizing > Shutdown. > 2009-07-02 16:41:09.345697 [CONSOLE] switch_log.c:255 Logger Ended. > 2009-07-02 16:41:09.347192 [CONSOLE] switch_core_memory.c:567 Stopping > memory pool queue. > Initializing globals... > Initializing core... > 2009-07-02 16:41:09.448524 [INFO] switch_event.c:565 Activate Eventing > Engine. > Szegmens hiba (core dumped) > > Core was generated by `./fshost'. > Program terminated with signal 11, Segmentation fault. > #0 0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8, > data=0x17cf600) at misc/apr_queue.c:215 > 215 if (queue->terminated) { > (gdb) bt > #0 0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8, > data=0x17cf600) at misc/apr_queue.c:215 > #1 0x00007fce6f86c64a in switch_queue_trypush (queue=0x7fce6d54c5a8, > data=0x17cf600) at src/switch_apr.c:931 > #2 0x00007fce6f8a3ab8 in switch_event_thread (thread=0x1bd5028, > obj=0x17bdb38) at src/switch_event.c:305 > #3 0x00007fce6f910c01 in dummy_worker (opaque=0x1bd5028) at > threadproc/unix/thread.c:138 > #4 0x00007fce6ec5d3ba in start_thread () from /lib/libpthread.so.0 > #5 0x00007fce6f59bfcd in clone () from /lib/libc.so.6 > #6 0x0000000000000000 in ?? () > (gdb) bt full > #0 0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8, > data=0x17cf600) at misc/apr_queue.c:215 > rv = 0 > #1 0x00007fce6f86c64a in switch_queue_trypush (queue=0x7fce6d54c5a8, > data=0x17cf600) at src/switch_apr.c:931 > s = 0 > #2 0x00007fce6f8a3ab8 in switch_event_thread (thread=0x1bd5028, > obj=0x17bdb38) at src/switch_event.c:305 > pop = 0x17cf600 > event = 0x17cf600 > queue = 0x17bdb38 > index = 0 > my_id = 0 > __func__ = "switch_event_thread" > #3 0x00007fce6f910c01 in dummy_worker (opaque=0x1bd5028) at > threadproc/unix/thread.c:138 > thread = 0x1bd5028 > #4 0x00007fce6ec5d3ba in start_thread () from /lib/libpthread.so.0 > No symbol table info available. > #5 0x00007fce6f59bfcd in clone () from /lib/libc.so.6 > No symbol table info available. > #6 0x0000000000000000 in ?? () > No symbol table info available. > (gdb) > > > New info: for the shutdown issue (a different one) I've found that > when > I don't load mod_portaudio, there is no segfault on shutdown, it tears > down everything cleanly. For the fshost issue the same did not have > any > effect. > Is there any know practice how to debug such thing? > > I'll keep working on these issues... > > Regards, > Tamas > > > Anthony Minessale ?rta: >> look in switch.c >> >> we do it when you say "fsctl shutdown restart" and it works fine over >> and over. >> >> >> >> On Wed, Jul 1, 2009 at 5:52 PM, Tamas > > wrote: >> >> Hello, >> >> I'm trying to embed FS in a C application where I should have to >> restart >> the whole stuff (core) in one process/thread, however it >> crashes. I >> assume, something is not freed up before the new startup. I've >> used >> mrene's fshost example to reproduce the issue: >> >> Index: contrib/mrene/fshost/main.c >> >> =================================================================== >> --- contrib/mrene/fshost/main.c (revision 14092) >> +++ contrib/mrene/fshost/main.c (working copy) >> -82,7 +82,34 @@ >> >> ret = system(buf); >> } >> + >> + >> + /* Here I start my 2nd start */ >> + >> + /* Initialize libs & globals */ >> + printf("Initializing globals...\n"); >> + switch_core_setrlimits(); >> + switch_core_set_globals(); >> >> + /* If you need to override configuration directories, you >> need to >> change them in the SWITCH_GLOBAL_dirs global structure */ >> + printf("Initializing core...\n"); >> + /* Initialize the core and load modules, that will startup FS >> completely */ >> + if (switch_core_init_and_modload(flags, console, &err) != >> SWITCH_STATUS_SUCCESS) { >> + fprintf(stderr, "Failed to initialize FreeSWITCH's core: >> %s\n", >> err); >> + return 1; >> + } >> + >> + printf("Everything OK, Entering runtime loop.\n"); >> + >> + fflush(stdout); >> + >> + /* Go into the runtime loop. If the argument is true, this >> basically sets runtime.running = 1 and loops while that is set >> + * If its false, it initializes the libedit for the >> console, then >> does the same thing >> + */ >> + switch_core_runtime_loop(!console); >> + >> + /* When the runtime loop exits, its time to shutdown */ >> + destroy_status = switch_core_destroy(); >> return ret; >> } >> >> -95,4 +122,4 @@ >> * End: >> * For VIM: >> * vim:set softtabstop=4 shiftwidth=4 tabstop=4: >> - */ >> \ No newline at end of file >> + */ >> >> >> Here are some gdb backtraces: >> >> (gdb) bt >> #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, >> data=0x12b4b60) at misc/apr_queue.c:215 >> #1 0x00007fb418c0464a in switch_queue_trypush >> (queue=0x7fb4168e45a8, >> data=0x12b4b60) at src/switch_apr.c:931 >> #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, >> obj=0x12b8398) at src/switch_event.c:305 >> #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at >> threadproc/unix/thread.c:138 >> #4 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> #6 0x0000000000000000 in ?? () >> (gdb) bt full >> #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, >> data=0x12b4b60) at misc/apr_queue.c:215 >> rv = 0 >> #1 0x00007fb418c0464a in switch_queue_trypush >> (queue=0x7fb4168e45a8, >> data=0x12b4b60) at src/switch_apr.c:931 >> s = 0 >> #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, >> obj=0x12b8398) at src/switch_event.c:305 >> pop = 0x12b4b60 >> event = 0x12b4b60 >> queue = 0x12b8398 >> index = 0 >> my_id = 0 >> __func__ = "switch_event_thread" >> #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at >> threadproc/unix/thread.c:138 >> thread = 0x1663a98 >> #4 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> No symbol table info available. >> #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> No symbol table info available. >> #6 0x0000000000000000 in ?? () >> No symbol table info available. >> >> >> (gdb) thread apply all bt >> >> Thread 5 (Thread 31286): >> #0 0x00007fb41892c742 in select () from /lib/libc.so.6 >> #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/ >> time.c:246 >> #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/ >> switch_time.c:109 >> #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at >> src/switch_time.c:178 >> #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, >> obj=0x0) at >> src/switch_core_memory.c:531 >> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at >> threadproc/unix/thread.c:138 >> #6 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> #8 0x0000000000000000 in ?? () >> >> Thread 4 (Thread 31264): >> #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from >> /lib/libpthread.so.0 >> #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/ >> libpthread.so.0 >> #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from >> /lib/libpthread.so.0 >> #3 0x00007fb418ca12de in apr_thread_mutex_unlock >> (mutex=0x12b83d8) at >> locks/unix/thread_mutex.c:121 >> #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, >> data=0x12b4b60) at misc/apr_queue.c:242 >> #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, >> data=0x12b4b60) at src/switch_apr.c:931 >> #6 0x00007fb418c3dfe8 in switch_event_fire_detailed >> (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 >> "switch_xml_open_root", line=1918, event=0x7fff211d0a58, >> user_data=0x0) >> at src/switch_event.c:1128 >> #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', >> err=0x7fff211d1110) at src/switch_xml.c:1918 >> #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, >> err=0x7fff211d1110) at src/switch_xml.c:1945 >> #9 0x00007fb418c2d78f in switch_core_init (flags=1, >> console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 >> #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, >> console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 >> #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at >> main.c:97 >> >> Thread 3 (Thread 31288): >> #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from >> /lib/libpthread.so.0 >> #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, >> mutex=0x14dbab8) at locks/unix/thread_cond.c:68 >> #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, >> data=0x7fb41676c0b8) at misc/apr_queue.c:276 >> #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, >> data=0x7fb41676c0b8) at src/switch_apr.c:902 >> #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, >> obj=0x14dba78) at src/switch_event.c:289 >> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at >> threadproc/unix/thread.c:138 >> #6 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> #8 0x0000000000000000 in ?? () >> >> Thread 2 (Thread 31289): >> #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from >> /lib/libpthread.so.0 >> #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, >> mutex=0x159fac8) at locks/unix/thread_cond.c:68 >> #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, >> data=0x7fb4167a80b8) at misc/apr_queue.c:276 >> #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, >> data=0x7fb4167a80b8) at src/switch_apr.c:902 >> #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, >> obj=0x159fa88) at src/switch_event.c:289 >> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at >> threadproc/unix/thread.c:138 >> #6 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> #8 0x0000000000000000 in ?? () >> >> Thread 1 (Thread 31287): >> #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, >> data=0x12b4b60) at misc/apr_queue.c:215 >> #1 0x00007fb418c0464a in switch_queue_trypush >> (queue=0x7fb4168e45a8, >> data=0x12b4b60) at src/switch_apr.c:931 >> #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, >> obj=0x12b8398) at src/switch_event.c:305 >> #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at >> threadproc/unix/thread.c:138 >> #4 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> #6 0x0000000000000000 in ?? () >> >> (gdb) thread apply all bt full >> >> Thread 5 (Thread 31286): >> #0 0x00007fb41892c742 in select () from /lib/libc.so.6 >> No symbol table info available. >> #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/ >> time.c:246 >> tv = {tv_sec = 0, tv_usec = 88462} >> #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/ >> switch_time.c:109 >> No locals. >> #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at >> src/switch_time.c:178 >> No locals. >> #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, >> obj=0x0) at >> src/switch_core_memory.c:531 >> len = 0 >> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at >> threadproc/unix/thread.c:138 >> thread = 0x1417ff8 >> #6 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> No symbol table info available. >> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> No symbol table info available. >> #8 0x0000000000000000 in ?? () >> No symbol table info available. >> >> Thread 4 (Thread 31264): >> #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from >> /lib/libpthread.so.0 >> No symbol table info available. >> #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/ >> libpthread.so.0 >> No symbol table info available. >> #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from >> /lib/libpthread.so.0 >> No symbol table info available. >> #3 0x00007fb418ca12de in apr_thread_mutex_unlock >> (mutex=0x12b83d8) at >> locks/unix/thread_mutex.c:121 >> status = 0 >> #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, >> data=0x12b4b60) at misc/apr_queue.c:242 >> rv = 0 >> #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, >> data=0x12b4b60) at src/switch_apr.c:931 >> s = 0 >> #6 0x00007fb418c3dfe8 in switch_event_fire_detailed >> (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 >> "switch_xml_open_root", line=1918, event=0x7fff211d0a58, >> user_data=0x0) >> at src/switch_event.c:1128 >> was = 0 >> index = 0 >> __PRETTY_FUNCTION__ = "switch_event_fire_detailed" >> __func__ = "switch_event_fire_detailed" >> #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', >> err=0x7fff211d1110) at src/switch_xml.c:1918 >> event = 0x12b4b60 >> path_buf = >> "/opt/freeswitch/conf/freeswitch.xml >> \0\0\0\0\0\340\33\"\1\0\0\0\0\0\320\34\31\264\177\0\0)'\214\30\264\177\0\0\6\0\0\0\b\0\0\1\200\247\273\30\264\177\0\0\0\0\0\0\0\0\0\0\340\33\"\1\0\0\0\0O\0\0\0\0\0\0\0\271\24\214\0\0\4\0\0`\6\35!\377\177\0\0@\16\35!\377\177\0\0\340\33\"\1\0\0\0\0\0\272\273\30\264\177\0\0p\r\35!\377\177\0\0`\v@\0\0\0\0\0 >> \26\35!\377\177", '\0' , >> "v\202\214\30\264\177\0\0\71\0\0\0\0\0\0\0\224\t >> \307 >> \30 >> \264 >> \177 >> \0 >> \0 >> \65 >> \2 >> \0 >> \0 >> \60 >> \0 >> \0 >> \0 >> \200 >> \0 >> \0 >> \0\377\177\0\0\6\0\325\30\264\177\0\0\263\352\16\0\377\177\0\0\320\v >> \35!\377"... >> hasmain = 0 '\0' >> errcnt = 0 '\0' >> new_main = 0x1221ca0 >> r = 0x0 >> __func__ = "switch_xml_open_root" >> #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, >> err=0x7fff211d1110) at src/switch_xml.c:1945 >> xml = 0x12b8338 >> __PRETTY_FUNCTION__ = "switch_xml_init" >> ---Type to continue, or q to quit--- >> #9 0x00007fb418c2d78f in switch_core_init (flags=1, >> console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 >> uuid = {data = "\0\0\0\0\0\0\0\0\200\247\273\30\264\177\0"} >> guess_ip = "::1\0\61\66\70.69.69", '\0' > times>"\331, >> _ >> \222 >> \30 >> \264 >> \177 >> \0\0\0\0\0\0\0\0\0\0\25\0\0\0\0\0\0\0\0\320\34\31\264\177\0\0\25", >> '\0' , "J\30\214\30\264\177\0" >> dir_path = 0x0 >> mask = 16777215 >> in = {s_addr = 16777215} >> __PRETTY_FUNCTION__ = "switch_core_init" >> #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, >> console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 >> event = 0x400b60 >> __func__ = "switch_core_init_and_modload" >> #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at >> main.c:97 >> flags = 1 >> err = 0x7fb418d56314 "Success" >> console = SWITCH_TRUE >> destroy_status = SWITCH_STATUS_SUCCESS >> ret = 0 >> __PRETTY_FUNCTION__ = "main" >> >> Thread 3 (Thread 31288): >> #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from >> /lib/libpthread.so.0 >> No symbol table info available. >> #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, >> mutex=0x14dbab8) at locks/unix/thread_cond.c:68 >> rv = 0 >> #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, >> data=0x7fb41676c0b8) at misc/apr_queue.c:276 >> rv = 0 >> #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, >> data=0x7fb41676c0b8) at src/switch_apr.c:902 >> No locals. >> #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, >> obj=0x14dba78) at src/switch_event.c:289 >> pop = 0x0 >> event = 0x0 >> queue = 0x14dba78 >> index = 0 >> my_id = 1 >> __func__ = "switch_event_thread" >> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at >> threadproc/unix/thread.c:138 >> thread = 0x1663ac8 >> #6 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> No symbol table info available. >> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> No symbol table info available. >> #8 0x0000000000000000 in ?? () >> No symbol table info available. >> >> Thread 2 (Thread 31289): >> #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from >> /lib/libpthread.so.0 >> No symbol table info available. >> #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, >> mutex=0x159fac8) at locks/unix/thread_cond.c:68 >> rv = 0 >> #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, >> data=0x7fb4167a80b8) at misc/apr_queue.c:276 >> rv = 0 >> #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, >> data=0x7fb4167a80b8) at src/switch_apr.c:902 >> No locals. >> #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, >> obj=0x159fa88) at src/switch_event.c:289 >> ---Type to continue, or q to quit--- >> pop = 0x0 >> event = 0x0 >> queue = 0x159fa88 >> index = 0 >> my_id = 2 >> __func__ = "switch_event_thread" >> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at >> threadproc/unix/thread.c:138 >> thread = 0x1663af8 >> #6 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> No symbol table info available. >> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> No symbol table info available. >> #8 0x0000000000000000 in ?? () >> No symbol table info available. >> >> Thread 1 (Thread 31287): >> #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, >> data=0x12b4b60) at misc/apr_queue.c:215 >> rv = 0 >> #1 0x00007fb418c0464a in switch_queue_trypush >> (queue=0x7fb4168e45a8, >> data=0x12b4b60) at src/switch_apr.c:931 >> s = 0 >> #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, >> obj=0x12b8398) at src/switch_event.c:305 >> pop = 0x12b4b60 >> event = 0x12b4b60 >> queue = 0x12b8398 >> index = 0 >> my_id = 0 >> __func__ = "switch_event_thread" >> #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at >> threadproc/unix/thread.c:138 >> thread = 0x1663a98 >> #4 0x00007fb417ff53ba in start_thread () from /lib/ >> libpthread.so.0 >> No symbol table info available. >> #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 >> No symbol table info available. >> #6 0x0000000000000000 in ?? () >> No symbol table info available. >> >> >> FS svn r14092, gcc-4.3.3, x86_64 >> >> Any idea what should I add to free up everything after shutdown >> and lets >> start with "blank list"? >> >> Thanks in advance, >> Tamas >> >> >> _______________________________________________ >> Freeswitch-dev mailing list >> Freeswitch-dev at lists.freeswitch.org >> >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> >> >> >> >> -- >> Anthony Minessale II >> >> FreeSWITCH http://www.freeswitch.org/ >> ClueCon http://www.cluecon.com/ >> >> AIM: anthm >> MSN:anthony_minessale at hotmail.com >> >> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com >> >> IRC: irc.freenode.net #freeswitch >> >> FreeSWITCH Developer Conference >> sip:888 at conference.freeswitch.org >> >> iax:guest at conference.freeswitch.org/888 >> >> googletalk:conf+888 at conference.freeswitch.org >> >> pstn:213-799-1400 >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Freeswitch-dev mailing list >> Freeswitch-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch- >> dev >> http://www.freeswitch.org >> > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From jalsot at gmail.com Thu Jul 2 08:05:33 2009 From: jalsot at gmail.com (Tamas) Date: Thu, 02 Jul 2009 17:05:33 +0200 Subject: [Freeswitch-dev] crash running the core twice in one process In-Reply-To: <8FDD1794-D294-4D1B-B0DC-278C2DCAB6C7@avgs.ca> References: <4A4BE8BC.3060903@gmail.com> <191c3a030907011600k444ed904vc54f12672ae05fed@mail.gmail.com> <4A4CC868.3040501@gmail.com> <8FDD1794-D294-4D1B-B0DC-278C2DCAB6C7@avgs.ca> Message-ID: <4A4CCCBD.6020104@gmail.com> I'm working on an application which starts FS core in a new thread (upon request) and there is a need to change some configuration options runtime runtime (core settings) for which I have to restart the core, I believe. My idea was to issue shutdown command to the core (which I do), tear down the whole thread in which FS was started and start a new thread, etc. For this scenario I was playing with fshost example. Regards, Tamas ps: I'm playing with the 2nd issue, FS teardown and crash due to mod_portaudio. Mathieu Rene ?rta: > Why exactly do you want to restart the whole core? FS is modular > enough so you can restart it per module. > > Math > > On 2-Jul-09, at 10:47 AM, Tamas wrote: > > >> Hi, >> >> I started with switch.c and saw execv lines. This works for sure. >> What I >> don't know is that why the way I'm doing does not work, what have I >> missed. >> My original problem is that when I tear down FS core started in a >> thread, there is no issue, however when I tear down the thread FS core >> was running in, I'm getting segfault which is similar to what I was >> able >> to reproduce with this fshost example (when I don't have FS >> initiated in >> that thread, thread tearing works fine). >> >> ... >> 2009-07-02 16:41:08.777480 [CONSOLE] switch_core_sqldb.c:593 Waiting >> for >> unfinished SQL transactions >> 2009-07-02 16:41:08.777576 [NOTICE] switch_core_sqldb.c:199 SQL thread >> ending >> 2009-07-02 16:41:08.787766 [CONSOLE] switch_scheduler.c:305 Stopping >> Task Thread >> 2009-07-02 16:41:09.190129 [DEBUG] switch_scheduler.c:138 Deleting >> task >> 1 heartbeat (core) >> 2009-07-02 16:41:09.253047 [NOTICE] switch_scheduler.c:176 Task thread >> ending >> 2009-07-02 16:41:09.288623 [CONSOLE] switch_core.c:1656 Closing Event >> Engine. >> 2009-07-02 16:41:09.288746 [CONSOLE] switch_event.c:468 Stopping event >> queue 0 >> 2009-07-02 16:41:09.288801 [CONSOLE] switch_event.c:468 Stopping event >> queue 1 >> 2009-07-02 16:41:09.288844 [CONSOLE] switch_event.c:468 Stopping event >> queue 2 >> 2009-07-02 16:41:09.288888 [CONSOLE] switch_event.c:325 Event Thread 1 >> Ended. >> 2009-07-02 16:41:09.288884 [CONSOLE] switch_event.c:474 Stopping >> dispatch queue 0 >> 2009-07-02 16:41:09.289079 [CONSOLE] switch_event.c:263 Dispatch >> Thread >> 0 Ended. >> 2009-07-02 16:41:09.289312 [CONSOLE] switch_event.c:325 Event Thread 2 >> Ended. >> 2009-07-02 16:41:09.290423 [CONSOLE] switch_event.c:492 Stopping >> dispatch thread 0 >> 2009-07-02 16:41:09.290471 [CONSOLE] switch_event.c:506 Stopping queue >> thread 0 >> 2009-07-02 16:41:09.288922 [CONSOLE] switch_event.c:325 Event Thread 0 >> Ended. >> 2009-07-02 16:41:09.345453 [CONSOLE] switch_event.c:506 Stopping queue >> thread 1 >> 2009-07-02 16:41:09.345510 [CONSOLE] switch_event.c:506 Stopping queue >> thread 2 >> 2009-07-02 16:41:09.345561 [CONSOLE] switch_core.c:1659 Finalizing >> Shutdown. >> 2009-07-02 16:41:09.345697 [CONSOLE] switch_log.c:255 Logger Ended. >> 2009-07-02 16:41:09.347192 [CONSOLE] switch_core_memory.c:567 Stopping >> memory pool queue. >> Initializing globals... >> Initializing core... >> 2009-07-02 16:41:09.448524 [INFO] switch_event.c:565 Activate Eventing >> Engine. >> Szegmens hiba (core dumped) >> >> Core was generated by `./fshost'. >> Program terminated with signal 11, Segmentation fault. >> #0 0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8, >> data=0x17cf600) at misc/apr_queue.c:215 >> 215 if (queue->terminated) { >> (gdb) bt >> #0 0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8, >> data=0x17cf600) at misc/apr_queue.c:215 >> #1 0x00007fce6f86c64a in switch_queue_trypush (queue=0x7fce6d54c5a8, >> data=0x17cf600) at src/switch_apr.c:931 >> #2 0x00007fce6f8a3ab8 in switch_event_thread (thread=0x1bd5028, >> obj=0x17bdb38) at src/switch_event.c:305 >> #3 0x00007fce6f910c01 in dummy_worker (opaque=0x1bd5028) at >> threadproc/unix/thread.c:138 >> #4 0x00007fce6ec5d3ba in start_thread () from /lib/libpthread.so.0 >> #5 0x00007fce6f59bfcd in clone () from /lib/libc.so.6 >> #6 0x0000000000000000 in ?? () >> (gdb) bt full >> #0 0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8, >> data=0x17cf600) at misc/apr_queue.c:215 >> rv = 0 >> #1 0x00007fce6f86c64a in switch_queue_trypush (queue=0x7fce6d54c5a8, >> data=0x17cf600) at src/switch_apr.c:931 >> s = 0 >> #2 0x00007fce6f8a3ab8 in switch_event_thread (thread=0x1bd5028, >> obj=0x17bdb38) at src/switch_event.c:305 >> pop = 0x17cf600 >> event = 0x17cf600 >> queue = 0x17bdb38 >> index = 0 >> my_id = 0 >> __func__ = "switch_event_thread" >> #3 0x00007fce6f910c01 in dummy_worker (opaque=0x1bd5028) at >> threadproc/unix/thread.c:138 >> thread = 0x1bd5028 >> #4 0x00007fce6ec5d3ba in start_thread () from /lib/libpthread.so.0 >> No symbol table info available. >> #5 0x00007fce6f59bfcd in clone () from /lib/libc.so.6 >> No symbol table info available. >> #6 0x0000000000000000 in ?? () >> No symbol table info available. >> (gdb) >> >> >> New info: for the shutdown issue (a different one) I've found that >> when >> I don't load mod_portaudio, there is no segfault on shutdown, it tears >> down everything cleanly. For the fshost issue the same did not have >> any >> effect. >> Is there any know practice how to debug such thing? >> >> I'll keep working on these issues... >> >> Regards, >> Tamas >> >> >> Anthony Minessale ?rta: >> >>> look in switch.c >>> >>> we do it when you say "fsctl shutdown restart" and it works fine over >>> and over. >>> >>> >>> >>> On Wed, Jul 1, 2009 at 5:52 PM, Tamas >> > wrote: >>> >>> Hello, >>> >>> I'm trying to embed FS in a C application where I should have to >>> restart >>> the whole stuff (core) in one process/thread, however it >>> crashes. I >>> assume, something is not freed up before the new startup. I've >>> used >>> mrene's fshost example to reproduce the issue: >>> >>> Index: contrib/mrene/fshost/main.c >>> >>> =================================================================== >>> --- contrib/mrene/fshost/main.c (revision 14092) >>> +++ contrib/mrene/fshost/main.c (working copy) >>> -82,7 +82,34 @@ >>> >>> ret = system(buf); >>> } >>> + >>> + >>> + /* Here I start my 2nd start */ >>> + >>> + /* Initialize libs & globals */ >>> + printf("Initializing globals...\n"); >>> + switch_core_setrlimits(); >>> + switch_core_set_globals(); >>> >>> + /* If you need to override configuration directories, you >>> need to >>> change them in the SWITCH_GLOBAL_dirs global structure */ >>> + printf("Initializing core...\n"); >>> + /* Initialize the core and load modules, that will startup FS >>> completely */ >>> + if (switch_core_init_and_modload(flags, console, &err) != >>> SWITCH_STATUS_SUCCESS) { >>> + fprintf(stderr, "Failed to initialize FreeSWITCH's core: >>> %s\n", >>> err); >>> + return 1; >>> + } >>> + >>> + printf("Everything OK, Entering runtime loop.\n"); >>> + >>> + fflush(stdout); >>> + >>> + /* Go into the runtime loop. If the argument is true, this >>> basically sets runtime.running = 1 and loops while that is set >>> + * If its false, it initializes the libedit for the >>> console, then >>> does the same thing >>> + */ >>> + switch_core_runtime_loop(!console); >>> + >>> + /* When the runtime loop exits, its time to shutdown */ >>> + destroy_status = switch_core_destroy(); >>> return ret; >>> } >>> >>> -95,4 +122,4 @@ >>> * End: >>> * For VIM: >>> * vim:set softtabstop=4 shiftwidth=4 tabstop=4: >>> - */ >>> \ No newline at end of file >>> + */ >>> >>> >>> Here are some gdb backtraces: >>> >>> (gdb) bt >>> #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, >>> data=0x12b4b60) at misc/apr_queue.c:215 >>> #1 0x00007fb418c0464a in switch_queue_trypush >>> (queue=0x7fb4168e45a8, >>> data=0x12b4b60) at src/switch_apr.c:931 >>> #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, >>> obj=0x12b8398) at src/switch_event.c:305 >>> #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at >>> threadproc/unix/thread.c:138 >>> #4 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> #6 0x0000000000000000 in ?? () >>> (gdb) bt full >>> #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, >>> data=0x12b4b60) at misc/apr_queue.c:215 >>> rv = 0 >>> #1 0x00007fb418c0464a in switch_queue_trypush >>> (queue=0x7fb4168e45a8, >>> data=0x12b4b60) at src/switch_apr.c:931 >>> s = 0 >>> #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, >>> obj=0x12b8398) at src/switch_event.c:305 >>> pop = 0x12b4b60 >>> event = 0x12b4b60 >>> queue = 0x12b8398 >>> index = 0 >>> my_id = 0 >>> __func__ = "switch_event_thread" >>> #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at >>> threadproc/unix/thread.c:138 >>> thread = 0x1663a98 >>> #4 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> No symbol table info available. >>> #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> No symbol table info available. >>> #6 0x0000000000000000 in ?? () >>> No symbol table info available. >>> >>> >>> (gdb) thread apply all bt >>> >>> Thread 5 (Thread 31286): >>> #0 0x00007fb41892c742 in select () from /lib/libc.so.6 >>> #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/ >>> time.c:246 >>> #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/ >>> switch_time.c:109 >>> #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at >>> src/switch_time.c:178 >>> #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, >>> obj=0x0) at >>> src/switch_core_memory.c:531 >>> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at >>> threadproc/unix/thread.c:138 >>> #6 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> #8 0x0000000000000000 in ?? () >>> >>> Thread 4 (Thread 31264): >>> #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from >>> /lib/libpthread.so.0 >>> #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/ >>> libpthread.so.0 >>> #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from >>> /lib/libpthread.so.0 >>> #3 0x00007fb418ca12de in apr_thread_mutex_unlock >>> (mutex=0x12b83d8) at >>> locks/unix/thread_mutex.c:121 >>> #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, >>> data=0x12b4b60) at misc/apr_queue.c:242 >>> #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, >>> data=0x12b4b60) at src/switch_apr.c:931 >>> #6 0x00007fb418c3dfe8 in switch_event_fire_detailed >>> (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 >>> "switch_xml_open_root", line=1918, event=0x7fff211d0a58, >>> user_data=0x0) >>> at src/switch_event.c:1128 >>> #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', >>> err=0x7fff211d1110) at src/switch_xml.c:1918 >>> #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, >>> err=0x7fff211d1110) at src/switch_xml.c:1945 >>> #9 0x00007fb418c2d78f in switch_core_init (flags=1, >>> console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 >>> #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, >>> console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 >>> #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at >>> main.c:97 >>> >>> Thread 3 (Thread 31288): >>> #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from >>> /lib/libpthread.so.0 >>> #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, >>> mutex=0x14dbab8) at locks/unix/thread_cond.c:68 >>> #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, >>> data=0x7fb41676c0b8) at misc/apr_queue.c:276 >>> #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, >>> data=0x7fb41676c0b8) at src/switch_apr.c:902 >>> #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, >>> obj=0x14dba78) at src/switch_event.c:289 >>> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at >>> threadproc/unix/thread.c:138 >>> #6 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> #8 0x0000000000000000 in ?? () >>> >>> Thread 2 (Thread 31289): >>> #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from >>> /lib/libpthread.so.0 >>> #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, >>> mutex=0x159fac8) at locks/unix/thread_cond.c:68 >>> #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, >>> data=0x7fb4167a80b8) at misc/apr_queue.c:276 >>> #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, >>> data=0x7fb4167a80b8) at src/switch_apr.c:902 >>> #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, >>> obj=0x159fa88) at src/switch_event.c:289 >>> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at >>> threadproc/unix/thread.c:138 >>> #6 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> #8 0x0000000000000000 in ?? () >>> >>> Thread 1 (Thread 31287): >>> #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, >>> data=0x12b4b60) at misc/apr_queue.c:215 >>> #1 0x00007fb418c0464a in switch_queue_trypush >>> (queue=0x7fb4168e45a8, >>> data=0x12b4b60) at src/switch_apr.c:931 >>> #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, >>> obj=0x12b8398) at src/switch_event.c:305 >>> #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at >>> threadproc/unix/thread.c:138 >>> #4 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> #6 0x0000000000000000 in ?? () >>> >>> (gdb) thread apply all bt full >>> >>> Thread 5 (Thread 31286): >>> #0 0x00007fb41892c742 in select () from /lib/libc.so.6 >>> No symbol table info available. >>> #1 0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/ >>> time.c:246 >>> tv = {tv_sec = 0, tv_usec = 88462} >>> #2 0x00007fb418c7aba5 in do_sleep (t=100000) at src/ >>> switch_time.c:109 >>> No locals. >>> #3 0x00007fb418c7ad95 in switch_sleep (t=100000) at >>> src/switch_time.c:178 >>> No locals. >>> #4 0x00007fb418c16b75 in pool_thread (thread=0x1417ff8, >>> obj=0x0) at >>> src/switch_core_memory.c:531 >>> len = 0 >>> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at >>> threadproc/unix/thread.c:138 >>> thread = 0x1417ff8 >>> #6 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> No symbol table info available. >>> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> No symbol table info available. >>> #8 0x0000000000000000 in ?? () >>> No symbol table info available. >>> >>> Thread 4 (Thread 31264): >>> #0 0x00007fb417ffbbc5 in __lll_unlock_wake () from >>> /lib/libpthread.so.0 >>> No symbol table info available. >>> #1 0x00007fb417ff85c9 in _L_unlock_56 () from /lib/ >>> libpthread.so.0 >>> No symbol table info available. >>> #2 0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from >>> /lib/libpthread.so.0 >>> No symbol table info available. >>> #3 0x00007fb418ca12de in apr_thread_mutex_unlock >>> (mutex=0x12b83d8) at >>> locks/unix/thread_mutex.c:121 >>> status = 0 >>> #4 0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398, >>> data=0x12b4b60) at misc/apr_queue.c:242 >>> rv = 0 >>> #5 0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398, >>> data=0x12b4b60) at src/switch_apr.c:931 >>> s = 0 >>> #6 0x00007fb418c3dfe8 in switch_event_fire_detailed >>> (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0 >>> "switch_xml_open_root", line=1918, event=0x7fff211d0a58, >>> user_data=0x0) >>> at src/switch_event.c:1128 >>> was = 0 >>> index = 0 >>> __PRETTY_FUNCTION__ = "switch_event_fire_detailed" >>> __func__ = "switch_event_fire_detailed" >>> #7 0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0', >>> err=0x7fff211d1110) at src/switch_xml.c:1918 >>> event = 0x12b4b60 >>> path_buf = >>> "/opt/freeswitch/conf/freeswitch.xml >>> \0\0\0\0\0\340\33\"\1\0\0\0\0\0\320\34\31\264\177\0\0)'\214\30\264\177\0\0\6\0\0\0\b\0\0\1\200\247\273\30\264\177\0\0\0\0\0\0\0\0\0\0\340\33\"\1\0\0\0\0O\0\0\0\0\0\0\0\271\24\214\0\0\4\0\0`\6\35!\377\177\0\0@\16\35!\377\177\0\0\340\33\"\1\0\0\0\0\0\272\273\30\264\177\0\0p\r\35!\377\177\0\0`\v@\0\0\0\0\0 >>> \26\35!\377\177", '\0' , >>> "v\202\214\30\264\177\0\0\71\0\0\0\0\0\0\0\224\t >>> \307 >>> \30 >>> \264 >>> \177 >>> \0 >>> \0 >>> \65 >>> \2 >>> \0 >>> \0 >>> \60 >>> \0 >>> \0 >>> \0 >>> \200 >>> \0 >>> \0 >>> \0\377\177\0\0\6\0\325\30\264\177\0\0\263\352\16\0\377\177\0\0\320\v >>> \35!\377"... >>> hasmain = 0 '\0' >>> errcnt = 0 '\0' >>> new_main = 0x1221ca0 >>> r = 0x0 >>> __func__ = "switch_xml_open_root" >>> #8 0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8, >>> err=0x7fff211d1110) at src/switch_xml.c:1945 >>> xml = 0x12b8338 >>> __PRETTY_FUNCTION__ = "switch_xml_init" >>> ---Type to continue, or q to quit--- >>> #9 0x00007fb418c2d78f in switch_core_init (flags=1, >>> console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231 >>> uuid = {data = "\0\0\0\0\0\0\0\0\200\247\273\30\264\177\0"} >>> guess_ip = "::1\0\61\66\70.69.69", '\0' >> times>"\331, >>> _ >>> \222 >>> \30 >>> \264 >>> \177 >>> \0\0\0\0\0\0\0\0\0\0\25\0\0\0\0\0\0\0\0\320\34\31\264\177\0\0\25", >>> '\0' , "J\30\214\30\264\177\0" >>> dir_path = 0x0 >>> mask = 16777215 >>> in = {s_addr = 16777215} >>> __PRETTY_FUNCTION__ = "switch_core_init" >>> #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1, >>> console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422 >>> event = 0x400b60 >>> __func__ = "switch_core_init_and_modload" >>> #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at >>> main.c:97 >>> flags = 1 >>> err = 0x7fb418d56314 "Success" >>> console = SWITCH_TRUE >>> destroy_status = SWITCH_STATUS_SUCCESS >>> ret = 0 >>> __PRETTY_FUNCTION__ = "main" >>> >>> Thread 3 (Thread 31288): >>> #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from >>> /lib/libpthread.so.0 >>> No symbol table info available. >>> #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08, >>> mutex=0x14dbab8) at locks/unix/thread_cond.c:68 >>> rv = 0 >>> #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78, >>> data=0x7fb41676c0b8) at misc/apr_queue.c:276 >>> rv = 0 >>> #3 0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78, >>> data=0x7fb41676c0b8) at src/switch_apr.c:902 >>> No locals. >>> #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8, >>> obj=0x14dba78) at src/switch_event.c:289 >>> pop = 0x0 >>> event = 0x0 >>> queue = 0x14dba78 >>> index = 0 >>> my_id = 1 >>> __func__ = "switch_event_thread" >>> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at >>> threadproc/unix/thread.c:138 >>> thread = 0x1663ac8 >>> #6 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> No symbol table info available. >>> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> No symbol table info available. >>> #8 0x0000000000000000 in ?? () >>> No symbol table info available. >>> >>> Thread 2 (Thread 31289): >>> #0 0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from >>> /lib/libpthread.so.0 >>> No symbol table info available. >>> #1 0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18, >>> mutex=0x159fac8) at locks/unix/thread_cond.c:68 >>> rv = 0 >>> #2 0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88, >>> data=0x7fb4167a80b8) at misc/apr_queue.c:276 >>> rv = 0 >>> #3 0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88, >>> data=0x7fb4167a80b8) at src/switch_apr.c:902 >>> No locals. >>> #4 0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8, >>> obj=0x159fa88) at src/switch_event.c:289 >>> ---Type to continue, or q to quit--- >>> pop = 0x0 >>> event = 0x0 >>> queue = 0x159fa88 >>> index = 0 >>> my_id = 2 >>> __func__ = "switch_event_thread" >>> #5 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at >>> threadproc/unix/thread.c:138 >>> thread = 0x1663af8 >>> #6 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> No symbol table info available. >>> #7 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> No symbol table info available. >>> #8 0x0000000000000000 in ?? () >>> No symbol table info available. >>> >>> Thread 1 (Thread 31287): >>> #0 0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8, >>> data=0x12b4b60) at misc/apr_queue.c:215 >>> rv = 0 >>> #1 0x00007fb418c0464a in switch_queue_trypush >>> (queue=0x7fb4168e45a8, >>> data=0x12b4b60) at src/switch_apr.c:931 >>> s = 0 >>> #2 0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98, >>> obj=0x12b8398) at src/switch_event.c:305 >>> pop = 0x12b4b60 >>> event = 0x12b4b60 >>> queue = 0x12b8398 >>> index = 0 >>> my_id = 0 >>> __func__ = "switch_event_thread" >>> #3 0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at >>> threadproc/unix/thread.c:138 >>> thread = 0x1663a98 >>> #4 0x00007fb417ff53ba in start_thread () from /lib/ >>> libpthread.so.0 >>> No symbol table info available. >>> #5 0x00007fb418933fcd in clone () from /lib/libc.so.6 >>> No symbol table info available. >>> #6 0x0000000000000000 in ?? () >>> No symbol table info available. >>> >>> >>> FS svn r14092, gcc-4.3.3, x86_64 >>> >>> Any idea what should I add to free up everything after shutdown >>> and lets >>> start with "blank list"? >>> >>> Thanks in advance, >>> Tamas >>> >>> >>> _______________________________________________ >>> Freeswitch-dev mailing list >>> Freeswitch-dev at lists.freeswitch.org >>> >>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >>> http://www.freeswitch.org >>> >>> >>> >>> >>> -- >>> Anthony Minessale II >>> >>> FreeSWITCH http://www.freeswitch.org/ >>> ClueCon http://www.cluecon.com/ >>> >>> AIM: anthm >>> MSN:anthony_minessale at hotmail.com >>> >>> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com >>> >>> IRC: irc.freenode.net #freeswitch >>> >>> FreeSWITCH Developer Conference >>> sip:888 at conference.freeswitch.org >>> >>> iax:guest at conference.freeswitch.org/888 >>> >>> googletalk:conf+888 at conference.freeswitch.org >>> >>> pstn:213-799-1400 >>> ------------------------------------------------------------------------ >>> >>> _______________________________________________ >>> Freeswitch-dev mailing list >>> Freeswitch-dev at lists.freeswitch.org >>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch- >>> dev >>> http://www.freeswitch.org >>> >>> >> _______________________________________________ >> Freeswitch-dev mailing list >> Freeswitch-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > From rentmycoder at gmail.com Mon Jul 6 16:11:04 2009 From: rentmycoder at gmail.com (rentmycoder rentmycoder) Date: Tue, 7 Jul 2009 01:11:04 +0200 Subject: [Freeswitch-dev] access session variables after hangup Message-ID: <50e456910907061611u4740bc4by7f399b1675c4537a@mail.gmail.com> I woud like to do some processing after hangup like in asterisk on the "h,1,..." extension. If I try to exec a lua script using api_hangup_hook, the the session will be nil in: number = session:getVariable("caller_id_number") If I try to transfer the call using the transfer commmand, I got "invalid command" error. Any other idea to do some processing after hangup? From brian at freeswitch.org Mon Jul 6 16:23:04 2009 From: brian at freeswitch.org (Brian West) Date: Mon, 6 Jul 2009 18:23:04 -0500 Subject: [Freeswitch-dev] access session variables after hangup In-Reply-To: <50e456910907061611u4740bc4by7f399b1675c4537a@mail.gmail.com> References: <50e456910907061611u4740bc4by7f399b1675c4537a@mail.gmail.com> Message-ID: <15530845-E7B8-4498-AF15-5707EFE81B1C@freeswitch.org> You usually don't do billing inline its a bad idea to mix the business logic like that with billing. What exactly are you looking at doing in hangup.lua? /b On Jul 6, 2009, at 6:11 PM, rentmycoder rentmycoder wrote: > I woud like to do some processing after hangup like in asterisk on the > "h,1,..." extension. > > If I try to exec a lua script using api_hangup_hook, the the session > will be nil in: > number = session:getVariable("caller_id_number") > > If I try to transfer the call using the transfer commmand, I got > "invalid command" error. > > > > > > Any other idea to do some processing after hangup? From brian at freeswitch.org Tue Jul 7 08:28:35 2009 From: brian at freeswitch.org (Brian West) Date: Tue, 7 Jul 2009 10:28:35 -0500 Subject: [Freeswitch-dev] Fwd: [UniMRCP] Flite Plugin Available References: <892298.53232.qm@web111312.mail.gq1.yahoo.com> Message-ID: <1442D19E-110B-4757-B061-898C960272C2@freeswitch.org> Arsen just keeps em coming... Thank you! /b Begin forwarded message: > From: Arsen Chaloyan > Date: July 7, 2009 10:20:13 AM CDT > To: Brian West > Subject: Fw: [UniMRCP] Flite Plugin Available > > > > ----- Forwarded Message ---- > From: Arsen Chaloyan > To: UniMRCP > Cc: unimrcp-announcements at googlegroups.com > Sent: Tuesday, July 7, 2009 8:16:16 PM > Subject: [UniMRCP] Flite Plugin Available > > I would like to announce the availability of Flite TTS plugin for > UniMRCP server. > Special thanks goes to Garmt, who initially contributed and helped > develop the plugin. > > Currently supported TTS features are as follows: > > English voices: > awb > kal > rms > slt > Methods: > SPEAK > STOP > PAUSE > RESUME > BARGE-IN-OCCURRED > Events: > SPEAK-COMPLETE > Synthesizer Speech Data: > text/plain > > For the instructions on how to build and configure Flite with > UniMRCP refer to > http://code.google.com/p/unimrcp/wiki/FlitePlugin > > Please note, everything is working now, nevertheless this is basic > availability only. > I have mostly tested the integrated solution in the following setup > SIPPhone -> FreeSWITCH/UniMRCPClient -> UniMRCPServer/Flite > > > Feedback is welcome. > Thanks, > > -- > Arsen Chaloyan > The author of UniMRCP > http://www.unimrcp.org > > --~--~---------~--~----~------------~-------~--~----~ > You received this message because you are subscribed to the Google > Groups "UniMRCP" group. > To post to this group, send email to unimrcp at googlegroups.com > To unsubscribe from this group, send email to unimrcp+unsubscribe at googlegroups.com > For more options, visit this group at http://groups.google.com/group/unimrcp?hl=en > -~----------~----~----~----~------~----~------~--~--- > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090707/f00595ab/attachment.html From msc at freeswitch.org Tue Jul 7 10:59:00 2009 From: msc at freeswitch.org (Michael Collins) Date: Tue, 7 Jul 2009 10:59:00 -0700 Subject: [Freeswitch-dev] Follow FreeSWITCH_wire on Twitter! Message-ID: <87f2f3b90907071059j3a45a7d0x1d727e0f51c35b39@mail.gmail.com> Okay everyone, spread the word: we have a Twitter channel for everyone to follow. It's called "FreeSWITCH_wire" and it's were you'll see up-to-the minute updates on FreeSWITCH development, new releases, important news and the like. Everyone go follow FreeSWITCH_wire right now, and don't forget to tell everyone in the VoIP world that they need to follow it as well! -Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090707/a8c3d823/attachment.html From string01 at gmail.com Tue Jul 7 13:05:06 2009 From: string01 at gmail.com (String Larson) Date: Tue, 7 Jul 2009 15:05:06 -0500 Subject: [Freeswitch-dev] DPTools doco Message-ID: On this page: http://wiki.freeswitch.org/wiki/Misc._Dialplan_Tools_record_session Very well done sir. I knew I was in the right place when I saw this. -str From kevin.snow at ooma.com Thu Jul 9 15:36:45 2009 From: kevin.snow at ooma.com (Kevin Snow) Date: Thu, 09 Jul 2009 15:36:45 -0700 Subject: [Freeswitch-dev] Re-Routing to a new dialplan In-Reply-To: <191c3a030906160906w6ad8f5b1wb291e71a7ca80080@mail.gmail.com> Message-ID: I?m working on a module in C and I?ve hit a little bit of a stumbling block. I have a situation where I receive an event and in response I want to send a known session to a new dialplan eventhough it?s somewhere in the middle of another dialplan. I can?t find examples of doing this in C. Are there examples of doing this or am I going about this the wrong way. Thanks in advance! Kevin Snow -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090709/b95c2f1d/attachment.html From anthony.minessale at gmail.com Thu Jul 9 16:03:46 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Thu, 9 Jul 2009 18:03:46 -0500 Subject: [Freeswitch-dev] Re-Routing to a new dialplan In-Reply-To: References: <191c3a030906160906w6ad8f5b1wb291e71a7ca80080@mail.gmail.com> Message-ID: <191c3a030907091603v3d5422ccsa2f58074d9f1c391@mail.gmail.com> look for switch_ivr_session_transfer On Thu, Jul 9, 2009 at 5:36 PM, Kevin Snow wrote: > > I?m working on a module in C and I?ve hit a little bit of a stumbling > block. I have a situation where I receive an event and in response I want to > send a known session to a new dialplan eventhough it?s somewhere in the > middle of another dialplan. I can?t find examples of doing this in C. > > Are there examples of doing this or am I going about this the wrong way. > > Thanks in advance! > > Kevin Snow > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090709/36a31ead/attachment.html From mrene_lists at avgs.ca Thu Jul 9 18:23:03 2009 From: mrene_lists at avgs.ca (Mathieu Rene) Date: Thu, 9 Jul 2009 21:23:03 -0400 Subject: [Freeswitch-dev] Re-Routing to a new dialplan In-Reply-To: References: Message-ID: If you are in an event you need to get a ptr to the session then use switch_ivr_session_transfer() Like: switch_core_session_t *session; const char *destination = "dest"; const char *dialplan = "XML"; const char *context = "default"; if ((session = switch_core_session_locate(uuid_here)) { /* The condition will catch race conditions where you get the event a couple milliseconds after the call has hung up */ switch_ivr_session_transfer(session, destination, dialplan, context); switch_core_session_rwunlock(session); } Definition: (in switch_ivr.h) /*! \brief Transfer an existing session to another location \param session the session to transfer \param extension the new extension \param dialplan the new dialplan (OPTIONAL, may be NULL) \param context the new context (OPTIONAL, may be NULL) */ SWITCH_DECLARE(switch_status_t) switch_ivr_session_transfer(_In_ switch_core_session_t *session, const char *extension, const char *dialplan, const char *context); Math On 9-Jul-09, at 6:36 PM, Kevin Snow wrote: > > I?m working on a module in C and I?ve hit a little bit of a > stumbling block. I have a situation where I receive an event and in > response I want to send a known session to a new dialplan eventhough > it?s somewhere in the middle of another dialplan. I can?t find > examples of doing this in C. > > Are there examples of doing this or am I going about this the wrong > way. > > Thanks in advance! > > Kevin Snow > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090709/b6502ce8/attachment-0001.html From shaheryarkh at googlemail.com Thu Jul 9 22:55:17 2009 From: shaheryarkh at googlemail.com (Muhammad Shahzad) Date: Fri, 10 Jul 2009 11:55:17 +0600 Subject: [Freeswitch-dev] Interactive Connectivity Establishment (ICE) support in FS Message-ID: Hi, Do we have ICE support in FreeSWITCH. If so, any module as example that is using it? If not then i would like to write one for my mod_msn module, do we have any FS API that i would need to implement in this case? Thank you. -- Muhammad Shahzad ----------------------------------- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +92 334 422 40 88 MSN: shari_786pk at hotmail.com Email: shaheryarkh at googlemail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090710/10ceea11/attachment.html From anthony.minessale at gmail.com Fri Jul 10 06:07:11 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Fri, 10 Jul 2009 08:07:11 -0500 Subject: [Freeswitch-dev] Interactive Connectivity Establishment (ICE) support in FS In-Reply-To: References: Message-ID: <191c3a030907100607x2c93d553kb950ecfdef102832@mail.gmail.com> the rtp stack has ice but it was the googletalk idea of ice so i am not sure it's the same. On Fri, Jul 10, 2009 at 12:55 AM, Muhammad Shahzad < shaheryarkh at googlemail.com> wrote: > Hi, > > Do we have ICE support in FreeSWITCH. If so, any module as example that is > using it? If not then i would like to write one for my mod_msn module, do we > have any FS API that i would need to implement in this case? > > Thank you. > > > -- > Muhammad Shahzad > ----------------------------------- > CISCO Rich Media Communication Specialist (CRMCS) > CISCO Certified Network Associate (CCNA) > Cell: +92 334 422 40 88 > MSN: shari_786pk at hotmail.com > Email: shaheryarkh at googlemail.com > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090710/e82db82d/attachment.html From string01 at gmail.com Fri Jul 10 07:40:19 2009 From: string01 at gmail.com (String Larson) Date: Fri, 10 Jul 2009 09:40:19 -0500 Subject: [Freeswitch-dev] access session variables after hangup In-Reply-To: <50e456910907061611u4740bc4by7f399b1675c4537a@mail.gmail.com> References: <50e456910907061611u4740bc4by7f399b1675c4537a@mail.gmail.com> Message-ID: <193D59A0-98B4-4608-9657-1727B5AEF8A3@gmail.com> You may want to look at moving more of your dialplan logic into lua so that you can gain control after the bridge. On Jul 6, 2009, at 6:11 PM, rentmycoder rentmycoder wrote: > I woud like to do some processing after hangup like in asterisk on the > "h,1,..." extension. > > If I try to exec a lua script using api_hangup_hook, the the session > will be nil in: > number = session:getVariable("caller_id_number") > > If I try to transfer the call using the transfer commmand, I got > "invalid command" error. > > > > > > Any other idea to do some processing after hangup? > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From brian at freeswitch.org Fri Jul 10 07:45:19 2009 From: brian at freeswitch.org (Brian West) Date: Fri, 10 Jul 2009 09:45:19 -0500 Subject: [Freeswitch-dev] access session variables after hangup In-Reply-To: <193D59A0-98B4-4608-9657-1727B5AEF8A3@gmail.com> References: <50e456910907061611u4740bc4by7f399b1675c4537a@mail.gmail.com> <193D59A0-98B4-4608-9657-1727B5AEF8A3@gmail.com> Message-ID: Better yet, don't do billing inline with your application logic. :) /b On Jul 10, 2009, at 9:40 AM, String Larson wrote: > > You may want to look at moving more of your dialplan logic into lua so > that you can gain control after the bridge. From marketing at cluecon.com Tue Jul 7 12:14:04 2009 From: marketing at cluecon.com (Michael Collins) Date: Tue, 7 Jul 2009 12:14:04 -0700 Subject: [Freeswitch-dev] ClueCon 2009 Updates - July 7, 2009 Message-ID: <87f2f3b90907071214w60f0d1b0x21d39b7e5ad661ac@mail.gmail.com> Hello folks! We have a few more updates. First of all, if you haven't already heard, we've extended the early bird sign up to go through July 21. That's only two weeks away, so if you haven't already registered then please call us at 877.742.CLUE and we'll get you set up. Secondly, there are some updates on the ClueCon blog: http://cluecon.com/blog/1 The breakfast and lunch menus have been posted. (Subject to change, of course. :) Also, we have a synopsis for Irv Shapiro's talk, entitled "Cloud Telephony" on the latest blog post. Can't wait to see you all in Chicago! -Michael Collins http://www.cluecon.com 877.742.CLUE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090707/a8639017/attachment.html From stpeter at stpeter.im Fri Jul 10 07:50:00 2009 From: stpeter at stpeter.im (Peter Saint-Andre) Date: Fri, 10 Jul 2009 08:50:00 -0600 Subject: [Freeswitch-dev] Interactive Connectivity Establishment (ICE) support in FS In-Reply-To: <191c3a030907100607x2c93d553kb950ecfdef102832@mail.gmail.com> References: <191c3a030907100607x2c93d553kb950ecfdef102832@mail.gmail.com> Message-ID: <4A575518.2040801@stpeter.im> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 7/10/09 7:07 AM, Anthony Minessale wrote: > the rtp stack has ice but it was the googletalk idea of ice so i am not > sure it's the same. I think it would be good to update FreeSWITCH at some point, given that Google Talk will be switching to "real" ICE as described for Jingle in (not that I'm the person to do the work :). Peter - -- Peter Saint-Andre https://stpeter.im/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.8 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAkpXVRgACgkQNL8k5A2w/vwbCwCbB8wbsJr+Q45H31tBeAcnVS7L lZoAniyPbp5Hav1z8W+lVXTvvAHbl5bF =GwCU -----END PGP SIGNATURE----- From shaheryarkh at googlemail.com Fri Jul 10 09:37:18 2009 From: shaheryarkh at googlemail.com (Muhammad Shahzad) Date: Fri, 10 Jul 2009 21:37:18 +0500 Subject: [Freeswitch-dev] Interactive Connectivity Establishment (ICE) support in FS In-Reply-To: <4A575518.2040801@stpeter.im> References: <191c3a030907100607x2c93d553kb950ecfdef102832@mail.gmail.com> <4A575518.2040801@stpeter.im> Message-ID: Yes please enable real ICE support soon. Thank you. On Fri, Jul 10, 2009 at 7:50 PM, Peter Saint-Andre wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 7/10/09 7:07 AM, Anthony Minessale wrote: > > the rtp stack has ice but it was the googletalk idea of ice so i am not > > sure it's the same. > > I think it would be good to update FreeSWITCH at some point, given that > Google Talk will be switching to "real" ICE as described for Jingle in > (not that I'm the person to > do the work :). > > Peter > > - -- > Peter Saint-Andre > https://stpeter.im/ > > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.8 (Darwin) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org > > iEYEARECAAYFAkpXVRgACgkQNL8k5A2w/vwbCwCbB8wbsJr+Q45H31tBeAcnVS7L > lZoAniyPbp5Hav1z8W+lVXTvvAHbl5bF > =GwCU > -----END PGP SIGNATURE----- > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Muhammad Shahzad ----------------------------------- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +92 334 422 40 88 MSN: shari_786pk at hotmail.com Email: shaheryarkh at googlemail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090710/df940725/attachment.html From mike at jerris.com Fri Jul 10 09:41:10 2009 From: mike at jerris.com (Michael Jerris) Date: Fri, 10 Jul 2009 12:41:10 -0400 Subject: [Freeswitch-dev] Interactive Connectivity Establishment (ICE) support in FS In-Reply-To: References: <191c3a030907100607x2c93d553kb950ecfdef102832@mail.gmail.com> <4A575518.2040801@stpeter.im> Message-ID: <9E6E9524-B441-4047-9469-D8A355C2536D@jerris.com> the soonest this would happen would be at some point after google talk supports it. Does anyone know when this is supposed to be? Mike On Jul 10, 2009, at 12:37 PM, Muhammad Shahzad wrote: > Yes please enable real ICE support soon. > > Thank you. > > > On Fri, Jul 10, 2009 at 7:50 PM, Peter Saint-Andre > wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 7/10/09 7:07 AM, Anthony Minessale wrote: > > the rtp stack has ice but it was the googletalk idea of ice so i > am not > > sure it's the same. > > I think it would be good to update FreeSWITCH at some point, given > that > Google Talk will be switching to "real" ICE as described for Jingle in > (not that I'm the person to > do the work :). > > Peter > > - -- > Peter Saint-Andre > https://stpeter.im/ > > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.8 (Darwin) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org > > iEYEARECAAYFAkpXVRgACgkQNL8k5A2w/vwbCwCbB8wbsJr+Q45H31tBeAcnVS7L > lZoAniyPbp5Hav1z8W+lVXTvvAHbl5bF > =GwCU > -----END PGP SIGNATURE----- > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > > > -- > Muhammad Shahzad > ----------------------------------- > CISCO Rich Media Communication Specialist (CRMCS) > CISCO Certified Network Associate (CCNA) > Cell: +92 334 422 40 88 > MSN: shari_786pk at hotmail.com > Email: shaheryarkh at googlemail.com > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090710/36e16aa1/attachment-0001.html From vipkilla at gmail.com Sun Jul 12 08:10:46 2009 From: vipkilla at gmail.com (vip killa) Date: Sun, 12 Jul 2009 11:10:46 -0400 Subject: [Freeswitch-dev] mod_celt Message-ID: <957f61370907120810i160bca5ehbdfd50caf2d3f6eb@mail.gmail.com> I've noticed that freeswitch's mod_celt uses celt version 0.5.1 I am wondering if it would be possible to use the latest version (0.6.0) of celt in mod_celt. I'm asking because ekiga uses version 0.6.0 and it is incompatible with version 0.5.1 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090712/de1dff82/attachment.html From vipkilla at gmail.com Sun Jul 12 09:27:23 2009 From: vipkilla at gmail.com (vip killa) Date: Sun, 12 Jul 2009 12:27:23 -0400 Subject: [Freeswitch-dev] [RECOVERY_ON_TIMER_EXPIRE] Message-ID: <957f61370907120927o74261be8y60134e66b23a2cf4@mail.gmail.com> After 30 seconds or so my call gets disconnected and I get the following error: 2009-07-12 12:20:15.443271 [DEBUG] sofia.c:3244 Channel sofia/internal/ 2000 at 192.168.1.125 entering state [calling][0] 2009-07-12 12:20:47.444496 [DEBUG] sofia.c:3244 Channel sofia/internal/ 2000 at 192.168.1.125 entering state [terminated][408] 2009-07-12 12:20:47.444496 [NOTICE] sofia.c:3804 Hangup sofia/internal/ 2000 at 192.168.1.125 [CS_EXECUTE] [RECOVERY_ON_TIMER_EXPIRE] 2009-07-12 12:20:47.444496 [DEBUG] switch_channel.c:1683 Send signal sofia/internal/2000 at 192.168.1.125 [KILL] 2009-07-12 12:20:47.444496 [DEBUG] switch_core_session.c:932 Send signal sofia/internal/2000 at 192.168.1.125 [BREAK] 2009-07-12 12:20:47.445331 [DEBUG] mod_conference.c:2315 Channel leaving conference, cause: RECOVERY_ON_TIMER_EXPIRE 2009-07-12 12:20:47.445331 [DEBUG] switch_core_codec.c:122 Restore original codec. 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:490 (sofia/internal/2000 at 192.168.1.125) State EXECUTE going to sleep 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:397 (sofia/internal/2000 at 192.168.1.125) Running State Change CS_HANGUP 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:433 (sofia/internal/2000 at 192.168.1.125) State HANGUP 2009-07-12 12:20:47.445331 [DEBUG] mod_sofia.c:306 sofia/internal/ 2000 at 192.168.1.125 Overriding SIP cause 504 with 408 from the other leg 2009-07-12 12:20:47.445331 [DEBUG] mod_sofia.c:338 Channel sofia/internal/ 2000 at 192.168.1.125 hanging up, cause: RECOVERY_ON_TIMER_EXPIRE 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:46 sofia/internal/2000 at 192.168.1.125 Standard HANGUP, cause: RECOVERY_ON_TIMER_EXPIRE 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:433 (sofia/internal/2000 at 192.168.1.125) State HANGUP going to sleep 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:475 (sofia/internal/2000 at 192.168.1.125) State Change CS_HANGUP -> CS_REPORTING 2009-07-12 12:20:47.445331 [DEBUG] switch_core_session.c:932 Send signal sofia/internal/2000 at 192.168.1.125 [BREAK] 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:397 (sofia/internal/2000 at 192.168.1.125) Running State Change CS_REPORTING 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:607 (sofia/internal/2000 at 192.168.1.125) State REPORTING 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:53 sofia/internal/2000 at 192.168.1.125 Standard REPORTING, cause: RECOVERY_ON_TIMER_EXPIRE 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:607 (sofia/internal/2000 at 192.168.1.125) State REPORTING going to sleep 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:410 (sofia/internal/2000 at 192.168.1.125) State Change CS_REPORTING -> CS_DESTROY 2009-07-12 12:20:47.445331 [DEBUG] switch_core_session.c:1066 Session 12 (sofia/internal/2000 at 192.168.1.125) Locked, Waiting on external entities 2009-07-12 12:20:47.445331 [NOTICE] switch_core_session.c:1084 Session 12 (sofia/internal/2000 at 192.168.1.125) Ended 2009-07-12 12:20:47.445331 [NOTICE] switch_core_session.c:1086 Close Channel sofia/internal/2000 at 192.168.1.125 [CS_DESTROY] 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:559 (sofia/internal/2000 at 192.168.1.125) State DESTROY 2009-07-12 12:20:47.445331 [DEBUG] mod_sofia.c:255 sofia/internal/ 2000 at 192.168.1.125 SOFIA DESTROY 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:60 sofia/internal/2000 at 192.168.1.125 Standard DESTROY 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:559 (sofia/internal/2000 at 192.168.1.125) State DESTROY going to sleep Does anyone know why this is happening? -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090712/3cdc1c0b/attachment.html From brian at freeswitch.org Sun Jul 12 11:59:06 2009 From: brian at freeswitch.org (Brian West) Date: Sun, 12 Jul 2009 13:59:06 -0500 Subject: [Freeswitch-dev] [RECOVERY_ON_TIMER_EXPIRE] In-Reply-To: <957f61370907120927o74261be8y60134e66b23a2cf4@mail.gmail.com> References: <957f61370907120927o74261be8y60134e66b23a2cf4@mail.gmail.com> Message-ID: <379B1138-9D37-4C35-9311-9AD43BEBBB46@freeswitch.org> NAT issue its not getting an ACK I would suspect. /b On Jul 12, 2009, at 11:27 AM, vip killa wrote: > After 30 seconds or so my call gets disconnected and I get the > following error: > > 2009-07-12 12:20:15.443271 [DEBUG] sofia.c:3244 Channel sofia/internal/2000 at 192.168.1.125 > entering state [calling][0] > 2009-07-12 12:20:47.444496 [DEBUG] sofia.c:3244 Channel sofia/internal/2000 at 192.168.1.125 > entering state [terminated][408] > 2009-07-12 12:20:47.444496 [NOTICE] sofia.c:3804 Hangup sofia/internal/2000 at 192.168.1.125 > [CS_EXECUTE] [RECOVERY_ON_TIMER_EXPIRE] > 2009-07-12 12:20:47.444496 [DEBUG] switch_channel.c:1683 Send signal sofia/internal/2000 at 192.168.1.125 > [KILL] > 2009-07-12 12:20:47.444496 [DEBUG] switch_core_session.c:932 Send > signal sofia/internal/2000 at 192.168.1.125 [BREAK] > 2009-07-12 12:20:47.445331 [DEBUG] mod_conference.c:2315 Channel > leaving conference, cause: RECOVERY_ON_TIMER_EXPIRE > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_codec.c:122 Restore > original codec. > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:490 (sofia/internal/2000 at 192.168.1.125 > ) State EXECUTE going to sleep > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:397 (sofia/internal/2000 at 192.168.1.125 > ) Running State Change CS_HANGUP > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:433 (sofia/internal/2000 at 192.168.1.125 > ) State HANGUP > 2009-07-12 12:20:47.445331 [DEBUG] mod_sofia.c:306 sofia/internal/2000 at 192.168.1.125 > Overriding SIP cause 504 with 408 from the other leg > 2009-07-12 12:20:47.445331 [DEBUG] mod_sofia.c:338 Channel sofia/internal/2000 at 192.168.1.125 > hanging up, cause: RECOVERY_ON_TIMER_EXPIRE > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:46 sofia/internal/2000 at 192.168.1.125 > Standard HANGUP, cause: RECOVERY_ON_TIMER_EXPIRE > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:433 (sofia/internal/2000 at 192.168.1.125 > ) State HANGUP going to sleep > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:475 (sofia/internal/2000 at 192.168.1.125 > ) State Change CS_HANGUP -> CS_REPORTING > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_session.c:932 Send > signal sofia/internal/2000 at 192.168.1.125 [BREAK] > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:397 (sofia/internal/2000 at 192.168.1.125 > ) Running State Change CS_REPORTING > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:607 (sofia/internal/2000 at 192.168.1.125 > ) State REPORTING > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:53 sofia/internal/2000 at 192.168.1.125 > Standard REPORTING, cause: RECOVERY_ON_TIMER_EXPIRE > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:607 (sofia/internal/2000 at 192.168.1.125 > ) State REPORTING going to sleep > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:410 (sofia/internal/2000 at 192.168.1.125 > ) State Change CS_REPORTING -> CS_DESTROY > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_session.c:1066 > Session 12 (sofia/internal/2000 at 192.168.1.125) Locked, Waiting on > external entities > 2009-07-12 12:20:47.445331 [NOTICE] switch_core_session.c:1084 > Session 12 (sofia/internal/2000 at 192.168.1.125) Ended > 2009-07-12 12:20:47.445331 [NOTICE] switch_core_session.c:1086 Close > Channel sofia/internal/2000 at 192.168.1.125 [CS_DESTROY] > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:559 (sofia/internal/2000 at 192.168.1.125 > ) State DESTROY > 2009-07-12 12:20:47.445331 [DEBUG] mod_sofia.c:255 sofia/internal/2000 at 192.168.1.125 > SOFIA DESTROY > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:60 sofia/internal/2000 at 192.168.1.125 > Standard DESTROY > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:559 (sofia/internal/2000 at 192.168.1.125 > ) State DESTROY going to sleep > > > > Does anyone know why this is happening? > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090712/7f0a0141/attachment.html From brian at freeswitch.org Sun Jul 12 11:59:52 2009 From: brian at freeswitch.org (Brian West) Date: Sun, 12 Jul 2009 13:59:52 -0500 Subject: [Freeswitch-dev] mod_celt In-Reply-To: <957f61370907120810i160bca5ehbdfd50caf2d3f6eb@mail.gmail.com> References: <957f61370907120810i160bca5ehbdfd50caf2d3f6eb@mail.gmail.com> Message-ID: <0933EBE4-23BD-4525-A482-44580A895E8A@freeswitch.org> Its updated to 0.60 now but I doubt they are all that incompatible. I didn't see any warnings of such on the website. /b On Jul 12, 2009, at 10:10 AM, vip killa wrote: > I've noticed that freeswitch's mod_celt uses celt version 0.5.1 > I am wondering if it would be possible to use the latest version > (0.6.0) of celt in mod_celt. > I'm asking because ekiga uses version 0.6.0 and it is incompatible > with version 0.5.1 > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From brian at freeswitch.org Sun Jul 12 12:04:22 2009 From: brian at freeswitch.org (Brian West) Date: Sun, 12 Jul 2009 14:04:22 -0500 Subject: [Freeswitch-dev] mod_celt In-Reply-To: <957f61370907120810i160bca5ehbdfd50caf2d3f6eb@mail.gmail.com> References: <957f61370907120810i160bca5ehbdfd50caf2d3f6eb@mail.gmail.com> Message-ID: btw someone will need to update the windows build to use 0.6.0. /b On Jul 12, 2009, at 10:10 AM, vip killa wrote: > I've noticed that freeswitch's mod_celt uses celt version 0.5.1 > I am wondering if it would be possible to use the latest version > (0.6.0) of celt in mod_celt. > I'm asking because ekiga uses version 0.6.0 and it is incompatible > with version 0.5.1 > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From mike at jerris.com Sun Jul 12 13:37:23 2009 From: mike at jerris.com (Michael Jerris) Date: Sun, 12 Jul 2009 16:37:23 -0400 Subject: [Freeswitch-dev] mod_celt In-Reply-To: <0933EBE4-23BD-4525-A482-44580A895E8A@freeswitch.org> References: <957f61370907120810i160bca5ehbdfd50caf2d3f6eb@mail.gmail.com> <0933EBE4-23BD-4525-A482-44580A895E8A@freeswitch.org> Message-ID: They are bitstream incompatible as confirmed by the author. Mike On Jul 12, 2009, at 2:59 PM, Brian West wrote: > Its updated to 0.60 now but I doubt they are all that incompatible. I > didn't see any warnings of such on the website. > > /b > > On Jul 12, 2009, at 10:10 AM, vip killa wrote: > >> I've noticed that freeswitch's mod_celt uses celt version 0.5.1 >> I am wondering if it would be possible to use the latest version >> (0.6.0) of celt in mod_celt. >> I'm asking because ekiga uses version 0.6.0 and it is incompatible >> with version 0.5.1 >> _______________________________________________ >> Freeswitch-dev mailing list >> Freeswitch-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch- >> dev >> http://www.freeswitch.org > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From vipkilla at gmail.com Sun Jul 12 17:29:15 2009 From: vipkilla at gmail.com (vip killa) Date: Sun, 12 Jul 2009 20:29:15 -0400 Subject: [Freeswitch-dev] [RECOVERY_ON_TIMER_EXPIRE] In-Reply-To: <379B1138-9D37-4C35-9311-9AD43BEBBB46@freeswitch.org> References: <957f61370907120927o74261be8y60134e66b23a2cf4@mail.gmail.com> <379B1138-9D37-4C35-9311-9AD43BEBBB46@freeswitch.org> Message-ID: <957f61370907121729r79863568yb16fbe1d3fabb1d8@mail.gmail.com> thanks i resolved the issue, my sip profiles were out of date. used the svn config and it worked. On Sun, Jul 12, 2009 at 2:59 PM, Brian West wrote: > NAT issue its not getting an ACK I would suspect. > /b > > On Jul 12, 2009, at 11:27 AM, vip killa wrote: > > After 30 seconds or so my call gets disconnected and I get the following > error: > > 2009-07-12 12:20:15.443271 [DEBUG] sofia.c:3244 Channel sofia/internal/ > 2000 at 192.168.1.125 entering state [calling][0] > 2009-07-12 12:20:47.444496 [DEBUG] sofia.c:3244 Channel sofia/internal/ > 2000 at 192.168.1.125 entering state [terminated][408] > 2009-07-12 12:20:47.444496 [NOTICE] sofia.c:3804 Hangup sofia/internal/ > 2000 at 192.168.1.125 [CS_EXECUTE] [RECOVERY_ON_TIMER_EXPIRE] > 2009-07-12 12:20:47.444496 [DEBUG] switch_channel.c:1683 Send signal > sofia/internal/2000 at 192.168.1.125 [KILL] > 2009-07-12 12:20:47.444496 [DEBUG] switch_core_session.c:932 Send signal > sofia/internal/2000 at 192.168.1.125 [BREAK] > 2009-07-12 12:20:47.445331 [DEBUG] mod_conference.c:2315 Channel leaving > conference, cause: RECOVERY_ON_TIMER_EXPIRE > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_codec.c:122 Restore original > codec. > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:490 > (sofia/internal/2000 at 192.168.1.125) State EXECUTE going to sleep > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:397 > (sofia/internal/2000 at 192.168.1.125) Running State Change CS_HANGUP > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:433 > (sofia/internal/2000 at 192.168.1.125) State HANGUP > 2009-07-12 12:20:47.445331 [DEBUG] mod_sofia.c:306 sofia/internal/ > 2000 at 192.168.1.125 Overriding SIP cause 504 with 408 from the other leg > 2009-07-12 12:20:47.445331 [DEBUG] mod_sofia.c:338 Channel sofia/internal/ > 2000 at 192.168.1.125 hanging up, cause: RECOVERY_ON_TIMER_EXPIRE > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:46 > sofia/internal/2000 at 192.168.1.125 Standard HANGUP, cause: > RECOVERY_ON_TIMER_EXPIRE > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:433 > (sofia/internal/2000 at 192.168.1.125) State HANGUP going to sleep > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:475 > (sofia/internal/2000 at 192.168.1.125) State Change CS_HANGUP -> CS_REPORTING > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_session.c:932 Send signal > sofia/internal/2000 at 192.168.1.125 [BREAK] > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:397 > (sofia/internal/2000 at 192.168.1.125) Running State Change CS_REPORTING > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:607 > (sofia/internal/2000 at 192.168.1.125) State REPORTING > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:53 > sofia/internal/2000 at 192.168.1.125 Standard REPORTING, cause: > RECOVERY_ON_TIMER_EXPIRE > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:607 > (sofia/internal/2000 at 192.168.1.125) State REPORTING going to sleep > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:410 > (sofia/internal/2000 at 192.168.1.125) State Change CS_REPORTING -> > CS_DESTROY > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_session.c:1066 Session 12 > (sofia/internal/2000 at 192.168.1.125) Locked, Waiting on external entities > 2009-07-12 12:20:47.445331 [NOTICE] switch_core_session.c:1084 Session 12 > (sofia/internal/2000 at 192.168.1.125) Ended > 2009-07-12 12:20:47.445331 [NOTICE] switch_core_session.c:1086 Close > Channel sofia/internal/2000 at 192.168.1.125 [CS_DESTROY] > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:559 > (sofia/internal/2000 at 192.168.1.125) State DESTROY > 2009-07-12 12:20:47.445331 [DEBUG] mod_sofia.c:255 sofia/internal/ > 2000 at 192.168.1.125 SOFIA DESTROY > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:60 > sofia/internal/2000 at 192.168.1.125 Standard DESTROY > 2009-07-12 12:20:47.445331 [DEBUG] switch_core_state_machine.c:559 > (sofia/internal/2000 at 192.168.1.125) State DESTROY going to sleep > > > > Does anyone know why this is happening? > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090712/f5afaf01/attachment.html From vipkilla at gmail.com Sun Jul 12 17:30:07 2009 From: vipkilla at gmail.com (vip killa) Date: Sun, 12 Jul 2009 20:30:07 -0400 Subject: [Freeswitch-dev] mod_celt In-Reply-To: References: <957f61370907120810i160bca5ehbdfd50caf2d3f6eb@mail.gmail.com> <0933EBE4-23BD-4525-A482-44580A895E8A@freeswitch.org> Message-ID: <957f61370907121730s443be5b2r9ca76c18fb5f3f44@mail.gmail.com> thanks. issue resolved. On Sun, Jul 12, 2009 at 4:37 PM, Michael Jerris wrote: > They are bitstream incompatible as confirmed by the author. > > Mike > > On Jul 12, 2009, at 2:59 PM, Brian West wrote: > > > Its updated to 0.60 now but I doubt they are all that incompatible. I > > didn't see any warnings of such on the website. > > > > /b > > > > On Jul 12, 2009, at 10:10 AM, vip killa wrote: > > > >> I've noticed that freeswitch's mod_celt uses celt version 0.5.1 > >> I am wondering if it would be possible to use the latest version > >> (0.6.0) of celt in mod_celt. > >> I'm asking because ekiga uses version 0.6.0 and it is incompatible > >> with version 0.5.1 > >> _______________________________________________ > >> Freeswitch-dev mailing list > >> Freeswitch-dev at lists.freeswitch.org > >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch- > >> dev > >> http://www.freeswitch.org > > > > > > _______________________________________________ > > Freeswitch-dev mailing list > > Freeswitch-dev at lists.freeswitch.org > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > > http://www.freeswitch.org > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090712/439b2ac2/attachment.html From rentmycoder at gmail.com Mon Jul 13 06:39:35 2009 From: rentmycoder at gmail.com (rentmycoder rentmycoder) Date: Mon, 13 Jul 2009 15:39:35 +0200 Subject: [Freeswitch-dev] access session variables after hangup Message-ID: <50e456910907130639s11be99f2sf3034a2e0c48a81b@mail.gmail.com> I don't care about billing, but do care about very detailed realtime and historical call logging and routing system. xml cdr is not an option since it does not handle certain logging scenarios like call transfers, multy party call conversions, custom call events like recording started or stopped, etc. and it does not handle realtime call routing at all. We try to port our IBM Genesys like PBX and Call Center solution from asterisk to freeswitch, but for this I would need hangup detection. Actually I'm just in the learning phase in the migration process and try to use the fastest ways for the initial testing, that's why I try to use lua. Sorry for this long story :) Should this hangup detection work, I mean am I doing something wrong, or this feature is not implemented yet? If not, what language and method do you suggest to implement robust call routing and history? Thank's for your valuable help in advance! From brian at freeswitch.org Mon Jul 13 06:46:52 2009 From: brian at freeswitch.org (Brian West) Date: Mon, 13 Jul 2009 08:46:52 -0500 Subject: [Freeswitch-dev] access session variables after hangup In-Reply-To: <50e456910907130639s11be99f2sf3034a2e0c48a81b@mail.gmail.com> References: <50e456910907130639s11be99f2sf3034a2e0c48a81b@mail.gmail.com> Message-ID: <0111D6C8-B543-4A21-AC41-29748C90CC06@freeswitch.org> On Jul 13, 2009, at 8:39 AM, rentmycoder rentmycoder wrote: > I don't care about billing, but do care about very detailed realtime > and historical call logging and routing system. > xml cdr is not an option since it does not handle certain logging > scenarios like call transfers, multy party call conversions, custom > call events like recording started or stopped, etc. and it does not > handle realtime call routing at all. Its not the job of the CDR to handle rrealtime call routing... what exactly are you going for? XML CDR does stack the caller profiles for every transfer and action that takes place. > We try to port our IBM Genesys like PBX and Call Center solution from > asterisk to freeswitch, but for this I would need hangup detection. Hangup detection? Does the far end not send you a bye? > Actually I'm just in the learning phase in the migration process and > try to use the fastest ways for the initial testing, that's why I try > to use lua. > Sorry for this long story :) > Should this hangup detection work, I mean am I doing something wrong, > or this feature is not implemented yet? Can you elaborate on this more ? > If not, what language and method do you suggest to implement robust > call routing and history? You post process the XML CDR to get a full detail of what is going on. > Thank's for your valuable help in advance! /b From msc at freeswitch.org Mon Jul 13 13:15:08 2009 From: msc at freeswitch.org (Michael Collins) Date: Mon, 13 Jul 2009 13:15:08 -0700 Subject: [Freeswitch-dev] access session variables after hangup In-Reply-To: <50e456910907130639s11be99f2sf3034a2e0c48a81b@mail.gmail.com> References: <50e456910907130639s11be99f2sf3034a2e0c48a81b@mail.gmail.com> Message-ID: <87f2f3b90907131315t3619258eu53a5e9e0e68e1141@mail.gmail.com> On Mon, Jul 13, 2009 at 6:39 AM, rentmycoder rentmycoder < rentmycoder at gmail.com> wrote: > I don't care about billing, but do care about very detailed realtime > and historical call logging and routing system. Are you building something that monitors call status while the calls are still in progress? If so you really need to be using the event socket. > > xml cdr is not an option since it does not handle certain logging > scenarios like call transfers, multy party call conversions, custom > call events like recording started or stopped, etc. and it does not > handle realtime call routing at all. The XML CDRs have loads of information, including detailed call flow. Documentation is here: http://wiki.freeswitch.org/wiki/Mod_xml_cdr#Reference_Information Of course, like Brian said, the CDR always happens after the call is finished, which is why I was curious about the specifics of your application. You mentioned "very detailed realtime" but I'm not sure if that means "while the call is happening" or "immediately after the call completes." > > We try to port our IBM Genesys like PBX and Call Center solution from > asterisk to freeswitch, but for this I would need hangup detection. > Actually I'm just in the learning phase in the migration process and > try to use the fastest ways for the initial testing, that's why I try > to use lua. > Sorry for this long story :) No prob. Details help paint the picture. :) > > Should this hangup detection work, I mean am I doing something wrong, > or this feature is not implemented yet? > If not, what language and method do you suggest to implement robust > call routing and history? I recommend you parse a sample XML CDR. If it contains all the information you need then you can use mod_xml_cdr and post-process the calls as soon as they complete. If the XML CDR doesn't contain all the information you need then we'd like to know what it is missing - the devs would be willing to add anything that's missing, assuming it makes sense to do so. If you want absolute, unconditional access to every piece of information for every call as it happens in real-time, live and unedited, then you definitely need to build something that uses the event socket. I'm not sure there's much ROI in this method unless you have a special need to update a database while calls are in progress. Personally, I like mod_xml_cdr because it will post to a web server and create a disk file - a good way to keep your valuable call information safe in case of a web server or db server outage. -MC -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090713/2fc24aca/attachment-0001.html From raison at chatsubo.net Mon Jul 13 14:37:04 2009 From: raison at chatsubo.net (Kevin Raison) Date: Mon, 13 Jul 2009 14:37:04 -0700 Subject: [Freeswitch-dev] conference vs. bridge Message-ID: <4A5BA900.7000802@chatsubo.net> I am trying to figure out the best way to handle a business requirement set by a client for whom I am writing a custom IVR using FreeSWITCH. The situation is this: Customer calls in, navigates menus, selects a desired extension. Customer is parked, a new call is initiated to the desired extension. If the new extension is answered, the callee is dumped into a menu system. This menu system tells them about the customer and lets them choose whether or not to connect with the customer. A bridge is created between the two legs and conversation happens. Now, all of this was easy, thanks to FreeSWITCH and mod_event_socket. However, I would like to add a feature, and I think that bridging won't let me do what I want. Specifically, if the callee hangs up, I want to send the customer back to the main menu. However, it seems that if either leg of the call hangs up, the bridge hangs up the other end. Is there a way around this using call bridging? Or, should I be looking into a more complex setup using mod_conference? Currently, I am using uuid_bridge to setup the bridge, in case you need to know that. Thanks in advance for any advice. Cheers. Kevin From brian at freeswitch.org Mon Jul 13 14:40:22 2009 From: brian at freeswitch.org (Brian West) Date: Mon, 13 Jul 2009 16:40:22 -0500 Subject: [Freeswitch-dev] conference vs. bridge In-Reply-To: <4A5BA900.7000802@chatsubo.net> References: <4A5BA900.7000802@chatsubo.net> Message-ID: <1767D986-1A57-4D7D-A183-4A4B5FACC26A@freeswitch.org> On Jul 13, 2009, at 4:37 PM, Kevin Raison wrote: > Now, all of this was easy, thanks to FreeSWITCH and mod_event_socket. > However, I would like to add a feature, and I think that bridging > won't > let me do what I want. Specifically, if the callee hangs up, I want > to > send the customer back to the main menu. However, it seems that if > either leg of the call hangs up, the bridge hangs up the other end. > Is > there a way around this using call bridging? Or, should I be looking > into a more complex setup using mod_conference? Currently, I am > using > uuid_bridge to setup the bridge, in case you need to know that. http://wiki.freeswitch.org/wiki/Channel_Variables#hangup_after_bridge Should take care of that make sure you set it on the leg you want to continue after the bridge is complete. > > Thanks in advance for any advice. > > Cheers. > Kevin From anthony.minessale at gmail.com Mon Jul 13 14:54:26 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Mon, 13 Jul 2009 16:54:26 -0500 Subject: [Freeswitch-dev] conference vs. bridge In-Reply-To: <1767D986-1A57-4D7D-A183-4A4B5FACC26A@freeswitch.org> References: <4A5BA900.7000802@chatsubo.net> <1767D986-1A57-4D7D-A183-4A4B5FACC26A@freeswitch.org> Message-ID: <191c3a030907131454n22d38ba1w9f76ba0200449861@mail.gmail.com> transfer_after_bridge is probably even more useful On Mon, Jul 13, 2009 at 4:40 PM, Brian West wrote: > > On Jul 13, 2009, at 4:37 PM, Kevin Raison wrote: > > > Now, all of this was easy, thanks to FreeSWITCH and mod_event_socket. > > However, I would like to add a feature, and I think that bridging > > won't > > let me do what I want. Specifically, if the callee hangs up, I want > > to > > send the customer back to the main menu. However, it seems that if > > either leg of the call hangs up, the bridge hangs up the other end. > > Is > > there a way around this using call bridging? Or, should I be looking > > into a more complex setup using mod_conference? Currently, I am > > using > > uuid_bridge to setup the bridge, in case you need to know that. > > > http://wiki.freeswitch.org/wiki/Channel_Variables#hangup_after_bridge > > Should take care of that make sure you set it on the leg you want to > continue after the bridge is complete. > > > > > Thanks in advance for any advice. > > > > Cheers. > > Kevin > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090713/cababe82/attachment.html From kevin.snow at ooma.com Mon Jul 13 15:20:47 2009 From: kevin.snow at ooma.com (Kevin Snow) Date: Mon, 13 Jul 2009 15:20:47 -0700 Subject: [Freeswitch-dev] Bridge problem... In-Reply-To: <191c3a030907131454n22d38ba1w9f76ba0200449861@mail.gmail.com> Message-ID: Hi, In my module (written in C) I spin up a session using the recipe you gave me a few weeks ago. I then use switch_ivr_originate twice to establish two endpoints and bridge them using switch_ivr_multi_threaded_bridge. I inherited some of this code, but I think it?s using the multithreaded bridge to be able to pass a DTMF callback. In any case, the above is working fine. My problem comes in when one of the ends hangsup, it?s not exiting the bridge function. It?s like the calls are still bridged (because I think they are). Running ?show channels?, does in fact, show the two legs sitting there. Using the ?hupall? command, does hang them up, handlers called and my world then shutsdown. I?m not sure what I have wrong here. Is there something special I need to do to detect when an endpoint hangup? Thanks Kevin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090713/2e3365fd/attachment.html From mrene_lists at avgs.ca Mon Jul 13 15:24:30 2009 From: mrene_lists at avgs.ca (Mathieu Rene) Date: Mon, 13 Jul 2009 18:24:30 -0400 Subject: [Freeswitch-dev] Bridge problem... In-Reply-To: References: Message-ID: Kevin, You can't call that function directly, you need to tell the core to bridge the 2 channels together, or else you end up with 2 threads trying to do media on the same thread. Look at switch_ivr_uuid_bridge(const char *originator_uuid, const char *originatee_uuid); Also don't forget to switch_core_session_rwunlock() the session you got out of originate, FS uses reader-writer locks as a reference counting system for session structures, the session thread will do a write lock before freeing the memory. If your call doesn't disappear, you probably are missing that unlock (ivr_originate locks it before returning) Mathieu Rene Avant-Garde Solutions Inc Office: + 1 (514) 664-1044 x100 Cell: +1 (514) 664-1044 x200 mrene at avgs.ca On 13-Jul-09, at 6:20 PM, Kevin Snow wrote: > switch_ivr_multi_threaded_bridge -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090713/24458fbf/attachment.html From mrene_lists at avgs.ca Mon Jul 13 15:59:37 2009 From: mrene_lists at avgs.ca (Mathieu Rene) Date: Mon, 13 Jul 2009 18:59:37 -0400 Subject: [Freeswitch-dev] Bridge problem... In-Reply-To: References: Message-ID: On another note, switch_ivr_uuid_bridge() will flush the state handler table for both legs. You need to set them back after. Note that event hooks aren't removed, so you can use switch_core_event_hook_add_state_change() (look in mod_limit for an example) to get a callback on state change. Mathieu Rene Avant-Garde Solutions Inc Office: + 1 (514) 664-1044 x100 Cell: +1 (514) 664-1044 x200 mrene at avgs.ca On 13-Jul-09, at 6:20 PM, Kevin Snow wrote: > Hi, > > In my module (written in C) I spin up a session using the recipe you > gave me a few weeks ago. I then use switch_ivr_originate twice to > establish two endpoints and bridge them using > switch_ivr_multi_threaded_bridge. I inherited some of this code, but > I think it?s using the multithreaded bridge to be able to pass a > DTMF callback. > > In any case, the above is working fine. My problem comes in when one > of the ends hangsup, it?s not exiting the bridge function. It?s like > the calls are still bridged (because I think they are). Running > ?show channels?, does in fact, show the two legs sitting there. > Using the ?hupall? command, does hang them up, handlers called and > my world then shutsdown. > > I?m not sure what I have wrong here. Is there something special I > need to do to detect when an endpoint hangup? > > Thanks > > Kevin > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090713/0b6ead37/attachment.html From juanbackson at gmail.com Mon Jul 13 19:50:46 2009 From: juanbackson at gmail.com (Juan Backson) Date: Tue, 14 Jul 2009 10:50:46 +0800 Subject: [Freeswitch-dev] core dump with the latest build Message-ID: <27c25bc40907131950h422e668eucc5b85f2a4acf2a3@mail.gmail.com> Hi, I am running FS with production traffic and when it reaches around 70cps on a Intel(R) Xeon(R) CPU E5520 @ 2.27GHz, I am getting a core dump ( as shown below ). This core dump has been happening multiple times in one day. Is this a problem with the latest trunk? If so, which build should I use? [New process 22480] [New process 22479] [New process 22478] #0 0x00002b2f381c2825 in switch_core_port_allocator_free_port ( alloc=0x2aaacd644198, port=) at src/switch_core_port_allocator.c:185 185 if (alloc->track[index] > 0) { (gdb) bt #0 0x00002b2f381c2825 in switch_core_port_allocator_free_port ( alloc=0x2aaacd644198, port=) at src/switch_core_port_allocator.c:185 #1 0x00002b2f381d8fd3 in switch_rtp_release_port ( ip=0x2aab59b677b0 "208.76.155.250", port=1286) at src/switch_rtp.c:702 #2 0x00002b2f381d9228 in switch_rtp_destroy (rtp_session=0x2aaac4d7e800) at src/switch_rtp.c:1473 #3 0x00002aaaab5e1e29 in sofia_glue_deactivate_rtp (tech_pvt=0x2aaac4d7e308) at sofia_glue.c:1871 #4 0x00002aaaab5c3d68 in sofia_on_destroy (session=0x2aaac41edf28) at mod_sofia.c:273 #5 0x00002b2f381bd52f in switch_core_session_destroy_state ( session=0x2aaac41edf28) at src/switch_core_state_machine.c:559 #6 0x00002b2f381baae9 in switch_core_session_perform_destroy ( session=0x57309090, file=0x2b2f38296a43 "src/switch_core_session.c", func=0x2b2f38297350 "switch_core_session_thread", line=1086) at src/switch_core_session.c:970 #7 0x00002b2f381bbba6 in switch_core_session_thread ( thread=, obj=) at src/switch_core_session.c:1086 #8 0x0000003b85806367 in start_thread () from /lib64/libpthread.so.0 #9 0x0000003b850d2f7d in clone () from /lib64/libc.so.6 (gdb) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/31f8e07f/attachment-0001.html From mike at jerris.com Mon Jul 13 21:54:23 2009 From: mike at jerris.com (Michael Jerris) Date: Tue, 14 Jul 2009 00:54:23 -0400 Subject: [Freeswitch-dev] core dump with the latest build In-Reply-To: <27c25bc40907131950h422e668eucc5b85f2a4acf2a3@mail.gmail.com> References: <27c25bc40907131950h422e668eucc5b85f2a4acf2a3@mail.gmail.com> Message-ID: What revision are you using? I have not seen any reports of this before. Can you try trunk and see if it persists and if so post a bug to jira.freeswitch.org. Mike On Jul 13, 2009, at 10:50 PM, Juan Backson wrote: > Hi, > > I am running FS with production traffic and when it reaches around > 70cps on a Intel(R) Xeon(R) CPU E5520 @ 2.27GHz, I am getting a > core dump ( as shown below ). This core dump has been happening > multiple times in one day. Is this a problem with the latest > trunk? If so, which build should I use? > > > > [New process 22480] > [New process 22479] > [New process 22478] > #0 0x00002b2f381c2825 in switch_core_port_allocator_ > free_port ( > alloc=0x2aaacd644198, port=) > at src/switch_core_port_allocator.c:185 > 185 if (alloc->track[index] > 0) { > (gdb) bt > #0 0x00002b2f381c2825 in switch_core_port_allocator_free_port ( > alloc=0x2aaacd644198, port=) > at src/switch_core_port_allocator.c:185 > #1 0x00002b2f381d8fd3 in switch_rtp_release_port ( > ip=0x2aab59b677b0 "208.76.155.250", port=1286) at src/ > switch_rtp.c:702 > #2 0x00002b2f381d9228 in switch_rtp_destroy > (rtp_session=0x2aaac4d7e800) > at src/switch_rtp.c:1473 > #3 0x00002aaaab5e1e29 in sofia_glue_deactivate_rtp > (tech_pvt=0x2aaac4d7e308) > at sofia_glue.c:1871 > #4 0x00002aaaab5c3d68 in sofia_on_destroy (session=0x2aaac41edf28) > at mod_sofia.c:273 > #5 0x00002b2f381bd52f in switch_core_session_destroy_state ( > session=0x2aaac41edf28) at src/switch_core_state_machine.c:559 > #6 0x00002b2f381baae9 in switch_core_session_perform_destroy ( > session=0x57309090, file=0x2b2f38296a43 "src/ > switch_core_session.c", > func=0x2b2f38297350 "switch_core_session_thread", line=1086) > at src/switch_core_session.c:970 > #7 0x00002b2f381bbba6 in switch_core_session_thread ( > thread=, obj=) > at src/switch_core_session.c:1086 > #8 0x0000003b85806367 in start_thread () from /lib64/libpthread.so.0 > #9 0x0000003b850d2f7d in clone () from /lib64/libc.so.6 > (gdb) > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From lconroy at insensate.co.uk Tue Jul 14 03:53:05 2009 From: lconroy at insensate.co.uk (Lawrence Conroy) Date: Tue, 14 Jul 2009 11:53:05 +0100 Subject: [Freeswitch-dev] svn openzap dir-prop-base error? Message-ID: <7633616D-C981-48E3-9A18-5A4C1146D806@insensate.co.uk> Hi Folks, I usually build fS from the trunk tarball -- that works well. BUT... svn checkout on fS flags an error. When svn checkout fires up svn checkout for openzap, it tries to connect over port 81. That fails. I chmodded 666 the file .svn/dir-prop-base, edited line 8 to change : 81 to :80, saved and chmodded the file back to 444. That works. Is there any reason why it is trying to connect to http://svn.openzap.org:81? all the best, Lawrence From mike at jerris.com Tue Jul 14 06:22:43 2009 From: mike at jerris.com (Michael Jerris) Date: Tue, 14 Jul 2009 09:22:43 -0400 Subject: [Freeswitch-dev] svn openzap dir-prop-base error? In-Reply-To: <7633616D-C981-48E3-9A18-5A4C1146D806@insensate.co.uk> References: <7633616D-C981-48E3-9A18-5A4C1146D806@insensate.co.uk> Message-ID: <35EAD99A-C52B-4AA3-ABFB-3822E9B09ED2@jerris.com> We use port 81 because transparent proxy on 80 can break svn. You can svn propedit svn:external instead of your manual process. On Jul 14, 2009, at 6:53 AM, Lawrence Conroy wrote: > Hi Folks, > I usually build fS from the trunk tarball -- that works well. > BUT... svn checkout on fS flags an error. > When svn checkout fires up svn checkout for openzap, it tries to > connect over port 81. That fails. > I chmodded 666 the file .svn/dir-prop-base, edited line 8 to change : > 81 to :80, saved and chmodded the file back to 444. That works. > Is there any reason why it is trying to connect to http://svn.openzap.org:81 > ? > > all the best, > Lawrence > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From anthony.minessale at gmail.com Tue Jul 14 06:54:53 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Tue, 14 Jul 2009 08:54:53 -0500 Subject: [Freeswitch-dev] core dump with the latest build In-Reply-To: References: <27c25bc40907131950h422e668eucc5b85f2a4acf2a3@mail.gmail.com> Message-ID: <191c3a030907140654g65e902c4q1006c15a8512b0e7@mail.gmail.com> If you are indeed on the latest build can you make sure you upgraded properly. Either use "make current" or do a fresh checkout and remove the bin and lib dir from /usr/local/freeswitch On Mon, Jul 13, 2009 at 11:54 PM, Michael Jerris wrote: > What revision are you using? I have not seen any reports of this > before. Can you try trunk and see if it persists and if so post a bug > to jira.freeswitch.org. > > Mike > > On Jul 13, 2009, at 10:50 PM, Juan Backson > wrote: > > > Hi, > > > > I am running FS with production traffic and when it reaches around > > 70cps on a Intel(R) Xeon(R) CPU E5520 @ 2.27GHz, I am getting a > > core dump ( as shown below ). This core dump has been happening > > multiple times in one day. Is this a problem with the latest > > trunk? If so, which build should I use? > > > > > > > > [New process 22480] > > [New process 22479] > > [New process 22478] > > #0 0x00002b2f381c2825 in switch_core_port_allocator_ > > free_port ( > > alloc=0x2aaacd644198, port=) > > at src/switch_core_port_allocator.c:185 > > 185 if (alloc->track[index] > 0) { > > (gdb) bt > > #0 0x00002b2f381c2825 in switch_core_port_allocator_free_port ( > > alloc=0x2aaacd644198, port=) > > at src/switch_core_port_allocator.c:185 > > #1 0x00002b2f381d8fd3 in switch_rtp_release_port ( > > ip=0x2aab59b677b0 "208.76.155.250", port=1286) at src/ > > switch_rtp.c:702 > > #2 0x00002b2f381d9228 in switch_rtp_destroy > > (rtp_session=0x2aaac4d7e800) > > at src/switch_rtp.c:1473 > > #3 0x00002aaaab5e1e29 in sofia_glue_deactivate_rtp > > (tech_pvt=0x2aaac4d7e308) > > at sofia_glue.c:1871 > > #4 0x00002aaaab5c3d68 in sofia_on_destroy (session=0x2aaac41edf28) > > at mod_sofia.c:273 > > #5 0x00002b2f381bd52f in switch_core_session_destroy_state ( > > session=0x2aaac41edf28) at src/switch_core_state_machine.c:559 > > #6 0x00002b2f381baae9 in switch_core_session_perform_destroy ( > > session=0x57309090, file=0x2b2f38296a43 "src/ > > switch_core_session.c", > > func=0x2b2f38297350 "switch_core_session_thread", line=1086) > > at src/switch_core_session.c:970 > > #7 0x00002b2f381bbba6 in switch_core_session_thread ( > > thread=, obj=) > > at src/switch_core_session.c:1086 > > #8 0x0000003b85806367 in start_thread () from /lib64/libpthread.so.0 > > #9 0x0000003b850d2f7d in clone () from /lib64/libc.so.6 > > (gdb) > > _______________________________________________ > > Freeswitch-dev mailing list > > Freeswitch-dev at lists.freeswitch.org > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > > http://www.freeswitch.org > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/e9c93869/attachment.html From kevin.snow at ooma.com Tue Jul 14 08:47:39 2009 From: kevin.snow at ooma.com (Kevin Snow) Date: Tue, 14 Jul 2009 08:47:39 -0700 Subject: [Freeswitch-dev] Bridge problem... In-Reply-To: Message-ID: Thanks for your help on this, I?m getting closer but still have something wrong. I changed the code to use the bridge function you mentioned. It does seem to work a little better as the multithreaded bridge sometimes had audio glitches that this method doesn?t const char* sessionUUID = switch_core_session_get_uuid(session); const char* peerSessionUUID = switch_core_session_get_uuid(peer_session); switch_status_t status = switch_ivr_uuid_bridge(sessionUUID, peerSessionUUID); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "bridge_common - Bridge complete (%d)\n",(int)status); int addHandlerOK = switch_channel_add_state_handler( switch_core_session_get_channel(peer_session), &bridge_common_state_handlers); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "+++++++++++++++++++++++++++++++++++++++++++++++++ ADDED HANDLER OK %d\n",addHandlerOK); This bridges fine and the call is working. The switch_ivr_uuid_bridge function returns immediately where the other blocked. I?m adding the handler back in and switch_channel_add_state_handler is returning a 1, which I seems OK. static switch_status_t my_hangup(switch_core_session_t *session) { switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "======================= HANGUP CALLED ============================\n"); return SWITCH_STATUS_SUCCESS; } static const switch_state_handler_table_t bridge_common_state_handlers = { /*.on_init */ NULL, /*.on_routing */ NULL, /*.on_execute */ NULL, /*.on_hangup */ my_hangup, /*.on_exchange_media */ NULL, /*.on_soft_execute */ NULL }; Not sure why but when the peer_session leg is hung up my_hangup routine is not called. One thing I should mention is that I?m originating these legs and bridging on a thread that I started. I believe that is somehow part of the problem. The situation I have is that a handset is picked up. I collect the digits dialed, when this is complete I?m creating a thread (this thread above) and having it create a leg to the number dialed and another known endpoint. I?m doing it on another thread because I want that handset to be able to hang up but leave this call in place. I am getting my hangup called on the handset (it?s not this above handler, it?s a different one I didn?t show you). If I leave the new thread out of this and just bridge the handset to the dialed number, I do get hangup called for both. Clearly, there is something I?m not understanding and have wrong here. Any ideas? Thanks in advance. Kevin On 7/13/09 3:59 PM, "Mathieu Rene" wrote: > On another note, switch_ivr_uuid_bridge() will flush the state handler table > for both legs. You need to set them back after. > Note that event hooks aren't removed, so you can use > switch_core_event_hook_add_state_change() (look in mod_limit for an example) > to get a callback on state change. > > > Mathieu Rene > Avant-Garde Solutions Inc > Office: + 1 (514) 664-1044 x100 > Cell: +1 (514) 664-1044 x200 > mrene at avgs.ca > > > > > > On 13-Jul-09, at 6:20 PM, Kevin Snow wrote: > >> Hi, >> >> In my module (written in C) I spin up a session using the recipe you gave me >> a few weeks ago. I then use switch_ivr_originate twice to establish two >> endpoints and bridge them using switch_ivr_multi_threaded_bridge. I inherited >> some of this code, but I think it?s using the multithreaded bridge to be able >> to pass a DTMF callback. >> >> In any case, the above is working fine. My problem comes in when one of the >> ends hangsup, it?s not exiting the bridge function. It?s like the calls are >> still bridged (because I think they are). Running ?show channels?, does in >> fact, show the two legs sitting there. Using the ?hupall? command, does hang >> them up, handlers called and my world then shutsdown. >> >> I?m not sure what I have wrong here. Is there something special I need to do >> to detect when an endpoint hangup? >> >> Thanks >> >> Kevin >> _______________________________________________ >> Freeswitch-dev mailing list >> Freeswitch-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org > > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/06c8e669/attachment-0001.html From mrene_lists at avgs.ca Tue Jul 14 09:24:05 2009 From: mrene_lists at avgs.ca (Mathieu Rene) Date: Tue, 14 Jul 2009 12:24:05 -0400 Subject: [Freeswitch-dev] Bridge problem... In-Reply-To: References: Message-ID: <1C09C58A-93EC-46B8-9A85-5393954F1295@avgs.ca> Try using an event hook on state hange instead of a state handler. Or, if you don't need access to the session once its hung up, use a plain event handler. One thing you need to know about threads is that FS spaws its own thread per call. You can do your own stuff in as many threads as you want as long as you don't touch the media itself. Look at the source of api commands in mod_commands and you'll see how they interact with active calls. Mathieu Rene Avant-Garde Solutions Inc Office: + 1 (514) 664-1044 x100 Cell: +1 (514) 664-1044 x200 mrene at avgs.ca Am 14-Jul-09 um 11:47 AM schrieb Kevin Snow: > Thanks for your help on this, I?m getting closer but still have > something wrong. > > I changed the code to use the bridge function you mentioned. It does > seem to work a little better as the multithreaded bridge sometimes > had audio glitches that this method doesn?t > > const char* sessionUUID = > switch_core_session_get_uuid(session); > const char* peerSessionUUID = > switch_core_session_get_uuid(peer_session); > > switch_status_t status = switch_ivr_uuid_bridge(sessionUUID, > peerSessionUUID); > switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, > "bridge_common - Bridge complete (%d)\n",(int)status); > > int addHandlerOK = > switch_channel_add_state_handler > ( switch_core_session_get_channel(peer_session), > &bridge_common_state_handlers); > switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "+++++ > ++++++++++++++++++++++++++++++++++++++++++++ ADDED HANDLER OK %d > \n",addHandlerOK); > > This bridges fine and the call is working. The > switch_ivr_uuid_bridge function returns immediately where the other > blocked. I?m adding the handler back in and > switch_channel_add_state_handler is returning a 1, which I seems OK. > > static switch_status_t my_hangup(switch_core_session_t *session) > { > switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, > "======================= HANGUP CALLED ============================ > \n"); > > return SWITCH_STATUS_SUCCESS; > } > > static const switch_state_handler_table_t > bridge_common_state_handlers = > { > /*.on_init */ NULL, > /*.on_routing */ NULL, > /*.on_execute */ NULL, > /*.on_hangup */ my_hangup, > /*.on_exchange_media */ NULL, > /*.on_soft_execute */ NULL > }; > > Not sure why but when the peer_session leg is hung up my_hangup > routine is not called. > > One thing I should mention is that I?m originating these legs and > bridging on a thread that I started. I believe that is somehow part > of the problem. The situation I have is that a handset is picked up. > I collect the digits dialed, when this is complete I?m creating a > thread (this thread above) and having it create a leg to the number > dialed and another known endpoint. I?m doing it on another thread > because I want that handset to be able to hang up but leave this > call in place. I am getting my hangup called on the handset (it?s > not this above handler, it?s a different one I didn?t show you). If > I leave the new thread out of this and just bridge the handset to > the dialed number, I do get hangup called for both. > > Clearly, there is something I?m not understanding and have wrong here. > > Any ideas? > > Thanks in advance. > > Kevin > > > > > > > On 7/13/09 3:59 PM, "Mathieu Rene" wrote: > >> On another note, switch_ivr_uuid_bridge() will flush the state >> handler table for both legs. You need to set them back after. >> Note that event hooks aren't removed, so you can use >> switch_core_event_hook_add_state_change() (look in mod_limit for an >> example) to get a callback on state change. >> >> >> Mathieu Rene >> Avant-Garde Solutions Inc >> Office: + 1 (514) 664-1044 x100 >> Cell: +1 (514) 664-1044 x200 >> mrene at avgs.ca >> >> >> >> >> >> On 13-Jul-09, at 6:20 PM, Kevin Snow wrote: >> >>> Hi, >>> >>> In my module (written in C) I spin up a session using the recipe >>> you gave me a few weeks ago. I then use switch_ivr_originate twice >>> to establish two endpoints and bridge them using >>> switch_ivr_multi_threaded_bridge. I inherited some of this code, >>> but I think it?s using the multithreaded bridge to be able to pass >>> a DTMF callback. >>> >>> In any case, the above is working fine. My problem comes in when >>> one of the ends hangsup, it?s not exiting the bridge function. >>> It?s like the calls are still bridged (because I think they are). >>> Running ?show channels?, does in fact, show the two legs sitting >>> there. Using the ?hupall? command, does hang them up, handlers >>> called and my world then shutsdown. >>> >>> I?m not sure what I have wrong here. Is there something special I >>> need to do to detect when an endpoint hangup? >>> >>> Thanks >>> >>> Kevin >>> _______________________________________________ >>> Freeswitch-dev mailing list >>> Freeswitch-dev at lists.freeswitch.org >>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >>> http://www.freeswitch.org >> >> >> _______________________________________________ >> Freeswitch-dev mailing list >> Freeswitch-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch- >> dev >> http://www.freeswitch.org > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/f0955c43/attachment.html From kevin.snow at ooma.com Tue Jul 14 09:50:55 2009 From: kevin.snow at ooma.com (Kevin Snow) Date: Tue, 14 Jul 2009 09:50:55 -0700 Subject: [Freeswitch-dev] Bridge problem... In-Reply-To: <1C09C58A-93EC-46B8-9A85-5393954F1295@avgs.ca> Message-ID: OK, thanks. I?ll look at how mod_commands handles this. Also, I just realized that the problem is not that my handlers are not called but that the hangup isn?t happening. After everybody has literally hung up, using ?show channels? still shows those two channels as active. They haven?t hung up yet. Using ?hupall? and they hang up with my handlers being called. Somehow, the legs that I originate aren?t figuring out that the ends they connect to have hungup. I am calling the switch_core_session_rwunlock after the bridge completes. Thanks again...I?ll keep wrestling with it. Kevin On 7/14/09 9:24 AM, "Mathieu Rene" wrote: > Try using an event hook on state hange instead of a state handler. > Or, if you don't need access to the session once its hung up, use a plain > event handler. > > One thing you need to know about threads is that FS spaws its own thread per > call. You can do your own stuff in as many threads as you want as long as you > don't touch the media itself. Look at the source of api commands in > mod_commands and you'll see how they interact with active calls. > > > Mathieu Rene > Avant-Garde Solutions Inc > Office: + 1 (514) 664-1044 x100 > Cell: +1 (514) 664-1044 x200 > mrene at avgs.ca > > > > > > Am 14-Jul-09 um 11:47 AM schrieb Kevin Snow: > >> Thanks for your help on this, I?m getting closer but still have something >> wrong. >> >> I changed the code to use the bridge function you mentioned. It does seem to >> work a little better as the multithreaded bridge sometimes had audio glitches >> that this method doesn?t >> >> const char* sessionUUID = switch_core_session_get_uuid(session); >> const char* peerSessionUUID = >> switch_core_session_get_uuid(peer_session); >> >> switch_status_t status = switch_ivr_uuid_bridge(sessionUUID, >> peerSessionUUID); >> switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, >> "bridge_common - Bridge complete (%d)\n",(int)status); >> >> int addHandlerOK = switch_channel_add_state_handler( >> switch_core_session_get_channel(peer_session), >> &bridge_common_state_handlers); >> switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, >> "+++++++++++++++++++++++++++++++++++++++++++++++++ ADDED HANDLER OK >> %d\n",addHandlerOK); >> >> This bridges fine and the call is working. The switch_ivr_uuid_bridge >> function returns immediately where the other blocked. I?m adding the handler >> back in and switch_channel_add_state_handler is returning a 1, which I seems >> OK. >> >> static switch_status_t my_hangup(switch_core_session_t *session) >> { >> switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, >> "======================= HANGUP CALLED ============================\n"); >> >> return SWITCH_STATUS_SUCCESS; >> } >> >> static const switch_state_handler_table_t >> bridge_common_state_handlers = >> { >> /*.on_init */ NULL, >> /*.on_routing */ NULL, >> /*.on_execute */ NULL, >> /*.on_hangup */ my_hangup, >> /*.on_exchange_media */ NULL, >> /*.on_soft_execute */ NULL >> }; >> >> Not sure why but when the peer_session leg is hung up my_hangup routine is >> not called. >> >> One thing I should mention is that I?m originating these legs and bridging >> on a thread that I started. I believe that is somehow part of the problem. >> The situation I have is that a handset is picked up. I collect the digits >> dialed, when this is complete I?m creating a thread (this thread above) and >> having it create a leg to the number dialed and another known endpoint. I?m >> doing it on another thread because I want that handset to be able to hang up >> but leave this call in place. I am getting my hangup called on the handset >> (it?s not this above handler, it?s a different one I didn?t show you). If I >> leave the new thread out of this and just bridge the handset to the dialed >> number, I do get hangup called for both. >> >> Clearly, there is something I?m not understanding and have wrong here. >> >> Any ideas? >> >> Thanks in advance. >> >> Kevin >> >> >> >> >> >> >> On 7/13/09 3:59 PM, "Mathieu Rene" wrote: >> >> >>> On another note, switch_ivr_uuid_bridge() will flush the state handler table >>> for both legs. You need to set them back after. >>> Note that event hooks aren't removed, so you can use >>> switch_core_event_hook_add_state_change() (look in mod_limit for an example) >>> to get a callback on state change. >>> >>> >>> Mathieu Rene >>> Avant-Garde Solutions Inc >>> Office: + 1 (514) 664-1044 x100 >>> Cell: +1 (514) 664-1044 x200 >>> mrene at avgs.ca >>> >>> >>> >>> >>> >>> On 13-Jul-09, at 6:20 PM, Kevin Snow wrote: >>> >>> >>>> Hi, >>>> >>>> In my module (written in C) I spin up a session using the recipe you gave >>>> me a few weeks ago. I then use switch_ivr_originate twice to establish two >>>> endpoints and bridge them using switch_ivr_multi_threaded_bridge. I >>>> inherited some of this code, but I think it?s using the multithreaded >>>> bridge to be able to pass a DTMF callback. >>>> >>>> In any case, the above is working fine. My problem comes in when one of >>>> the ends hangsup, it?s not exiting the bridge function. It?s like the calls >>>> are still bridged (because I think they are). Running ?show channels?, does >>>> in fact, show the two legs sitting there. Using the ?hupall? command, does >>>> hang them up, handlers called and my world then shutsdown. >>>> >>>> I?m not sure what I have wrong here. Is there something special I need to >>>> do to detect when an endpoint hangup? >>>> >>>> Thanks >>>> >>>> Kevin >>>> _______________________________________________ >>>> Freeswitch-dev mailing list >>>> Freeswitch-dev at lists.freeswitch.org >>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >>>> http://www.freeswitch.org >>>> >>> >>> >>> >>> >>> _______________________________________________ >>> Freeswitch-dev mailing list >>> Freeswitch-dev at lists.freeswitch.org >>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >>> http://www.freeswitch.org >>> >> >> >> _______________________________________________ >> Freeswitch-dev mailing list >> Freeswitch-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org > > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/5196d2b0/attachment-0001.html From anthony.minessale at gmail.com Tue Jul 14 10:08:37 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Tue, 14 Jul 2009 12:08:37 -0500 Subject: [Freeswitch-dev] Bridge problem... In-Reply-To: References: <1C09C58A-93EC-46B8-9A85-5393954F1295@avgs.ca> Message-ID: <191c3a030907141008m6507b762xf059ed1447bcd9f@mail.gmail.com> is this a sip call? are possibly not getting the bye when you hangup? turn on sip trace and debug logging and hangup and watch for what happens On Tue, Jul 14, 2009 at 11:50 AM, Kevin Snow wrote: > OK, thanks. I?ll look at how mod_commands handles this. > > Also, I just realized that the problem is not that my handlers are not > called but that the hangup isn?t happening. After everybody has literally > hung up, using ?show channels? still shows those two channels as active. > They haven?t hung up yet. Using ?hupall? and they hang up with my handlers > being called. Somehow, the legs that I originate aren?t figuring out that > the ends they connect to have hungup. > > I am calling the switch_core_session_rwunlock after the bridge completes. > > Thanks again...I?ll keep wrestling with it. > > Kevin > > > > > > On 7/14/09 9:24 AM, "Mathieu Rene" wrote: > > Try using an event hook on state hange instead of a state handler. > Or, if you don't need access to the session once its hung up, use a plain > event handler. > > One thing you need to know about threads is that FS spaws its own thread > per call. You can do your own stuff in as many threads as you want as long > as you don't touch the media itself. Look at the source of api commands in > mod_commands and you'll see how they interact with active calls. > > > Mathieu Rene > Avant-Garde Solutions Inc > Office: + 1 (514) 664-1044 x100 > Cell: +1 (514) 664-1044 x200 > mrene at avgs.ca > > > > > > Am 14-Jul-09 um 11:47 AM schrieb Kevin Snow: > > Thanks for your help on this, I?m getting closer but still have something > wrong. > > I changed the code to use the bridge function you mentioned. It does seem > to work a little better as the multithreaded bridge sometimes had audio > glitches that this method doesn?t > > const char* sessionUUID = switch_core_session_get_uuid(session); > const char* peerSessionUUID = > switch_core_session_get_uuid(peer_session); > > switch_status_t status = switch_ivr_uuid_bridge(sessionUUID, > peerSessionUUID); > switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, > "bridge_common - Bridge complete (%d)\n",(int)status); > > int addHandlerOK = switch_channel_add_state_handler( > switch_core_session_get_channel(peer_session), > &bridge_common_state_handlers); > switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, > "+++++++++++++++++++++++++++++++++++++++++++++++++ ADDED HANDLER OK > %d\n",addHandlerOK); > > This bridges fine and the call is working. The switch_ivr_uuid_bridge > function returns immediately where the other blocked. I?m adding the handler > back in and switch_channel_add_state_handler is returning a 1, which I seems > OK. > > static switch_status_t my_hangup(switch_core_session_t *session) > { > switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, > "======================= HANGUP CALLED ============================\n"); > > return SWITCH_STATUS_SUCCESS; > } > > static const switch_state_handler_table_t > bridge_common_state_handlers = > { > /*.on_init */ NULL, > /*.on_routing */ NULL, > /*.on_execute */ NULL, > /*.on_hangup */ my_hangup, > /*.on_exchange_media */ NULL, > /*.on_soft_execute */ NULL > }; > > Not sure why but when the peer_session leg is hung up my_hangup routine is > not called. > > One thing I should mention is that I?m originating these legs and bridging > on a thread that I started. I believe that is somehow part of the problem. > The situation I have is that a handset is picked up. I collect the digits > dialed, when this is complete I?m creating a thread (this thread above) and > having it create a leg to the number dialed and another known endpoint. I?m > doing it on another thread because I want that handset to be able to hang up > but leave this call in place. I am getting my hangup called on the handset > (it?s not this above handler, it?s a different one I didn?t show you). If I > leave the new thread out of this and just bridge the handset to the dialed > number, I do get hangup called for both. > > Clearly, there is something I?m not understanding and have wrong here. > > Any ideas? > > Thanks in advance. > > Kevin > > > > > > > On 7/13/09 3:59 PM, "Mathieu Rene" wrote: > > > > On another note, switch_ivr_uuid_bridge() will flush the state handler > table for both legs. You need to set them back after. > Note that event hooks aren't removed, so you can use > switch_core_event_hook_add_state_change() (look in mod_limit for an example) > to get a callback on state change. > > > Mathieu Rene > Avant-Garde Solutions Inc > Office: + 1 (514) 664-1044 x100 > Cell: +1 (514) 664-1044 x200 > mrene at avgs.ca > > > > > > On 13-Jul-09, at 6:20 PM, Kevin Snow wrote: > > > > Hi, > > In my module (written in C) I spin up a session using the recipe you gave > me a few weeks ago. I then use switch_ivr_originate twice to establish two > endpoints and bridge them using switch_ivr_multi_threaded_bridge. I > inherited some of this code, but I think it?s using the multithreaded bridge > to be able to pass a DTMF callback. > > In any case, the above is working fine. My problem comes in when one of > the ends hangsup, it?s not exiting the bridge function. It?s like the calls > are still bridged (because I think they are). Running ?show channels?, does > in fact, show the two legs sitting there. Using the ?hupall? command, does > hang them up, handlers called and my world then shutsdown. > > I?m not sure what I have wrong here. Is there something special I need to > do to detect when an endpoint hangup? > > Thanks > > Kevin > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > > > > > ------------------------------ > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > > > ------------------------------ > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/60428255/attachment.html From raison at chatsubo.net Tue Jul 14 11:26:14 2009 From: raison at chatsubo.net (Kevin Raison) Date: Tue, 14 Jul 2009 11:26:14 -0700 Subject: [Freeswitch-dev] conference vs. bridge In-Reply-To: <191c3a030907131454n22d38ba1w9f76ba0200449861@mail.gmail.com> References: <4A5BA900.7000802@chatsubo.net> <1767D986-1A57-4D7D-A183-4A4B5FACC26A@freeswitch.org> <191c3a030907131454n22d38ba1w9f76ba0200449861@mail.gmail.com> Message-ID: <4A5CCDC6.7000807@chatsubo.net> Thanks for all of the pointers. exec_after_bridge_app=park is just the thing. Cheers. Kevin Anthony Minessale wrote: > transfer_after_bridge is probably even more useful > > > On Mon, Jul 13, 2009 at 4:40 PM, Brian West > wrote: > > > On Jul 13, 2009, at 4:37 PM, Kevin Raison wrote: > > > Now, all of this was easy, thanks to FreeSWITCH and mod_event_socket. > > However, I would like to add a feature, and I think that bridging > > won't > > let me do what I want. Specifically, if the callee hangs up, I want > > to > > send the customer back to the main menu. However, it seems that if > > either leg of the call hangs up, the bridge hangs up the other end. > > Is > > there a way around this using call bridging? Or, should I be looking > > into a more complex setup using mod_conference? Currently, I am > > using > > uuid_bridge to setup the bridge, in case you need to know that. > > > http://wiki.freeswitch.org/wiki/Channel_Variables#hangup_after_bridge > > Should take care of that make sure you set it on the leg you want to > continue after the bridge is complete. > > > > > Thanks in advance for any advice. > > > > Cheers. > > Kevin > > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > > > > -- > Anthony Minessale II > > FreeSWITCH http://www.freeswitch.org/ > ClueCon http://www.cluecon.com/ > Twitter: http://twitter.com/FreeSWITCH_wire > > AIM: anthm > MSN:anthony_minessale at hotmail.com > > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com > > IRC: irc.freenode.net #freeswitch > > FreeSWITCH Developer Conference > sip:888 at conference.freeswitch.org > > iax:guest at conference.freeswitch.org/888 > > googletalk:conf+888 at conference.freeswitch.org > > pstn:213-799-1400 > > > ------------------------------------------------------------------------ > > _______________________________________________ > Freeswitch-dev mailing list > Freeswitch-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From Christian.Jensen at Teligence.Net Tue Jul 14 12:14:37 2009 From: Christian.Jensen at Teligence.Net (Christian Jensen) Date: Tue, 14 Jul 2009 12:14:37 -0700 Subject: [Freeswitch-dev] Error compiling Windows from trunk Message-ID: There appears to be an issue compiling on Windows. I just pull a fresh trunk down and did a "build" - flite gets downloaded but is unable to compile properly. r14246 I am attempting to build so that I can apply a patch Brian supplied me. Here is the Output from VS2008 - I available to try and correct this if you point me in the right direction. 45>portaudio - 0 error(s), 0 warning(s) 46>------ Build started: Project: flite, Configuration: Debug Win32 ------ 46>Compiling... 46>au_none.c 41>sres_blocking.c 46>au_streaming.c 41>sres_cache.c 46>au_wince.c 46>audio.c 41>sres_sip.c 46>auserver.c 41>sresolv.c 41>nea.c 46>cmu_lex.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmulex\cmu_lex.c': No such file or directory 46>cmu_lex_data.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmulex\cmu_lex_data.c': No such file or directory 46>cmu_lex_entries.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmulex\cmu_lex_entries.c': No such file or directory 46>cmu_lts_model.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmulex\cmu_lts_model.c': No such file or directory 46>cmu_lts_rules.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmulex\cmu_lts_rules.c': No such file or directory 46>cmu_postlex.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmulex\cmu_postlex.c': No such file or directory 46>cmu_time_awb_cart.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_time_awb\cmu_time_awb_cart.c': No such file or directory 46>cmu_time_awb_clunits.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_time_awb\cmu_time_awb_clunits.c': No such file or directory 46>cmu_time_awb_lex_entry.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_time_awb\cmu_time_awb_lex_entry.c': No such file or directory 46>cmu_time_awb_lpc.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_time_awb\cmu_time_awb_lpc.c': No such file or directory 46>cmu_time_awb_mcep.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_time_awb\cmu_time_awb_mcep.c': No such file or directory 46>cmu_us_kal.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_kal\cmu_us_kal.c': No such file or directory 46>cmu_us_kal_diphone.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_kal\cmu_us_kal_diphone.c': No such file or directory 46>cmu_us_kal_lpc.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_kal\cmu_us_kal_lpc.c': No such file or directory 46>cmu_us_kal_res.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_kal\cmu_us_kal_res.c': No such file or directory 46>Generating Code... 46>Compiling... 46>cmu_us_kal_residx.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_kal\cmu_us_kal_residx.c': No such file or directory 46>cst_alloc.c 41>Generating Code... 41>Compiling... 41>nea_debug.c 41>nea_event.c 46>cst_args.c 41>nea_server.c 46>cst_cart.c 41>nea_tag.c 41>nea_tag_ref.c 46>cst_cg.c 41>auth_client.c 41>auth_common.c 46>cst_clunits.c 41>auth_digest.c 41>auth_module.c 46>cst_diphone.c 41>auth_module_http.c 41>auth_module_sip.c 46>cst_endian.c 46>cst_error.c 41>auth_plugin.c 46>cst_features.c 41>auth_plugin_delayed.c 46>cst_ffeature.c 41>auth_tag.c 41>auth_tag_ref.c 41>iptsec_debug.c 41>stun.c 46>cst_ffeatures.c 41>stun_common.c 46>cst_file_stdio.c 41>stun_dns.c 46>cst_item.c 41>stun_mini.c 41>Generating Code... 46>cst_lexicon.c 41>Compiling... 41>stun_tag.c 46>cst_lpcres.c 41>stun_tag_ref.c 41>nua.c 46>cst_lts.c 41>nua_client.c 46>cst_lts_rewrites.c 41>nua_common.c 46>cst_mlpg.c 41>nua_dialog.c 46>cst_mlsa.c 41>nua_event_server.c 41>nua_extension.c 46>Generating Code... 46>Compiling... 46>cst_mmap_win32.c 41>nua_message.c 41>nua_notifier.c 46>cst_phoneset.c 41>nua_options.c 46>cst_reflpc.c 46>cst_regex.c 41>nua_params.c 46>cst_rel_io.c 41>nua_publish.c 46>cst_relation.c 41>nua_register.c 46>cst_sigpr.c 41>nua_registrar.c 46>cst_socket.c 41>nua_server.c 46>cst_ss.c 46>cst_string.c 41>nua_session.c 46>cst_sts.c 41>nua_stack.c 46>cst_synth.c 41>nua_subnotref.c 46>cst_tokenstream.c 41>nua_tag.c 46>cst_track.c 41>Generating Code... 41>Compiling... 41>nua_tag_ref.c 41>outbound.c 46>cst_track_io.c 46>cst_units.c 41>nta.c 46>cst_utt_utils.c 41>nta_check.c 46>cst_utterance.c 41>nta_tag.c 41>nta_tag_ref.c 41>sl_read_payload.c 46>cst_val.c 41>sl_utils_log.c 41>sl_utils_print.c 41>tport.c 46>cst_val_const.c 41>tport_logging.c 46>Generating Code... 46>Compiling... 46>cst_val_user.c 41>tport_stub_sigcomp.c 41>tport_stub_stun.c 46>cst_vc.c 46>cst_viterbi.c 41>tport_tag.c 46>cst_voice.c 41>tport_tag_ref.c 41>tport_type_connect.c 41>tport_type_tcp.c 46>cst_wave.c 41>tport_type_udp.c 46>cst_wave_io.c 41>sdp.c 41>sdp_parse.c 46>cst_wave_utils.c 46>flite.c 41>Generating Code... 46>rateconv.c 41>Compiling... 41>sdp_print.c 41>sdp_tag.c 41>sdp_tag_ref.c 41>soa.c 46>regexp.c 41>soa_static.c 46>regsub.c 41>soa_tag.c 41>soa_tag_ref.c 46>us_aswd.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_aswd.c': No such file or directory 46>us_dur_stats.c 41>inet_ntop.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_dur_stats.c': No such file or directory 46>us_durz_cart.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_durz_cart.c': No such file or directory 46>us_expand.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_expand.c': No such file or directory 46>us_f0_model.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_f0_model.c': No such file or directory 46>us_f0lr.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_f0lr.c': No such file or directory 46>us_ffeatures.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_ffeatures.c': No such file or directory 46>us_gpos.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_gpos.c': No such file or directory 46>us_int_accent_cart.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_int_accent_cart.c': No such file or directory 46>Generating Code... 46>Compiling... 46>us_int_tone_cart.c 41>Generating Code... 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_int_tone_cart.c': No such file or directory 46>us_nums_cart.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_nums_cart.c': No such file or directory 46>us_phoneset.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_phoneset.c': No such file or directory 41>Creating library... 46>us_phrasing_cart.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_phrasing_cart.c': No such file or directory 46>us_text.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\us_text.c': No such file or directory 46>usenglish.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\usenglish\usenglish.c': No such file or directory 46>cmu_us_slt.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_slt\cmu_us_slt.c': No such file or directory 46>cmu_us_slt_cg.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_slt\cmu_us_slt_cg.c': No such file or directory 46>cmu_us_slt_cg_durmodel.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_slt\cmu_us_slt_cg_durmodel.c': No such file or directory 46>cmu_us_slt_cg_f0_trees.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_slt\cmu_us_slt_cg_f0_trees.c': No such file or directory 46>cmu_us_slt_cg_mcep_trees.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_slt\cmu_us_slt_cg_mcep_trees.c': No such file or directory 46>cmu_us_slt_cg_params.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_slt\cmu_us_slt_cg_params.c': No such file or directory 46>cmu_us_slt_cg_phonestate.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_slt\cmu_us_slt_cg_phonestate.c': No such file or directory 46>cmu_us_awb.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_awb\cmu_us_awb.c': No such file or directory 46>cmu_us_awb_cg.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_awb\cmu_us_awb_cg.c': No such file or directory 46>cmu_us_awb_cg_durmodel.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_awb\cmu_us_awb_cg_durmodel.c': No such file or directory 46>cmu_us_awb_cg_f0_trees.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_awb\cmu_us_awb_cg_f0_trees.c': No such file or directory 46>cmu_us_awb_cg_mcep_trees.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_awb\cmu_us_awb_cg_mcep_trees.c': No such file or directory 46>cmu_us_awb_cg_params.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_awb\cmu_us_awb_cg_params.c': No such file or directory 46>cmu_us_awb_cg_phonestate.c 46>c1 : fatal error C1083: Cannot open source file: '..\..\flite-1.3.99\lang\cmu_us_awb\cmu_us_awb_cg_phonestate.c': No such file or directory 46>Generating Code... 46>Compiling... 46>cmu_us_rms.c 41>Creating browse information file... 46>e:\fs\libs\flite-1.3.99\lang\cmu_us_rms\cmu_us_rms.c(46) : fatal error C1083: Cannot open include file: 'usenglish.h': No such file or directory 46>cmu_us_rms_cg.c 46>cmu_us_rms_cg_durmodel.c 46>cmu_us_rms_cg_f0_trees.c 46>cmu_us_rms_cg_mcep_trees.c 46>cmu_us_rms_cg_params.c 46>e:\fs\libs\flite-1.3.99\lang\cmu_us_rms\cmu_us_rms_cg_params.c(18964) : fatal error C1075: end of file found before the left brace '{' at 'e:\fs\libs\flite-1.3.99\lang\cmu_us_rms\cmu_us_rms_cg_params.c(18962)' was matched 46>cmu_us_rms_cg_phonestate.c 46>au_command.c 46>Generating Code... 46>Build log was saved at "file://e:\fs\libs\win32\flite\Debug\BuildLog.htm" 46>flite - 47 error(s), 0 warning(s) 47>------ Build started: Project: libdingaling, Configuration: Debug Win32 ------ 47>Compiling... Christian Jensen Software Development Manager - Back Office Teligence T: 604-629-6055 Ext. 3304 M: 778-996-4283 F: 604-257-5578 christian.jensen at teligence.net www.teligence.net -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/5f883c03/attachment-0001.html From brian at freeswitch.org Tue Jul 14 12:28:33 2009 From: brian at freeswitch.org (Brian West) Date: Tue, 14 Jul 2009 14:28:33 -0500 Subject: [Freeswitch-dev] Error compiling Windows from trunk In-Reply-To: References: Message-ID: And you're sure you're using our flite tarball? Those files were ripped out of our tarball. /b On Jul 14, 2009, at 2:14 PM, Christian Jensen wrote: > There appears to be an issue compiling on Windows. > > I just pull a fresh trunk down and did a ?build? ? flite gets > downloaded but is unable to compile properly. r14246 > > I am attempting to build so that I can apply a patch Brian supplied > me. > > Here is the Output from VS2008 ? I available to try and correct this > if you point me in the right direction. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/cf40774c/attachment.html From Christian.Jensen at Teligence.Net Tue Jul 14 12:44:26 2009 From: Christian.Jensen at Teligence.Net (Christian Jensen) Date: Tue, 14 Jul 2009 12:44:26 -0700 Subject: [Freeswitch-dev] Error compiling Windows from trunk In-Reply-To: References: Message-ID: Unless I am doing something really whacky, here are my steps... 1. Check out from trunk into e:\fs - folder was empty prior to checkout 2. Open Freeswitch.2008.sln 3. Right click on solution - select "Build" I then saw the error and submitted it to the list - am I missing a step? The solution appears to be in "Debug" state but I think that is normal. Just to be sure I have issued a "rebuild" and the error has persisted. Christian Jensen Software Development Manager Back Office ________________________________ From: freeswitch-dev-bounces at lists.freeswitch.org [mailto:freeswitch-dev-bounces at lists.freeswitch.org] On Behalf Of Brian West Sent: Tuesday, July 14, 2009 12:29 PM To: freeswitch-dev at lists.freeswitch.org Subject: Re: [Freeswitch-dev] Error compiling Windows from trunk And you're sure you're using our flite tarball? Those files were ripped out of our tarball. /b On Jul 14, 2009, at 2:14 PM, Christian Jensen wrote: There appears to be an issue compiling on Windows. I just pull a fresh trunk down and did a "build" - flite gets downloaded but is unable to compile properly. r14246 I am attempting to build so that I can apply a patch Brian supplied me. Here is the Output from VS2008 - I available to try and correct this if you point me in the right direction. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/d88ed1ab/attachment.html From jlenk at frontiernet.net Tue Jul 14 13:32:53 2009 From: jlenk at frontiernet.net (jlenk at frontiernet.net) Date: Tue, 14 Jul 2009 20:32:53 +0000 (UTC) Subject: [Freeswitch-dev] Error compiling Windows from trunk In-Reply-To: <403112255.2595861247603171964.JavaMail.root@cl04-host01.roch.ny.frontiernet.net> Message-ID: <1631923263.2597941247603573368.JavaMail.root@cl04-host01.roch.ny.frontiernet.net> Do those missing files exist? They are in the tarball so they have to. I just did a fresh download and flite builds ok Your build steps are fine though - was anything changed on your end? -Jeff ----- Original Message ----- From: "Christian Jensen" To: freeswitch-dev at lists.freeswitch.org Sent: Tuesday, July 14, 2009 2:44:26 PM GMT -06:00 US/Canada Central Subject: Re: [Freeswitch-dev] Error compiling Windows from trunk Unless I am doing something really whacky, here are my steps? ? 1. Check out from trunk into e:\fs ? folder was empty prior to checkout 2. Open Freeswitch.2008.sln 3. Right click on solution ? select ?Build? ? I then saw the error and submitted it to the list ? am I missing a step? The solution appears to be in ?Debug? state but I think that is normal. ? Just to be sure I have issued a ?rebuild? and the error has persisted. ? Christian Jensen Software Development Manager Back Office From: freeswitch-dev-bounces at lists.freeswitch.org [mailto:freeswitch-dev-bounces at lists.freeswitch.org] On Behalf Of Brian West Sent: Tuesday, July 14, 2009 12:29 PM To: freeswitch-dev at lists.freeswitch.org Subject: Re: [Freeswitch-dev] Error compiling Windows from trunk ? And you're sure you're?using?our?flite?tarball???Those?files?were?ripped?out?of?our?tarball. ? /b ? On Jul 14, 2009, at 2:14 PM, Christian Jensen wrote: There appears to be an issue compiling on Windows. ? I just pull a fresh trunk down and did a ?build? ? flite gets downloaded but is unable to compile properly. r14246 ? I am attempting to build so that I can apply a patch Brian supplied me. ? Here is the Output from VS2008 ? I available to try and correct this if you point me in the right direction. ? I just pull a fresh trunk down and did a ?build? ? flite gets downloaded but is unable to compile properly. r14246 ? I am attempting to build so that I can apply a patch Brian supplied me. ? Here is the Output from VS2008 ? I available to try and correct this if you point me in the right direction. ? _______________________________________________ Freeswitch-dev mailing list Freeswitch-dev at lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org From brian at freeswitch.org Tue Jul 14 13:42:34 2009 From: brian at freeswitch.org (Brian West) Date: Tue, 14 Jul 2009 15:42:34 -0500 Subject: [Freeswitch-dev] Error compiling Windows from trunk In-Reply-To: <1631923263.2597941247603573368.JavaMail.root@cl04-host01.roch.ny.frontiernet.net> References: <1631923263.2597941247603573368.JavaMail.root@cl04-host01.roch.ny.frontiernet.net> Message-ID: <54600F64-899D-42AA-8D84-140E74B3EEFC@freeswitch.org> They do not exist in our tarballs at all and haven't for some time. /b On Jul 14, 2009, at 3:32 PM, jlenk at frontiernet.net wrote: > Do those missing files exist? They are in the tarball so they have to. > > I just did a fresh download and flite builds ok > > Your build steps are fine though - was anything changed on your end? > > -Jeff From jlenk at frontiernet.net Tue Jul 14 14:49:51 2009 From: jlenk at frontiernet.net (jlenk at frontiernet.net) Date: Tue, 14 Jul 2009 21:49:51 +0000 (UTC) Subject: [Freeswitch-dev] Error compiling Windows from trunk In-Reply-To: <164447492.2616141247608056564.JavaMail.root@cl04-host01.roch.ny.frontiernet.net> Message-ID: <1287893464.2616641247608191565.JavaMail.root@cl04-host01.roch.ny.frontiernet.net> Hi Brian, Sorry I cant find the right file- The windows build downloads flite-1.3.99-latest.tar.gz from march 5th. http://files.freeswitch.org/downloads/libs/flite-1.3.99-latest.tar.gz What is the correct version of the tarball? ----- Original Message ----- From: "Brian West" To: freeswitch-dev at lists.freeswitch.org Sent: Tuesday, July 14, 2009 3:42:34 PM GMT -06:00 US/Canada Central Subject: Re: [Freeswitch-dev] Error compiling Windows from trunk They do not exist in our tarballs at all and haven't for some time. /b On Jul 14, 2009, at 3:32 PM, jlenk at frontiernet.net wrote: > Do those missing files exist? They are in the tarball so they have to. > > I just did a fresh download and flite builds ok > > Your build steps are fine though - was anything changed on your end? > > -Jeff _______________________________________________ Freeswitch-dev mailing list Freeswitch-dev at lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org From brian at freeswitch.org Tue Jul 14 14:52:58 2009 From: brian at freeswitch.org (Brian West) Date: Tue, 14 Jul 2009 16:52:58 -0500 Subject: [Freeswitch-dev] Error compiling Windows from trunk In-Reply-To: <1287893464.2616641247608191565.JavaMail.root@cl04-host01.roch.ny.frontiernet.net> References: <1287893464.2616641247608191565.JavaMail.root@cl04-host01.roch.ny.frontiernet.net> Message-ID: <73E95906-DEB8-4B26-8F4B-5B0B04FF8F6B@freeswitch.org> yes thats it. /b On Jul 14, 2009, at 4:49 PM, jlenk at frontiernet.net wrote: > Hi Brian, > > Sorry I cant find the right file- > > The windows build downloads flite-1.3.99-latest.tar.gz from march 5th. > > http://files.freeswitch.org/downloads/libs/flite-1.3.99-latest.tar.gz > > What is the correct version of the tarball? -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090714/d4fd746e/attachment-0001.html From Christian.Jensen at Teligence.Net Tue Jul 14 15:58:51 2009 From: Christian.Jensen at Teligence.Net (Christian Jensen) Date: Tue, 14 Jul 2009 15:58:51 -0700 Subject: [Freeswitch-dev] Error compiling Windows from trunk In-Reply-To: <54600F64-899D-42AA-8D84-140E74B3EEFC@freeswitch.org> References: <1631923263.2597941247603573368.JavaMail.root@cl04-host01.roch.ny.frontiernet.net> <54600F64-899D-42AA-8D84-140E74B3EEFC@freeswitch.org> Message-ID: There appears to be an issue with the tarball that is getting downloaded. I tried using 7ZIP to decompress the tar file and it is indicating that it is "broken" I hunted down the "source" for the file - http://files.freeswitch.org/downloads/libs/flite-1.3.99-latest.tar.gz I downloaded it and it was 16MB whereas the one I had on disk was around 3.5MB After deleting the files (uncompressed as well) everything built perfectly. I am not sure why the build did not complain about the file not being correct. Maybe an added check or MD5/CRC could be performed some day as part of the build. Christian Jensen Software Development Manager Back Office -----Original Message----- From: freeswitch-dev-bounces at lists.freeswitch.org [mailto:freeswitch-dev-bounces at lists.freeswitch.org] On Behalf Of Brian West Sent: Tuesday, July 14, 2009 1:43 PM To: freeswitch-dev at lists.freeswitch.org Subject: Re: [Freeswitch-dev] Error compiling Windows from trunk They do not exist in our tarballs at all and haven't for some time. /b On Jul 14, 2009, at 3:32 PM, jlenk at frontiernet.net wrote: > Do those missing files exist? They are in the tarball so they have to. > > I just did a fresh download and flite builds ok > > Your build steps are fine though - was anything changed on your end? > > -Jeff _______________________________________________ Freeswitch-dev mailing list Freeswitch-dev at lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org From msc at freeswitch.org Wed Jul 15 12:04:08 2009 From: msc at freeswitch.org (Michael Collins) Date: Wed, 15 Jul 2009 12:04:08 -0700 Subject: [Freeswitch-dev] Quick XML parser question Message-ID: <87f2f3b90907151204v3fba3fbfsffe6710c5dec8b78@mail.gmail.com> Guys, This dialplan entry does not cause an XML parser error: Just curious - is the parser supposed to bomb out when it sees two < characters without a > in between? -MC -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090715/e01475d5/attachment.html From freeswitch-dev at lists.freeswitch.org Wed Jul 15 20:40:34 2009 From: freeswitch-dev at lists.freeswitch.org (freeswitch-dev at lists.freeswitch.org) Date: Thu, 16 Jul 2009 11:40:34 +0800 Subject: [Freeswitch-dev] Question about Valgrind output showing mem leak in FS Message-ID: <27c25bc40907152040o70d075cfk2c22f1949490a510@mail.gmail.com> Hi, I run valgrind and get the following output. It points to some places where there are some "definitely memory leak". Is this a real issue or just a false alarm? [root at server ~]# cat /usr/local/freeswitch.bak/conf/test.log ==20667== Memcheck, a memory error detector. ==20667== Copyright (C) 2002-2006, and GNU GPL'd, by Julian Seward et al. ==20667== Using LibVEX rev 1658, a library for dynamic binary translation. ==20667== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks LLP. ==20667== Using valgrind-3.2.1, a dynamic binary instrumentation framework. ==20667== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al. ==20667== For more details, rerun with: -v ==20667== ==20667== My PID = 20667, parent PID = 19188. Prog and args are: ==20667== /usr/local/freeswitch.bak/bin/freeswitch ==20667== -vg ==20667== -log ==20667== /usr/local/freeswitch.bak/log/ ==20667== -conf ==20667== /usr/local/freeswitch.bak/conf/ ==20667== -db ==20667== /usr/local/freeswitch.bak/db/ ==20667== ==20667== Warning: set address range perms: large range 1024004096 (defined) ==20667== Warning: set address range perms: large range 1024004096 (defined) ==20667== Warning: set address range perms: large range 1024004096 (noaccess) ==20667== Warning: set address range perms: large range 1024004096 (noaccess) ==20667== Warning: set address range perms: large range 1024004096 (defined) ==20667== Warning: set address range perms: large range 1024004096 (defined) ==20667== Warning: set address range perms: large range 1024004096 (noaccess) ==20667== Warning: set address range perms: large range 1024004096 (noaccess) ==20667== ==20667== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 68 from 1) ==20667== malloc/free: in use at exit: 1,121,194 bytes in 426 blocks. ==20667== malloc/free: 4,603,109 allocs, 4,602,683 frees, 1,569,942,087 bytes allocated. ==20667== For counts of detected errors, rerun with: -v ==20667== searching for pointers to 426 not-freed blocks. ==20667== checked 2,477,072 bytes. ==20667== ==20667== 513 bytes in 3 blocks are definitely lost in loss record 15 of 33 ==20667== at 0x4A05809: malloc (vg_replace_malloc.c:149) ==20667== by 0x4D1AA25: crypto_alloc (alloc.c:97) ==20667== by 0x4D18551: aes_icm_alloc_ismacryp (aes_icm.c:115) ==20667== by 0x4D16F59: cipher_type_self_test (cipher.c:264) ==20667== by 0x4D1A456: crypto_kernel_load_cipher_type (crypto_kernel.c:310) ==20667== by 0x4D1A955: crypto_kernel_init (crypto_kernel.c:154) ==20667== by 0x4D14D68: srtp_init (srtp.c:1081) ==20667== by 0x4C83A1A: switch_rtp_init (switch_rtp.c:407) ==20667== by 0x4C70935: switch_core_init (switch_core.c:1112) ==20667== by 0x4C719AF: switch_core_init_and_modload (switch_core.c:1278) ==20667== by 0x4025BA: main (switch.c:701) ==20667== ==20667== ==20667== 576 bytes in 1 blocks are definitely lost in loss record 17 of 33 ==20667== at 0x4A05809: malloc (vg_replace_malloc.c:149) ==20667== by 0x64B80D2: sofia_glue_do_invite (sofia_glue.c:1488) ==20667== by 0x6490913: sofia_on_init (mod_sofia.c:102) ==20667== by 0x4C69523: switch_core_session_run (switch_core_state_machine.c:480) ==20667== by 0x4C66D0F: switch_core_session_thread (switch_core_session.c:1065) ==20667== by 0x3B85806366: start_thread (in /lib64/libpthread-2.5.so) ==20667== by 0x3B850D2F7C: clone (in /lib64/libc-2.5.so) ==20667== ==20667== ==20667== 640 bytes in 2 blocks are possibly lost in loss record 18 of 33 ==20667== at 0x4A04B32: calloc (vg_replace_malloc.c:279) ==20667== by 0x3B84C0FF12: _dl_allocate_tls (in /lib64/ld-2.5.so) ==20667== by 0x3B85806AC2: pthread_create@@GLIBC_2.2.5 (in /lib64/ libpthread-2.5.so) ==20667== by 0x4C6FB05: switch_core_launch_thread (switch_core.c:390) ==20667== by 0x4C77DE0: switch_loadable_module_init (switch_loadable_module.c:121) ==20667== by 0x4C71AA9: switch_core_init_and_modload (switch_core.c:1307) ==20667== by 0x4025BA: main (switch.c:701) ==20667== ==20667== ==20667== 1,152 bytes in 2 blocks are definitely lost in loss record 23 of 33 ==20667== at 0x4A05809: malloc (vg_replace_malloc.c:149) ==20667== by 0x6499E41: sofia_handle_sip_i_invite (sofia.c:4891) ==20667== by 0x649E733: sofia_event_callback (sofia.c:478) ==20667== by 0x6519D19: nua_application_event (nua_stack.c:393) ==20667== by 0x65971E8: su_base_port_execute_msgs (su_base_port.c:280) ==20667== by 0x6596F60: su_base_port_getmsgs (su_base_port.c:202) ==20667== by 0x6597503: su_base_port_step (su_base_port.c:473) ==20667== by 0x659A2C5: su_port_step (su_port.h:340) ==20667== by 0x659A28D: su_root_step (su_root.c:858) ==20667== by 0x64A8E9A: sofia_profile_thread_run (sofia.c:877) ==20667== by 0x3B85806366: start_thread (in /lib64/libpthread-2.5.so) ==20667== by 0x3B850D2F7C: clone (in /lib64/libc-2.5.so) ==20667== ==20667== ==20667== 2,211 bytes in 201 blocks are definitely lost in loss record 24 of 33 ==20667== at 0x4A05809: malloc (vg_replace_malloc.c:149) ==20667== by 0x3B85078AC1: strdup (in /lib64/libc-2.5.so) ==20667== by 0x72EE44F: ??? (mod_highroute.c:1445) ==20667== by 0x4C67197: switch_core_session_exec (switch_core_session.c:1473) ==20667== by 0x4C6761E: switch_core_session_execute_application (switch_core_session.c:1395) ==20667== by 0x4C6A892: switch_core_session_run (switch_core_state_machine.c:166) ==20667== by 0x4C66D0F: switch_core_session_thread (switch_core_session.c:1065) ==20667== by 0x3B85806366: start_thread (in /lib64/libpthread-2.5.so) ==20667== by 0x3B850D2F7C: clone (in /lib64/libc-2.5.so) ==20667== ==20667== LEAK SUMMARY: ==20667== definitely lost: 4,452 bytes in 207 blocks. ==20667== possibly lost: 640 bytes in 2 blocks. ==20667== still reachable: 1,116,102 bytes in 217 blocks. ==20667== suppressed: 0 bytes in 0 blocks. ==20667== Reachable blocks (those to which a pointer was found) are not shown. ==20667== To see them, rerun with: --show-reachable=yes -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090716/40305422/attachment.html From freeswitch-dev at lists.freeswitch.org Wed Jul 15 20:55:06 2009 From: freeswitch-dev at lists.freeswitch.org (freeswitch-dev at lists.freeswitch.org) Date: Wed, 15 Jul 2009 22:55:06 -0500 Subject: [Freeswitch-dev] Question about Valgrind output showing mem leak in FS In-Reply-To: <27c25bc40907152040o70d075cfk2c22f1949490a510@mail.gmail.com> References: <27c25bc40907152040o70d075cfk2c22f1949490a510@mail.gmail.com> Message-ID: <3CA0B6D7-835F-4740-904F-5E8E68488649@freeswitch.org> You'll have a little loss and 4k isn't anything to worry with if you show its megs and megs then you worry. What you show is 100% normal, let it run for a few hours and check again if its not over a few k then you have nothing to worry about. /b On Jul 15, 2009, at 10:40 PM, freeswitch-dev at lists.freeswitch.org wrote: > Hi, > > I run valgrind and get the following output. It points to some > places where there are some "definitely memory leak". Is this a > real issue or just a false alarm? From freeswitch-dev at lists.freeswitch.org Wed Jul 15 21:35:08 2009 From: freeswitch-dev at lists.freeswitch.org (freeswitch-dev at lists.freeswitch.org) Date: Wed, 15 Jul 2009 23:35:08 -0500 Subject: [Freeswitch-dev] Question about Valgrind output showing mem leak in FS In-Reply-To: <27c25bc40907152040o70d075cfk2c22f1949490a510@mail.gmail.com> References: <27c25bc40907152040o70d075cfk2c22f1949490a510@mail.gmail.com> Message-ID: Some questions? 1) How many calls did you run through FS to produce this log? 2) What svn rev were you on (line numbers don't match) 3) Best to focus on leaks that are hit on a per-call basis. init leaks are annoying but not the end of the world. On Wed, Jul 15, 2009 at 10:40 PM, wrote: > Hi, > > I run valgrind and get the following output. It points to some places > where there are some "definitely memory leak". Is this a real issue or just > a false alarm? > > ==20667== 513 bytes in 3 blocks are definitely lost in loss record 15 of 33 > ==20667== at 0x4A05809: malloc (vg_replace_malloc.c:149) > ==20667== by 0x4D1AA25: crypto_alloc (alloc.c:97) > ==20667== by 0x4D18551: aes_icm_alloc_ismacryp (aes_icm.c:115) > ==20667== by 0x4D16F59: cipher_type_self_test (cipher.c:264) > ==20667== by 0x4D1A456: crypto_kernel_load_cipher_type > (crypto_kernel.c:310) > ==20667== by 0x4D1A955: crypto_kernel_init (crypto_kernel.c:154) > ==20667== by 0x4D14D68: srtp_init (srtp.c:1081) > ==20667== by 0x4C83A1A: switch_rtp_init (switch_rtp.c:407) > ==20667== by 0x4C70935: switch_core_init (switch_core.c:1112) > ==20667== by 0x4C719AF: switch_core_init_and_modload > (switch_core.c:1278) > ==20667== by 0x4025BA: main (switch.c:701) > init leak > ==20667== > ==20667== > ==20667== 576 bytes in 1 blocks are definitely lost in loss record 17 of 33 > ==20667== at 0x4A05809: malloc (vg_replace_malloc.c:149) > ==20667== by 0x64B80D2: sofia_glue_do_invite (sofia_glue.c:1488) > ==20667== by 0x6490913: sofia_on_init (mod_sofia.c:102) > ==20667== by 0x4C69523: switch_core_session_run > (switch_core_state_machine.c:480) > ==20667== by 0x4C66D0F: switch_core_session_thread > (switch_core_session.c:1065) > ==20667== by 0x3B85806366: start_thread (in /lib64/libpthread-2.5.so) > ==20667== by 0x3B850D2F7C: clone (in /lib64/libc-2.5.so) > ==20667== Should be looked at -- but I line numbers don't line up with what I have. > > ==20667== > ==20667== 640 bytes in 2 blocks are possibly lost in loss record 18 of 33 > ==20667== at 0x4A04B32: calloc (vg_replace_malloc.c:279) > ==20667== by 0x3B84C0FF12: _dl_allocate_tls (in /lib64/ld-2.5.so) > ==20667== by 0x3B85806AC2: pthread_create@@GLIBC_2.2.5 (in /lib64/ > libpthread-2.5.so) > ==20667== by 0x4C6FB05: switch_core_launch_thread (switch_core.c:390) > ==20667== by 0x4C77DE0: switch_loadable_module_init > (switch_loadable_module.c:121) > ==20667== by 0x4C71AA9: switch_core_init_and_modload > (switch_core.c:1307) > ==20667== by 0x4025BA: main (switch.c:701) > ==20667== init leak > > ==20667== > ==20667== 1,152 bytes in 2 blocks are definitely lost in loss record 23 of > 33 > ==20667== at 0x4A05809: malloc (vg_replace_malloc.c:149) > ==20667== by 0x6499E41: sofia_handle_sip_i_invite (sofia.c:4891) > ==20667== by 0x649E733: sofia_event_callback (sofia.c:478) > ==20667== by 0x6519D19: nua_application_event (nua_stack.c:393) > ==20667== by 0x65971E8: su_base_port_execute_msgs (su_base_port.c:280) > ==20667== by 0x6596F60: su_base_port_getmsgs (su_base_port.c:202) > ==20667== by 0x6597503: su_base_port_step (su_base_port.c:473) > ==20667== by 0x659A2C5: su_port_step (su_port.h:340) > ==20667== by 0x659A28D: su_root_step (su_root.c:858) > ==20667== by 0x64A8E9A: sofia_profile_thread_run (sofia.c:877) > ==20667== by 0x3B85806366: start_thread (in /lib64/libpthread-2.5.so) > ==20667== by 0x3B850D2F7C: clone (in /lib64/libc-2.5.so) > Should be looked at. > ==20667== > ==20667== > ==20667== 2,211 bytes in 201 blocks are definitely lost in loss record 24 > of 33 > ==20667== at 0x4A05809: malloc (vg_replace_malloc.c:149) > ==20667== by 0x3B85078AC1: strdup (in /lib64/libc-2.5.so) > ==20667== by 0x72EE44F: ??? (mod_highroute.c:1445) > ==20667== by 0x4C67197: switch_core_session_exec > (switch_core_session.c:1473) > ==20667== by 0x4C6761E: switch_core_session_execute_application > (switch_core_session.c:1395) > ==20667== by 0x4C6A892: switch_core_session_run > (switch_core_state_machine.c:166) > ==20667== by 0x4C66D0F: switch_core_session_thread > (switch_core_session.c:1065) > ==20667== by 0x3B85806366: start_thread (in /lib64/libpthread-2.5.so) > ==20667== by 0x3B850D2F7C: clone (in /lib64/libc-2.5.so) > Whats that? -- -Rupa -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090715/69f23334/attachment.html From marketing at cluecon.com Thu Jul 16 11:29:38 2009 From: marketing at cluecon.com (Michael Collins) Date: Thu, 16 Jul 2009 11:29:38 -0700 Subject: [Freeswitch-dev] ClueCon 2009 - News and Notes Message-ID: <87f2f3b90907161129m29921db0q611bb87b791ab522@mail.gmail.com> Only 19 more days until ClueCon! If you haven't registered then please do so right away by calling 877.742.CLUE. This year's event is going to be awesome - you don't want to miss it! Some news and notes: We have two more sponsors for our event this year: Nokia and Twilio! We are happy to welcome them both to the conference this year. Many of our sponsors are supplying items for each attendee as well as some nice prizes that will be raffled off at the end of events on Thursday afternoon. We also have a very special guest who will be speaking at ClueCon: Philip Zimmermann! Philip is the author of PGP and co-author of ZRTP. We look forward to his presentation on Wednesday. Another security expert, Dan York of Voxeo, will also be speaking on Wednesday. All of those who are interested in security will want to pay special attention to Wednesday's program. Thanks for your support and we look forward to seeing you in a few weeks! -Michael Collins http://www.cluecon.com 877.742.CLUE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090716/dc1c2cbd/attachment.html From rentmycoder at gmail.com Thu Jul 16 11:58:08 2009 From: rentmycoder at gmail.com (rentmycoder rentmycoder) Date: Thu, 16 Jul 2009 20:58:08 +0200 Subject: [Freeswitch-dev] access session variables after hangup Message-ID: <50e456910907161158j9f0c3eaw8f2948e5f5c8216d@mail.gmail.com> Ok, let's explain some situations when cdr is not usable. Let's take a simple IVR, callers dial in, navigate in the menu system, at some point they hangup. My customer needs a realtime monitor which shows the active calls in the system each with realtime data (calldate,callerid,actual menuitem, actual action (playing a wav file or waiting for dtmf), total call time, calltime since actual menu entered, etc...). With asterisk i just use AGI to communicate with an external mysql database to store this information and an external website, which connects to this database and show;s it's realtime content in the administrator's browser. How can I do this with freeswitch most effectively? I could use event socket, but for this simple task I think lua would be more cost effective... But I cannot execute any script telling the database that the actual call is hanged up... any idea? From msc at freeswitch.org Thu Jul 16 12:22:15 2009 From: msc at freeswitch.org (Michael Collins) Date: Thu, 16 Jul 2009 12:22:15 -0700 Subject: [Freeswitch-dev] access session variables after hangup In-Reply-To: <50e456910907161158j9f0c3eaw8f2948e5f5c8216d@mail.gmail.com> References: <50e456910907161158j9f0c3eaw8f2948e5f5c8216d@mail.gmail.com> Message-ID: <87f2f3b90907161222w2558c0aas7541a70851343c77@mail.gmail.com> On Thu, Jul 16, 2009 at 11:58 AM, rentmycoder rentmycoder < rentmycoder at gmail.com> wrote: > Ok, let's explain some situations when cdr is not usable. > Let's take a simple IVR, callers dial in, navigate in the menu system, > at some point they hangup. > > My customer needs a realtime monitor which shows the active calls in > the system each with realtime data (calldate,callerid,actual menuitem, > actual action (playing a wav file or waiting for dtmf), total call > time, calltime since actual menu entered, etc...). > With asterisk i just use AGI to communicate with an external mysql > database to store this information and an external website, which > connects to this database and show;s it's realtime content in the > administrator's browser. > How can I do this with freeswitch most effectively? > I could use event socket, but for this simple task I think lua would > be more cost effective... But I cannot execute any script telling the > database that the actual call is hanged up... > any idea? > Whenever I hear the words "real time" I immediately think "event socket." I can't think of any valid reason not to use the event socket - its design is tailor made for this kind of application. OTOH, I suppose you *could* use Lua and have it attempt to connect to some external entity and deliver some information on a hangup or other point. However that seems kludgy/Asterisky to me. I think an elegant solution would be to build the IVR in whatever language you prefer and use the event socket to control the calls. Then you can have your IVR program also handle the updating of the database. Every time the IVR told a call to do something, or rec'd a DTMF, or got a hangup, etc. it could update the database and then you could build the pretty GUI/dashboard that customers just love. -MC -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090716/e473f951/attachment.html From anthony.minessale at gmail.com Thu Jul 16 12:51:00 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Thu, 16 Jul 2009 14:51:00 -0500 Subject: [Freeswitch-dev] access session variables after hangup In-Reply-To: <87f2f3b90907161222w2558c0aas7541a70851343c77@mail.gmail.com> References: <50e456910907161158j9f0c3eaw8f2948e5f5c8216d@mail.gmail.com> <87f2f3b90907161222w2558c0aas7541a70851343c77@mail.gmail.com> Message-ID: <191c3a030907161251y28c1c1c5g1b0b583beedb2ec0@mail.gmail.com> There is an api_hangup_hook var you can use to set to cause an FSAPI call to execute when the call hangs up. You can use this to call a lua script. In the script you can access the data from the env event which is automatically created for you and it contains all the channel variables from that departed channel. On Thu, Jul 16, 2009 at 2:22 PM, Michael Collins wrote: > > > On Thu, Jul 16, 2009 at 11:58 AM, rentmycoder rentmycoder < > rentmycoder at gmail.com> wrote: > >> Ok, let's explain some situations when cdr is not usable. >> Let's take a simple IVR, callers dial in, navigate in the menu system, >> at some point they hangup. >> >> My customer needs a realtime monitor which shows the active calls in >> the system each with realtime data (calldate,callerid,actual menuitem, >> actual action (playing a wav file or waiting for dtmf), total call >> time, calltime since actual menu entered, etc...). >> With asterisk i just use AGI to communicate with an external mysql >> database to store this information and an external website, which >> connects to this database and show;s it's realtime content in the >> administrator's browser. >> How can I do this with freeswitch most effectively? >> I could use event socket, but for this simple task I think lua would >> be more cost effective... But I cannot execute any script telling the >> database that the actual call is hanged up... >> any idea? >> > > Whenever I hear the words "real time" I immediately think "event socket." I > can't think of any valid reason not to use the event socket - its design is > tailor made for this kind of application. OTOH, I suppose you *could* use > Lua and have it attempt to connect to some external entity and deliver some > information on a hangup or other point. However that seems kludgy/Asterisky > to me. > > I think an elegant solution would be to build the IVR in whatever language > you prefer and use the event socket to control the calls. Then you can have > your IVR program also handle the updating of the database. Every time the > IVR told a call to do something, or rec'd a DTMF, or got a hangup, etc. it > could update the database and then you could build the pretty GUI/dashboard > that customers just love. > > -MC > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090716/011d4c25/attachment.html From john at feith.com Fri Jul 17 15:01:06 2009 From: john at feith.com (John Wehle) Date: Fri, 17 Jul 2009 18:01:06 -0400 (EDT) Subject: [Freeswitch-dev] modifying oz to support hairpin calls / bypass_media_after_bridge Message-ID: <200907172201.n6HM169Z025578@jwlab.FEITH.COM> The particular application I have in mind is routing incoming data calls to the correct digital modem banks. Using T1 and zaptel I'd like to take a incoming call on channel X and cross connect it to channel Y when bridging. I believe that bypass_media_after_bridge is intended to control this behavior. On the zaptel side it appears this is done by issuing ZT_CHANCONFIG with the appropriate zt_chanconfig. Where I'm looking for guidance is what needs to be in mod_openzap for FreeSWITCH to activate this behavior. I.e.: a) at some point FreeSWITCH needs to indicate to the openzap endpoint that FS channel A should be bridged to FS channel B. How does this happen? b) openzap then needs to look at channel A and B to determine if they can be bridged at the openzap layer. How does it indicate to FreeSWITCH that the channels have been bridged by openzap? c) what does call teardown look like? -- John ------------------------------------------------------------------------- | Feith Systems | Voice: 1-215-646-8000 | Email: john at feith.com | | John Wehle | Fax: 1-215-540-5495 | | ------------------------------------------------------------------------- From anthony.minessale at gmail.com Fri Jul 17 15:59:22 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Fri, 17 Jul 2009 17:59:22 -0500 Subject: [Freeswitch-dev] modifying oz to support hairpin calls / bypass_media_after_bridge In-Reply-To: <200907172201.n6HM169Z025578@jwlab.FEITH.COM> References: <200907172201.n6HM169Z025578@jwlab.FEITH.COM> Message-ID: <191c3a030907171559n514cf2e2jeede2da40848dcbb@mail.gmail.com> if it's even possible you would have to build that functionality from ozmod_zt all the way through the openzap core and up into mod_openzap It's a pretty tall order at this juncture. the zap_channel_command in openzap which is akin to our userspace ioctl would need some sort of new command that you could use to tell a channel to direct bridge to another channel using some struct with the 2 channels in them as the void arg. that command would be passed down into the i/o mod eg ozmod_zt and probably in that paticular case you would do the same trick they use in meetme in asterisk to conference them. There would need to be lots of error checking along the way (has to be like channel types etc) The phase 2 of openzap is supposed to be an abstract kernel mod or cross platform driver abstraction where all the channels are of the same type one day. so one ozmod_ could normalize all the hardware even deeper level and provide this sort of thing as well. up in mod_openzap it would have to check for the MEDIA on and off indications and fire the zap_channel_command and report the results upstream. On Fri, Jul 17, 2009 at 5:01 PM, John Wehle wrote: > The particular application I have in mind is routing incoming data > calls to the correct digital modem banks. > > Using T1 and zaptel I'd like to take a incoming call on channel X > and cross connect it to channel Y when bridging. I believe that > bypass_media_after_bridge is intended to control this behavior. > > On the zaptel side it appears this is done by issuing ZT_CHANCONFIG > with the appropriate zt_chanconfig. Where I'm looking for guidance > is what needs to be in mod_openzap for FreeSWITCH to activate this > behavior. I.e.: > > a) at some point FreeSWITCH needs to indicate to the openzap endpoint > that FS channel A should be bridged to FS channel B. How does > this happen? > > b) openzap then needs to look at channel A and B to determine if they > can be bridged at the openzap layer. How does it indicate to > FreeSWITCH that the channels have been bridged by openzap? > > c) what does call teardown look like? > > -- John > ------------------------------------------------------------------------- > | Feith Systems | Voice: 1-215-646-8000 | Email: john at feith.com | > | John Wehle | Fax: 1-215-540-5495 | | > ------------------------------------------------------------------------- > > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090717/ac7c0aca/attachment.html From john at feith.com Fri Jul 17 16:29:14 2009 From: john at feith.com (John Wehle) Date: Fri, 17 Jul 2009 19:29:14 -0400 (EDT) Subject: [Freeswitch-dev] modifying oz to support hairpin calls / bypass_media_after_bridge In-Reply-To: <191c3a030907171559n514cf2e2jeede2da40848dcbb@mail.gmail.com> References: <191c3a030907171559n514cf2e2jeede2da40848dcbb@mail.gmail.com> Message-ID: <200907172329.n6HNTEC1025676@jwlab.FEITH.COM> > if it's even possible you would have to build that functionality from > ozmod_zt all the way through the openzap core and up into mod_openzap That doesn't bother me (i.e. seems straight forward enough). > There would need to be lots of error checking along the way (has to be like > channel types etc) Naturally. :-) > up in mod_openzap it would have to check for the MEDIA on and off This is where I'm fuzzy. Looking through the code it appears that ozmod_outgoing_channel is called to create the second leg of a call. The theory I'm developing is: Modify ozmod_outgoing_channel to use switch_session_compare to see if both sessions are openzap ... if so use the openzap core to cross connect the channels if bypass_media is set. though I'm sure there's more to it. Any and all guidance regarding what MEDIA events to look for and how to react is appreciated. I'm happy to code this ... I just want to try and implement it in the right fashion. -- John ------------------------------------------------------------------------- | Feith Systems | Voice: 1-215-646-8000 | Email: john at feith.com | | John Wehle | Fax: 1-215-540-5495 | | ------------------------------------------------------------------------- From john at feith.com Fri Jul 17 17:00:18 2009 From: john at feith.com (John Wehle) Date: Fri, 17 Jul 2009 20:00:18 -0400 (EDT) Subject: [Freeswitch-dev] modifying oz to support hairpin calls / bypass_media_after_bridge In-Reply-To: <191c3a030907171559n514cf2e2jeede2da40848dcbb@mail.gmail.com> References: <191c3a030907171559n514cf2e2jeede2da40848dcbb@mail.gmail.com> Message-ID: <200907180000.n6I00IxU025718@jwlab.FEITH.COM> > The theory I'm developing is: To revise my theory it appears: a) Do nothing in ozmod_outgoing_channel b) on INDICATE_NOMEDIA call switch_core_session_get_partner to get the partner. Use switch_session_compare to see if both sessions are openzap ... if so use the openzap core to cross connect the channels. c) on INDICATE_MEDIA use the openzap core to break down any cross channel connection. Am I headed in the right direction? :-) -- John ------------------------------------------------------------------------- | Feith Systems | Voice: 1-215-646-8000 | Email: john at feith.com | | John Wehle | Fax: 1-215-540-5495 | | ------------------------------------------------------------------------- From seven at idapted.com Sat Jul 18 08:17:12 2009 From: seven at idapted.com (seven du) Date: Sat, 18 Jul 2009 23:17:12 +0800 Subject: [Freeswitch-dev] Log->Line vs Log-Line in event socket header Message-ID: <0D66A8F3-58C9-490F-A869-AA9EDF7155EB@idapted.com> HI, I think it should be Log-Line, too simple to make a patch, but should I report on jira? version 14048. Dialplan: portaudio/1 Regex (FAIL) [group_dial_sales] destination_number(1) =~ /^2000$/ break=on-false Content-Type: log/data Content-Length: 75 Log-Level: 7 Text-Channel: 1 Log-File: mod_dialplan_xml.c Log-Func: dialplan_hunt Log->Line: 304 Dialplan: portaudio/1 parsing [default->group_dial_support] continue=false From brian at freeswitch.org Sat Jul 18 12:08:25 2009 From: brian at freeswitch.org (Brian West) Date: Sat, 18 Jul 2009 14:08:25 -0500 Subject: [Freeswitch-dev] Log->Line vs Log-Line in event socket header In-Reply-To: <0D66A8F3-58C9-490F-A869-AA9EDF7155EB@idapted.com> References: <0D66A8F3-58C9-490F-A869-AA9EDF7155EB@idapted.com> Message-ID: <6BA116E2-B6DF-44AC-B19C-89CCF8754C10@freeswitch.org> Fixed in 14294 /b On Jul 18, 2009, at 10:17 AM, seven du wrote: > Log->Line From mike at jerris.com Sat Jul 18 12:13:02 2009 From: mike at jerris.com (Michael Jerris) Date: Sat, 18 Jul 2009 15:13:02 -0400 Subject: [Freeswitch-dev] Log->Line vs Log-Line in event socket header In-Reply-To: <0D66A8F3-58C9-490F-A869-AA9EDF7155EB@idapted.com> References: <0D66A8F3-58C9-490F-A869-AA9EDF7155EB@idapted.com> Message-ID: <673FEC50-2855-49FC-A1C8-63FFAE73853D@jerris.com> Fixed in rev 14294. On Jul 18, 2009, at 11:17 AM, seven du wrote: > HI, > > I think it should be Log-Line, too simple to make a patch, but should > I report on jira? > > version 14048. > > > Dialplan: portaudio/1 Regex (FAIL) [group_dial_sales] > destination_number(1) =~ /^2000$/ break=on-false > Content-Type: log/data > Content-Length: 75 > Log-Level: 7 > Text-Channel: 1 > Log-File: mod_dialplan_xml.c > Log-Func: dialplan_hunt > Log->Line: 304 > > Dialplan: portaudio/1 parsing [default->group_dial_support] > continue=false > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From marketing at cluecon.com Mon Jul 20 10:58:59 2009 From: marketing at cluecon.com (Michael Collins) Date: Mon, 20 Jul 2009 10:58:59 -0700 Subject: [Freeswitch-dev] ClueCon 2009 - Last Chance To Book At The Wyndham Message-ID: <87f2f3b90907201058i33465e82k7a3608436064fe06@mail.gmail.com> Greetings! We would like to let everyone know that the hotel where ClueCon 2009 is being held - The Wyndham Chicago - is completely booked up outside of the block of rooms that we have reserved. There are still rooms available. However, after noon CST tomorrow, July 21, those rooms will no longer be reserved for ClueCon attendees so you have until then to get your reservations in. After noon tomorrow we will no longer be able to guarantee that you have an chance to register with the hotel, so please act fast! See you in Chicago. Thanks for supporting ClueCon! -Michael http://www.cluecon.com 877.742.CLUE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090720/536fa5be/attachment.html From marketing at cluecon.com Tue Jul 21 09:15:56 2009 From: marketing at cluecon.com (Michael Collins) Date: Tue, 21 Jul 2009 09:15:56 -0700 Subject: [Freeswitch-dev] ClueCon 2009 - GREAT NEWS - Hotel and early registration extended through July 27! Message-ID: <87f2f3b90907210915i2c98d072nb784c9f1676d04b3@mail.gmail.com> Hello everyone! We are happy to announce that the ClueCon team has been able to extend the early bird registration price AND the hotel room reservations through Monday July 27th. This is important because, outside of our ClueCon block of rooms, the Wyndham is completely filled up. Please make your hotel reservations right away. If you haven't secured your ClueCon registration yet then please call 877.742.CLUE and we will get you set up with the early bird special of $499. Don't delay! ClueCon 2009 starts two weeks from today. It will be here before you know it. See you all in Chicago! -Michael http://www.cluecon.com 877.742.CLUE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090721/5ba1b846/attachment.html From msc at freeswitch.org Tue Jul 21 14:58:30 2009 From: msc at freeswitch.org (Michael Collins) Date: Tue, 21 Jul 2009 14:58:30 -0700 Subject: [Freeswitch-dev] ClueCon 2009 - Check Out The 15" MacBook Pro That We're Giving Away Message-ID: <87f2f3b90907211458x109d7611m2d64a5dfa0e5fcab@mail.gmail.com> This just in: We have a picture of the incredible MacBook Pro that we will be giving away this year: http://cluecon.com/node/38 Remember, all paid attendees are eligible to win this beautiful unit, so register today! Call 877.742.CLUE and get signed up. -Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090721/fc3cf52b/attachment.html From shuma at comper.ru Tue Jul 21 21:39:42 2009 From: shuma at comper.ru (=?koi8-r?B?88XSx8XKIPcg+9XNwcjF0g==?=) Date: Wed, 22 Jul 2009 10:39:42 +0600 Subject: [Freeswitch-dev] SIGBUS on linux sparc64 In-Reply-To: <0D66A8F3-58C9-490F-A869-AA9EDF7155EB@idapted.com> Message-ID: *This message was transferred with a trial version of CommuniGate(r) Pro* Hi! I have found a bug "SIGBUS on linux sparc64" http://jira.freeswitch.org/browse/FSCORE-179 And I can give for testing my sparc64/debian PC. Sun Fire V120: UltraSPARC[tm] IIi superscalar processor: 64-bit single processor, 650 MHZ 1 GB Memory 2*36GB If someone can solve this problem and is necessary to the sparc computer for testing - address to me. Serg From jmesquita at gmail.com Tue Jul 21 23:03:42 2009 From: jmesquita at gmail.com (=?ISO-8859-1?Q?Jo=E3o_Mesquita?=) Date: Wed, 22 Jul 2009 03:03:42 -0300 Subject: [Freeswitch-dev] ESL and the directory Message-ID: <5a8712120907212303w3ed440c5sb8f353fb77acb491@mail.gmail.com> I have been thinking about what would be the best direction to FSGui and I am leaning towards something like Asterisk Flash Operator ( http://www.asternic.org) and HUD (http://pbxtra.fonality.com/products/hud/). Since ESL has no comparison to Asterisk Manager whatsoever, it won't be too hard to get the application controlling all the extensions and doing all the cool CTI things such as record on demand, voicemail control and conference stuff, etc... Anyway, I was looking on how to achieve this goal and the first thing I would need is the domain list as well its users and groups. The ideal here would be having the directory section itself so I can parse it on my own and even add a few more variables to it so FSGui can control permissions and stuff like that. This would eliminate for good the need of a FSGui server to control this kinda of thing (that's what HUD does). I would like to open a discussion on how to achieve this since it will most definitely require some hacking on mod_commands since xml_locate is not able to provide it all as of now. So, here are the questions: 1. Using ESL for that is the best approach? If not, what would be? (I foresee the need of SSL on libesl soon ...) 2. Should I fetch root with xml_locate on ESL and parse whatever I am interested on FsGUI or should I add switch_xml_list_domains as well its API and whatever other methods are needed on xml retrieval? 1. switch_xml_locate_domain needs the domain name and at this point, I don't have it yet. 3. Do any of you see a problem with having additional vars on xml directory to control FsGUI permissions and options? If yes, what is the alternative solution? Anyway, I throwing this at the table so I can get input before making a decision. Hope this does not give you all too much trouble. Later, jmesquita -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090722/3f601f3f/attachment.html From rupa at rupa.com Wed Jul 22 02:18:02 2009 From: rupa at rupa.com (Rupa Schomaker) Date: Wed, 22 Jul 2009 04:18:02 -0500 Subject: [Freeswitch-dev] ESL and the directory In-Reply-To: <5a8712120907212303w3ed440c5sb8f353fb77acb491@mail.gmail.com> References: <5a8712120907212303w3ed440c5sb8f353fb77acb491@mail.gmail.com> Message-ID: we spoke a bit in irc on this.... 2009/7/22 Jo?o Mesquita > > 1. Using ESL for that is the best approach? If not, what would be? (I > foresee the need of SSL on libesl soon ...) > > ya > > 1. > 2. Should I fetch root with xml_locate on ESL and parse whatever I am > interested on FsGUI or should I add switch_xml_list_domains as well its API > and whatever other methods are needed on xml retrieval? > 1. switch_xml_locate_domain needs the domain name and at this point, > I don't have it yet. > > I'd personally prefer to see the xml api made richer. so adding a method to enumerate the domains would be a good start. You can then suck down the domain in one shot. We talked about enumerating groups and users, but perhaps in your use case just working off the domain is enough. > > 1. > 1. Do any of you see a problem with having additional vars on xml > directory to control FsGUI permissions and options? If yes, what is the > alternative solution? > > I don't see a problem, but would suggest prefixing your parameters with fsgui or something so that it is obvious what is for FS and what is FsGUI. > > Anyway, I throwing this at the table so I can get input before making a > decision. Hope this does not give you all too much trouble. > > Later, > > jmesquita > > -- -Rupa -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090722/ac2ef89a/attachment.html From brian at freeswitch.org Wed Jul 22 03:29:45 2009 From: brian at freeswitch.org (Brian West) Date: Wed, 22 Jul 2009 05:29:45 -0500 Subject: [Freeswitch-dev] ESL and the directory In-Reply-To: <5a8712120907212303w3ed440c5sb8f353fb77acb491@mail.gmail.com> References: <5a8712120907212303w3ed440c5sb8f353fb77acb491@mail.gmail.com> Message-ID: On Jul 22, 2009, at 1:03 AM, Jo?o Mesquita wrote: > Using ESL for that is the best approach? If not, what would be? (I > foresee the need of SSL on libesl soon ...) Someone would need to add SSL support to mod_event_socket, Also while they are at it.. ipv6 support to event socket would be kewl too! :) > Should I fetch root with xml_locate on ESL and parse whatever I am > interested on FsGUI or should I add switch_xml_list_domains as well > its API and whatever other methods are needed on xml retrieval? > switch_xml_locate_domain needs the domain name and at this point, I > don't have it yet. You can xml_locate any section of the config directly... by name. > Do any of you see a problem with having additional vars on xml > directory to control FsGUI permissions and options? If yes, what is > the alternative solution? Not sure, can you give an example use case? > > Anyway, I throwing this at the table so I can get input before > making a decision. Hope this does not give you all too much trouble. > > Later, > > jmesquita -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090722/8e84d513/attachment.html From jmesquita at gmail.com Wed Jul 22 07:36:23 2009 From: jmesquita at gmail.com (=?ISO-8859-1?Q?Jo=E3o_Mesquita?=) Date: Wed, 22 Jul 2009 11:36:23 -0300 Subject: [Freeswitch-dev] ESL and the directory In-Reply-To: References: <5a8712120907212303w3ed440c5sb8f353fb77acb491@mail.gmail.com> Message-ID: <5a8712120907220736k5bd1c773r56a81e976486fb38@mail.gmail.com> On Wed, Jul 22, 2009 at 7:29 AM, Brian West wrote: > > On Jul 22, 2009, at 1:03 AM, Jo?o Mesquita wrote: > > > 1. Using ESL for that is the best approach? If not, what would be? (I > foresee the need of SSL on libesl soon ...) > > Someone would need to add SSL support to mod_event_socket, Also while they > are at it.. ipv6 support to event socket would be kewl too! :) > I have never thought of putting it anywhere else... > > > 1. Should I fetch root with xml_locate on ESL and parse whatever I am > interested on FsGUI or should I add switch_xml_list_domains as well its API > and whatever other methods are needed on xml retrieval? > 1. switch_xml_locate_domain needs the domain name and at this point, > I don't have it yet. > > > You can xml_locate any section of the config directly... by name. > The current API exposed on esl does not support it. Quoting the wiki: xml_locate Find some XML. Usage: xml_locate [root |
] Looked at the code and it verifies.... So the question would be defined as: Should I patch this and enable it to return the whole section (awfully easy) or make the xml API richer by adding specific methods as suggested by Rupa? > > 1. Do any of you see a problem with having additional vars on xml > directory to control FsGUI permissions and options? If yes, what is the > alternative solution? > > Not sure, can you give an example use case? > > > > Anyway, I throwing this at the table so I can get input before making a > decision. Hope this does not give you all too much trouble. > > Later, > > jmesquita > > > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090722/891d238a/attachment.html From anthony.minessale at gmail.com Wed Jul 22 07:59:33 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Wed, 22 Jul 2009 09:59:33 -0500 Subject: [Freeswitch-dev] ESL and the directory In-Reply-To: <5a8712120907220736k5bd1c773r56a81e976486fb38@mail.gmail.com> References: <5a8712120907212303w3ed440c5sb8f353fb77acb491@mail.gmail.com> <5a8712120907220736k5bd1c773r56a81e976486fb38@mail.gmail.com> Message-ID: <191c3a030907220759n682e562axa01e27c26836035b@mail.gmail.com> if you are going to make a gui you would probably want to make a database schema to go with it and make higher level abstractions and then use xml_curl or the new xml_oddbc to generate the xml back to FS rather than try to use the static configs. you can still generate some of the configs static that do not change often but for things like directory and dialplan you should be doing an xml hook so your app and FS both use the same database schema to get/set the data. ask Swk on irc he has one in his contrib. 2009/7/22 Jo?o Mesquita > > > On Wed, Jul 22, 2009 at 7:29 AM, Brian West wrote: > >> >> On Jul 22, 2009, at 1:03 AM, Jo?o Mesquita wrote: >> >> >> 1. Using ESL for that is the best approach? If not, what would be? (I >> foresee the need of SSL on libesl soon ...) >> >> Someone would need to add SSL support to mod_event_socket, Also while they >> are at it.. ipv6 support to event socket would be kewl too! :) >> > > I have never thought of putting it anywhere else... > >> >> >> 1. Should I fetch root with xml_locate on ESL and parse whatever I am >> interested on FsGUI or should I add switch_xml_list_domains as well its API >> and whatever other methods are needed on xml retrieval? >> 1. switch_xml_locate_domain needs the domain name and at this >> point, I don't have it yet. >> >> >> You can xml_locate any section of the config directly... by name. >> > > The current API exposed on esl does not support it. Quoting the wiki: > xml_locate > > Find some XML. > > Usage: xml_locate [root |
] > > Looked at the code and it verifies.... > So the question would be defined as: Should I patch this and enable it to > return the whole section (awfully easy) or make the xml API richer by adding > specific methods as suggested by Rupa? > > >> >> 1. Do any of you see a problem with having additional vars on xml >> directory to control FsGUI permissions and options? If yes, what is the >> alternative solution? >> >> Not sure, can you give an example use case? >> > > > > > >> >> >> Anyway, I throwing this at the table so I can get input before making a >> decision. Hope this does not give you all too much trouble. >> >> Later, >> >> jmesquita >> >> >> >> _______________________________________________ >> FreeSWITCH-dev mailing list >> FreeSWITCH-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> >> > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090722/10f5b9ec/attachment.html From jmesquita at gmail.com Wed Jul 22 08:13:00 2009 From: jmesquita at gmail.com (=?ISO-8859-1?Q?Jo=E3o_Mesquita?=) Date: Wed, 22 Jul 2009 12:13:00 -0300 Subject: [Freeswitch-dev] ESL and the directory In-Reply-To: <191c3a030907220759n682e562axa01e27c26836035b@mail.gmail.com> References: <5a8712120907212303w3ed440c5sb8f353fb77acb491@mail.gmail.com> <5a8712120907220736k5bd1c773r56a81e976486fb38@mail.gmail.com> <191c3a030907220759n682e562axa01e27c26836035b@mail.gmail.com> Message-ID: <5a8712120907220813y2007aa5t24244b3a30733e75@mail.gmail.com> Tony, I am sorry but I think you missed the point here. The idea is that FSGui will not _SET_ no XML on the directory from its GUI but yes be able to _GET_ its configs from the user directory that can be set anywhere and with any method supported since the core does not care (cos of xml hooks such as curl and odbc). In this case, FSGui will only fetch XML from the directory, read it and work with it, being totally passive. Take a look at HUD and you will get the point. Hooking it to the xml events on ESL, it will be able to play along to simply any web gui without a problem and FSGui could be used by all other projects that are setting and manipulating the XMLs. Of course, FSGui would have an overhead of "asking" for the user directory from time to time since we do not receive any events on esl if the directory has changed using curl. But I don't see that too much of a problem right now. jmesquita On Wed, Jul 22, 2009 at 11:59 AM, Anthony Minessale < anthony.minessale at gmail.com> wrote: > if you are going to make a gui you would probably want to make a database > schema to go with it and make higher level abstractions > and then use xml_curl or the new xml_oddbc to generate the xml back to FS > rather than try to use the static configs. > > you can still generate some of the configs static that do not change often > but for things like directory and dialplan you should be > doing an xml hook so your app and FS both use the same database schema to > get/set the data. > > ask Swk on irc he has one in his contrib. > > > 2009/7/22 Jo?o Mesquita > >> >> >> On Wed, Jul 22, 2009 at 7:29 AM, Brian West wrote: >> >>> >>> On Jul 22, 2009, at 1:03 AM, Jo?o Mesquita wrote: >>> >>> >>> 1. Using ESL for that is the best approach? If not, what would be? (I >>> foresee the need of SSL on libesl soon ...) >>> >>> Someone would need to add SSL support to mod_event_socket, Also while >>> they are at it.. ipv6 support to event socket would be kewl too! :) >>> >> >> I have never thought of putting it anywhere else... >> >>> >>> >>> 1. Should I fetch root with xml_locate on ESL and parse whatever I am >>> interested on FsGUI or should I add switch_xml_list_domains as well its API >>> and whatever other methods are needed on xml retrieval? >>> 1. switch_xml_locate_domain needs the domain name and at this >>> point, I don't have it yet. >>> >>> >>> You can xml_locate any section of the config directly... by name. >>> >> >> The current API exposed on esl does not support it. Quoting the wiki: >> xml_locate >> >> Find some XML. >> >> Usage: xml_locate [root |
] >> >> Looked at the code and it verifies.... >> So the question would be defined as: Should I patch this and enable it to >> return the whole section (awfully easy) or make the xml API richer by adding >> specific methods as suggested by Rupa? >> >> >>> >>> 1. Do any of you see a problem with having additional vars on xml >>> directory to control FsGUI permissions and options? If yes, what is the >>> alternative solution? >>> >>> Not sure, can you give an example use case? >>> >> >> >> >> >> >>> >>> >>> Anyway, I throwing this at the table so I can get input before making a >>> decision. Hope this does not give you all too much trouble. >>> >>> Later, >>> >>> jmesquita >>> >>> >>> >>> _______________________________________________ >>> FreeSWITCH-dev mailing list >>> FreeSWITCH-dev at lists.freeswitch.org >>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >>> http://www.freeswitch.org >>> >>> >> >> _______________________________________________ >> FreeSWITCH-dev mailing list >> FreeSWITCH-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> >> > > > -- > Anthony Minessale II > > FreeSWITCH http://www.freeswitch.org/ > ClueCon http://www.cluecon.com/ > Twitter: http://twitter.com/FreeSWITCH_wire > > AIM: anthm > MSN:anthony_minessale at hotmail.com > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com > IRC: irc.freenode.net #freeswitch > > FreeSWITCH Developer Conference > sip:888 at conference.freeswitch.org > iax:guest at conference.freeswitch.org/888 > googletalk:conf+888 at conference.freeswitch.org > pstn:213-799-1400 > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090722/0cfcda4a/attachment-0001.html From cstomi.levlist at gmail.com Wed Jul 22 08:55:17 2009 From: cstomi.levlist at gmail.com (Tamas Cseke) Date: Wed, 22 Jul 2009 17:55:17 +0200 Subject: [Freeswitch-dev] get rid of mod_loopback for outbound calls Message-ID: <4A673665.3020408@gmail.com> Hello, we are using mod_loopback for outbound calls to be able to do a dialplan hunt before the actual call origination. change caller number, change routing according to the prefix and something like that. We have talked about a lot, that this is "not very" efficient because we have 2 extra channels (loopbacks) for every call. I diged into the state machine code and figured out that if I change the on_routing state handler functions for switch_ivr_originate to don't veto the standard behavior I can perform a dilplan hunt. But I still have to originate a channel which makes a dialplan hunt and originate another. and this isn't what we really would like to... I've got the following tip from Anthony earlier: 0416 16:39:28 <@anthm> maybe i could make an api command to pretend to do a dialplan run and print out a list in inline format of what to do 0416 16:39:48 <@anthm> that you could feed to originate inline dialplan But I don't know how to implement this. I need some explanation. 1) the dialplan pretender api returns applications in inline format 2) we feed it to inline dialplan but how could we originate the call, how should the whole process look like? could you please give me an example? I was thinking about someting like this, but it doesn't make sense I quess. ${originate(call_url inline ${pretend_dialplan_hunt(exten XML context)})} Thanks in advance, Tamas From anthony.minessale at gmail.com Wed Jul 22 09:09:12 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Wed, 22 Jul 2009 11:09:12 -0500 Subject: [Freeswitch-dev] get rid of mod_loopback for outbound calls In-Reply-To: <4A673665.3020408@gmail.com> References: <4A673665.3020408@gmail.com> Message-ID: <191c3a030907220909i785a6fc9tf0a4cae9a3aefd75@mail.gmail.com> yah, I looked into that and it's not possible to do. Your usage of the dialplan like a database is just not a good way to do it. I suggest you use a database or something else to store that routing data like others do. On Wed, Jul 22, 2009 at 10:55 AM, Tamas Cseke wrote: > Hello, > > we are using mod_loopback for outbound calls to be able to do a dialplan > hunt before the actual call origination. > change caller number, change routing according to the prefix and > something like that. > We have talked about a lot, that this is "not very" efficient because > we have 2 extra channels (loopbacks) for every call. > > I diged into the state machine code and figured out that if I change the > on_routing state handler functions for switch_ivr_originate to don't > veto the standard behavior I can perform a dilplan hunt. > But I still have to originate a channel which makes a dialplan hunt and > originate another. and this isn't what we really would like to... > > I've got the following tip from Anthony earlier: > 0416 16:39:28 <@anthm> maybe i could make an api command to pretend to > do a dialplan run and print out a list in inline format of what to do > 0416 16:39:48 <@anthm> that you could feed to originate inline dialplan > > But I don't know how to implement this. I need some explanation. > > 1) the dialplan pretender api returns applications in inline format > 2) we feed it to inline dialplan > but how could we originate the call, how should the whole process look > like? > could you please give me an example? > > I was thinking about someting like this, but it doesn't make sense I quess. > ${originate(call_url inline ${pretend_dialplan_hunt(exten XML context)})} > > Thanks in advance, > Tamas > > > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090722/acd9fc0c/attachment.html From juanbackson at gmail.com Wed Jul 22 09:21:13 2009 From: juanbackson at gmail.com (Juan Backson) Date: Thu, 23 Jul 2009 00:21:13 +0800 Subject: [Freeswitch-dev] freeswitch unexpectedly core dump Message-ID: <27c25bc40907220921n9183d83s78bd9dff49434752@mail.gmail.com> Hi, I am getting the following core dump in a production environment, not sure what this is. Any idea how to fix this? [New process 26012] [New process 26011] [New process 26010] [New process 26009] [New process 26008] [New process 26007] #0 0x00002aad84837215 in raise () from /lib64/libc.so.6 (gdb) bt #0 0x00002aad84837215 in raise () from /lib64/libc.so.6 #1 0x00002aad84838cc0 in abort () from /lib64/libc.so.6 #2 0x00002aad848717fb in __libc_message () from /lib64/libc.so.6 #3 0x00002aad84876ff3 in malloc_consolidate () from /lib64/libc.so.6 #4 0x00002aad848793fd in _int_malloc () from /lib64/libc.so.6 #5 0x00002aad8487b02a in malloc () from /lib64/libc.so.6 #6 0x00002aad83a2b5ad in switch_event_serialize (event=0x2aaab432d820, str=0x34b2, encode=6) at src/switch_event.c:885 #7 0x00002aad83a16e85 in switch_core_session_thread (thread=, obj=) at src/switch_core_session.c:1075 #8 0x00002aad84394367 in start_thread () from /lib64/libpthread.so.0 #9 0x00002aad848d9f7d in clone () from /lib64/libc.so.6 (gdb) bt full #0 0x00002aad84837215 in raise () from /lib64/libc.so.6 No symbol table info available. #1 0x00002aad84838cc0 in abort () from /lib64/libc.so.6 No symbol table info available. #2 0x00002aad848717fb in __libc_message () from /lib64/libc.so.6 No symbol table info available. #3 0x00002aad84876ff3 in malloc_consolidate () from /lib64/libc.so.6 No symbol table info available. #4 0x00002aad848793fd in _int_malloc () from /lib64/libc.so.6 No symbol table info available. #5 0x00002aad8487b02a in malloc () from /lib64/libc.so.6 No symbol table info available. #6 0x00002aad83a2b5ad in switch_event_serialize (event=0x2aaab432d820, str=0x34b2, encode=6) at src/switch_event.c:885 len = hp = llen = dlen = encode_len = new_len = buf = encode_buf = #7 0x00002aad83a16e85 in switch_core_session_thread (thread=, obj=) at src/switch_core_session.c:1075 session = (switch_core_session_t *) 0x2aaab5c69638 event = (switch_event_t *) 0x2aaab432d820 event_str = 0x0 val = 0x2aaab4bfaed8 "true" __func__ = "switch_core_session_thread" __PRETTY_FUNCTION__ = "switch_core_session_thread" #8 0x00002aad84394367 in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #9 0x00002aad848d9f7d in clone () from /lib64/libc.so.6 No symbol table info available. (gdb) bt full #0 0x00002aad84837215 in raise () from /lib64/libc.so.6 No symbol table info available. #1 0x00002aad84838cc0 in abort () from /lib64/libc.so.6 No symbol table info available. #2 0x00002aad848717fb in __libc_message () from /lib64/libc.so.6 No symbol table info available. #3 0x00002aad84876ff3 in malloc_consolidate () from /lib64/libc.so.6 No symbol table info available. #4 0x00002aad848793fd in _int_malloc () from /lib64/libc.so.6 No symbol table info available. #5 0x00002aad8487b02a in malloc () from /lib64/libc.so.6 No symbol table info available. #6 0x00002aad83a2b5ad in switch_event_serialize (event=0x2aaab432d820, str=0x34b2, encode=6) at src/switch_event.c:885 len = hp = llen = dlen = encode_len = new_len = buf = encode_buf = #7 0x00002aad83a16e85 in switch_core_session_thread (thread=, obj=) at src/switch_core_session.c:1075 session = (switch_core_session_t *) 0x2aaab5c69638 event = (switch_event_t *) 0x2aaab432d820 event_str = 0x0 val = 0x2aaab4bfaed8 "true" __func__ = "switch_core_session_thread" __PRETTY_FUNCTION__ = "switch_core_session_thread" #8 0x00002aad84394367 in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #9 0x00002aad848d9f7d in clone () from /lib64/libc.so.6 No symbol table info available. (gdb) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090723/f2689227/attachment.html From anthony.minessale at gmail.com Wed Jul 22 09:24:33 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Wed, 22 Jul 2009 11:24:33 -0500 Subject: [Freeswitch-dev] freeswitch unexpectedly core dump In-Reply-To: <27c25bc40907220921n9183d83s78bd9dff49434752@mail.gmail.com> References: <27c25bc40907220921n9183d83s78bd9dff49434752@mail.gmail.com> Message-ID: <191c3a030907220924u7111dae2q8322dcb3d1b8d04a@mail.gmail.com> bugs should be reported to jira http://jira.freeswitch.org please be sure to carefully answer all the questions about the rev of the code etc. On Wed, Jul 22, 2009 at 11:21 AM, Juan Backson wrote: > Hi, > > I am getting the following core dump in a production environment, not sure > what this is. Any idea how to fix this? > > [New process 26012] > [New process 26011] > [New process 26010] > [New process 26009] > [New process 26008] > [New process 26007] > #0 0x00002aad84837215 in raise () from /lib64/libc.so.6 > (gdb) bt > #0 0x00002aad84837215 in raise () from /lib64/libc.so.6 > #1 0x00002aad84838cc0 in abort () from /lib64/libc.so.6 > #2 0x00002aad848717fb in __libc_message () from /lib64/libc.so.6 > #3 0x00002aad84876ff3 in malloc_consolidate () from /lib64/libc.so.6 > #4 0x00002aad848793fd in _int_malloc () from /lib64/libc.so.6 > #5 0x00002aad8487b02a in malloc () from /lib64/libc.so.6 > #6 0x00002aad83a2b5ad in switch_event_serialize (event=0x2aaab432d820, > str=0x34b2, encode=6) at src/switch_event.c:885 > #7 0x00002aad83a16e85 in switch_core_session_thread (thread= optimized out>, obj=) > at src/switch_core_session.c:1075 > #8 0x00002aad84394367 in start_thread () from /lib64/libpthread.so.0 > #9 0x00002aad848d9f7d in clone () from /lib64/libc.so.6 > (gdb) bt full > #0 0x00002aad84837215 in raise () from /lib64/libc.so.6 > No symbol table info available. > #1 0x00002aad84838cc0 in abort () from /lib64/libc.so.6 > No symbol table info available. > #2 0x00002aad848717fb in __libc_message () from /lib64/libc.so.6 > No symbol table info available. > #3 0x00002aad84876ff3 in malloc_consolidate () from /lib64/libc.so.6 > No symbol table info available. > #4 0x00002aad848793fd in _int_malloc () from /lib64/libc.so.6 > No symbol table info available. > #5 0x00002aad8487b02a in malloc () from /lib64/libc.so.6 > No symbol table info available. > #6 0x00002aad83a2b5ad in switch_event_serialize (event=0x2aaab432d820, > str=0x34b2, encode=6) at src/switch_event.c:885 > len = > hp = > llen = > dlen = > encode_len = > new_len = > buf = > encode_buf = > #7 0x00002aad83a16e85 in switch_core_session_thread (thread= optimized out>, obj=) > at src/switch_core_session.c:1075 > session = (switch_core_session_t *) 0x2aaab5c69638 > event = (switch_event_t *) 0x2aaab432d820 > event_str = 0x0 > val = 0x2aaab4bfaed8 "true" > __func__ = "switch_core_session_thread" > __PRETTY_FUNCTION__ = "switch_core_session_thread" > #8 0x00002aad84394367 in start_thread () from /lib64/libpthread.so.0 > No symbol table info available. > #9 0x00002aad848d9f7d in clone () from /lib64/libc.so.6 > No symbol table info available. > (gdb) bt full > #0 0x00002aad84837215 in raise () from /lib64/libc.so.6 > No symbol table info available. > #1 0x00002aad84838cc0 in abort () from /lib64/libc.so.6 > No symbol table info available. > #2 0x00002aad848717fb in __libc_message () from /lib64/libc.so.6 > No symbol table info available. > #3 0x00002aad84876ff3 in malloc_consolidate () from /lib64/libc.so.6 > No symbol table info available. > #4 0x00002aad848793fd in _int_malloc () from /lib64/libc.so.6 > No symbol table info available. > #5 0x00002aad8487b02a in malloc () from /lib64/libc.so.6 > No symbol table info available. > #6 0x00002aad83a2b5ad in switch_event_serialize (event=0x2aaab432d820, > str=0x34b2, encode=6) at src/switch_event.c:885 > len = > hp = > llen = > dlen = > encode_len = > new_len = > buf = > encode_buf = > #7 0x00002aad83a16e85 in switch_core_session_thread (thread= optimized out>, obj=) > at src/switch_core_session.c:1075 > session = (switch_core_session_t *) 0x2aaab5c69638 > event = (switch_event_t *) 0x2aaab432d820 > event_str = 0x0 > val = 0x2aaab4bfaed8 "true" > __func__ = "switch_core_session_thread" > __PRETTY_FUNCTION__ = "switch_core_session_thread" > #8 0x00002aad84394367 in start_thread () from /lib64/libpthread.so.0 > No symbol table info available. > #9 0x00002aad848d9f7d in clone () from /lib64/libc.so.6 > No symbol table info available. > (gdb) > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090722/54071625/attachment-0001.html From msc at freeswitch.org Wed Jul 22 10:30:16 2009 From: msc at freeswitch.org (Michael Collins) Date: Wed, 22 Jul 2009 10:30:16 -0700 Subject: [Freeswitch-dev] Good Information On How To Submit Bug Reports Message-ID: <87f2f3b90907221030y3f2cc840y504cdbb3ac6194ec@mail.gmail.com> FYI, Brian West called to my attention that one of our community members, John Wehle, has been very good at submitting useful bug reports, in many cases with patches. His style of reporting is worthy of imitation, so I've added a few links to the JIRA section of the Reporting Bugs wiki page: http://wiki.freeswitch.org/wiki/Reporting_Bugs#Examples_Of_Well-Written_JIRA_Submissions Please feel free to check it out. If you have any questions on what a bug report should look like then definitely read some of John's submissions and emulate his style. By submitting useful bug reports you will save the FreeSWITCH developers countless hours and headaches, not to mention the warm fuzzies you'll feel inside. :) -Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090722/01374541/attachment.html From alexg at etherstack.com Wed Jul 22 20:16:37 2009 From: alexg at etherstack.com (Alex Green) Date: Thu, 23 Jul 2009 13:16:37 +1000 Subject: [Freeswitch-dev] D-READ FAIL! [] while using openzap with libpri Message-ID: <4A67D615.1070408@etherstack.com> On a number of occasions using openzap with libpri the D channel seems to some how lose synchronisation resulting in 'D-READ FAIL! []'. Background: ----------- On one side is a very standard Linux box with Freeswitch and a TE110p card. The signalling is set up to be a Network E1. On the other side of the PRI coax cable is a box I am experimenting with has openzap interacting with a small application of my own. This side is set up to be a CPE E1 (using a TE210p). This problem has happened to me previously using freeswtich/openzap but scouring the internet has found nought. I am concerned that I have done something silly, but I have double checked everything. The error is printed from lpwrap_pri.c line 117. Symptoms: --------- On freeswitch "D-READ FAIL! []" is just printed to screen over and over again. After issuing a shutdown the following clue is given after stopping mod_openzap: 2009-07-22 17:11:07 [INFO] zap_io.c:257 zap_channel_destroy() Closing channel zt:1:30 fd:67 2009-07-22 17:11:07 [INFO] zap_io.c:257 zap_channel_destroy() Closing channel zt:1:31 fd:68 D-READ FAIL! [] Error = -1 Lpwrap Run Pri: : Bad file descriptor On Openzap (without freeswitch) the following happens: [CRIT] src/ozmod/ozmod_libpri/lpwrap_pri.c:122 __pri_lpwrap_read() span 5 D-READ FAIL! [] [ERROR] src/ozmod/ozmod_libpri/ozmod_libpri.c:88 s_pri_error() !! Received short I-frame (expected 4, got -3) [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:812 process_event() EVENT [ALARM_TRAP][7][5:1] STATE [PROGRESS_MEDIA] [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:821 process_event() Changing state on 5:1 from PROGRESS_MEDIA to RESTART [WARNING] src/ozmod/ozmod_libpri/ozmod_libpri.c:831 process_event() channel 5:1 (1:1) has alarms! [YELLOW/LOOP] [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:812 process_event() EVENT [ALARM_TRAP][7][5:2] STATE [DOWN] ...The last two are printed repeatedly. For some extra information I have summarised my setup below. Any help on this (surly I am not the first person to experience this!) is greatly appreciated. Many thanks, -alex Setup: ------ *Zaptel.conf* Box1 (Freeswitch Network E1) has 'span=1,1,0,ccs,hdb3' Box2 (Openzap CPE E1) has 'span=1,0,0,ccs,hdb3' I have experimented with crc4 on/off and timing of 1/2. *openzap.conf* similar on both sides. [span zt] number => 1 trunk_type => e1 b-channel => 1-15,17-31 d-channel=> 16 *openzap.conf.xml* Box1 (Freeswitch Network E1). Box2 (Openzap CPE) passes the following to libpri (via zap_configure_span); "node", "cpe", "switch", "euroisdn", "dp", "unknown", "l1", "alaw", From anthony.minessale at gmail.com Thu Jul 23 05:32:37 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Thu, 23 Jul 2009 07:32:37 -0500 Subject: [Freeswitch-dev] D-READ FAIL! [] while using openzap with libpri In-Reply-To: <4A67D615.1070408@etherstack.com> References: <4A67D615.1070408@etherstack.com> Message-ID: <191c3a030907230532m571635ecx9109803a24005fd3@mail.gmail.com> Which revision of FS/OpenZAP/Zaptel are you using respectively? All the errors after your shutdown are not really clues they are just typical things that happen when you close the socket but the endless D-READ FAIL sounds strange. How often does this happen? We mostly have sangoma users so we have less info on Digium cards but I can try to investigate your problem for you if you answer my first round of questions. On Wed, Jul 22, 2009 at 10:16 PM, Alex Green wrote: > On a number of occasions using openzap with libpri the D channel seems > to some how lose synchronisation resulting in 'D-READ FAIL! []'. > > Background: > ----------- > On one side is a very standard Linux box with Freeswitch and a TE110p > card. The signalling is set up to be a Network E1. On the other side of > the PRI coax cable is a box I am experimenting with has openzap > interacting with a small application of my own. This side is set up to > be a CPE E1 (using a TE210p). This problem has happened to me previously > using freeswtich/openzap but scouring the internet has found nought. I > am concerned that I have done something silly, but I have double checked > everything. The error is printed from lpwrap_pri.c line 117. > > Symptoms: > --------- > On freeswitch "D-READ FAIL! []" is just printed to screen over and over > again. After issuing a shutdown the following clue is given after > stopping mod_openzap: > 2009-07-22 17:11:07 [INFO] zap_io.c:257 zap_channel_destroy() Closing > channel zt:1:30 fd:67 > 2009-07-22 17:11:07 [INFO] zap_io.c:257 zap_channel_destroy() Closing > channel zt:1:31 fd:68 > D-READ FAIL! [] > Error = -1 > Lpwrap Run Pri: : Bad file descriptor > > On Openzap (without freeswitch) the following happens: > [CRIT] src/ozmod/ozmod_libpri/lpwrap_pri.c:122 __pri_lpwrap_read() span > 5 D-READ FAIL! [] > [ERROR] src/ozmod/ozmod_libpri/ozmod_libpri.c:88 s_pri_error() !! > Received short I-frame (expected 4, got -3) > [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:812 process_event() EVENT > [ALARM_TRAP][7][5:1] STATE [PROGRESS_MEDIA] > [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:821 process_event() > Changing state on 5:1 from PROGRESS_MEDIA to RESTART > [WARNING] src/ozmod/ozmod_libpri/ozmod_libpri.c:831 process_event() > channel 5:1 (1:1) has alarms! [YELLOW/LOOP] > [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:812 process_event() EVENT > [ALARM_TRAP][7][5:2] STATE [DOWN] > ...The last two are printed repeatedly. > > > For some extra information I have summarised my setup below. Any help on > this (surly I am not the first person to experience this!) is greatly > appreciated. Many thanks, -alex > > > > Setup: > ------ > *Zaptel.conf* > Box1 (Freeswitch Network E1) has 'span=1,1,0,ccs,hdb3' > Box2 (Openzap CPE E1) has 'span=1,0,0,ccs,hdb3' > I have experimented with crc4 on/off and timing of 1/2. > > *openzap.conf* similar on both sides. > [span zt] > number => 1 > trunk_type => e1 > b-channel => 1-15,17-31 > d-channel=> 16 > > *openzap.conf.xml* > Box1 (Freeswitch Network E1). > > > > > > > > > > Box2 (Openzap CPE) passes the following to libpri (via zap_configure_span); > "node", "cpe", > "switch", "euroisdn", > "dp", "unknown", > "l1", "alaw", > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090723/65111ae7/attachment.html From alexg at etherstack.com Thu Jul 23 20:07:00 2009 From: alexg at etherstack.com (Alex Green) Date: Fri, 24 Jul 2009 13:07:00 +1000 Subject: [Freeswitch-dev] D-READ FAIL! [] while using openzap with libpri In-Reply-To: <20090723124732.6035A774009@etherstack.com> References: <4A67D615.1070408@etherstack.com> <20090723124732.6035A774009@etherstack.com> Message-ID: <4A692554.6050800@etherstack.com> Thanks Anthony, The box with the TE210p has: ---------------------------- Zaptel 1.4.12 Libpri 1.4.10 Openzap via Freeswitch 1.0.3 I initially had the two ports of the TE210p connected together for testing. I had D-Channel issues fairly often. Here is the interesting bit: I noticed that the code around line 117 in lpwrap_pri.c had changed over the last 4 months (since version 693). I updated openzap to the head, recompiled and my little test app making calls from one PRI to the other on the TE210p worked fine (or so I thought, see below). Vanilla Freeswitch box with TE110p: ----------------------------------- Zaptel rev 4630 (from http://wiki.freeswitch.org/wiki/Zaptel_Tutorial) Libpri 1.4.10.1 Freeswitch 1.0.3 Connect the two together and D-channel errors, which was no surprise on my previous experience, so I updated Freeswitch to the trunk. At this point I still got D-channel errors as reported in the last email. Thanks again, -alex Anthony Minessale wrote: > Which revision of FS/OpenZAP/Zaptel are you using respectively? > > All the errors after your shutdown are not really clues they are just > typical > things that happen when you close the socket but the endless D-READ FAIL > sounds strange. How often does this happen? > > We mostly have sangoma users so we have less info on Digium cards > but I can try to investigate your problem for you if you answer my first > round of questions. > > > > On Wed, Jul 22, 2009 at 10:16 PM, Alex Green > wrote: > > On a number of occasions using openzap with libpri the D channel seems > to some how lose synchronisation resulting in 'D-READ FAIL! []'. > > Background: > ----------- > On one side is a very standard Linux box with Freeswitch and a TE110p > card. The signalling is set up to be a Network E1. On the other side of > the PRI coax cable is a box I am experimenting with has openzap > interacting with a small application of my own. This side is set up to > be a CPE E1 (using a TE210p). This problem has happened to me previously > using freeswtich/openzap but scouring the internet has found nought. I > am concerned that I have done something silly, but I have double checked > everything. The error is printed from lpwrap_pri.c line 117. > > Symptoms: > --------- > On freeswitch "D-READ FAIL! []" is just printed to screen over and over > again. After issuing a shutdown the following clue is given after > stopping mod_openzap: > 2009-07-22 17:11:07 [INFO] zap_io.c:257 zap_channel_destroy() Closing > channel zt:1:30 fd:67 > 2009-07-22 17:11:07 [INFO] zap_io.c:257 zap_channel_destroy() Closing > channel zt:1:31 fd:68 > D-READ FAIL! [] > Error = -1 > Lpwrap Run Pri: : Bad file descriptor > > On Openzap (without freeswitch) the following happens: > [CRIT] src/ozmod/ozmod_libpri/lpwrap_pri.c:122 __pri_lpwrap_read() span > 5 D-READ FAIL! [] > [ERROR] src/ozmod/ozmod_libpri/ozmod_libpri.c:88 s_pri_error() !! > Received short I-frame (expected 4, got -3) > [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:812 process_event() EVENT > [ALARM_TRAP][7][5:1] STATE [PROGRESS_MEDIA] > [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:821 process_event() > Changing state on 5:1 from PROGRESS_MEDIA to RESTART > [WARNING] src/ozmod/ozmod_libpri/ozmod_libpri.c:831 process_event() > channel 5:1 (1:1) has alarms! [YELLOW/LOOP] > [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:812 process_event() EVENT > [ALARM_TRAP][7][5:2] STATE [DOWN] > ...The last two are printed repeatedly. > > > For some extra information I have summarised my setup below. Any help on > this (surly I am not the first person to experience this!) is greatly > appreciated. Many thanks, -alex > > > > Setup: > ------ > *Zaptel.conf* > Box1 (Freeswitch Network E1) has 'span=1,1,0,ccs,hdb3' > Box2 (Openzap CPE E1) has 'span=1,0,0,ccs,hdb3' > I have experimented with crc4 on/off and timing of 1/2. > > *openzap.conf* similar on both sides. > [span zt] > number => 1 > trunk_type => e1 > b-channel => 1-15,17-31 > d-channel=> 16 > > *openzap.conf.xml* > Box1 (Freeswitch Network E1). > > > > > > > > > > Box2 (Openzap CPE) passes the following to libpri (via > zap_configure_span); > "node", "cpe", > "switch", "euroisdn", > "dp", "unknown", > "l1", "alaw", > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > > > > -- > Anthony Minessale II > > FreeSWITCH http://www.freeswitch.org/ > ClueCon http://www.cluecon.com/ > Twitter: http://twitter.com/FreeSWITCH_wire > > AIM: anthm > MSN:anthony_minessale at hotmail.com > > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com > > IRC: irc.freenode.net #freeswitch > > FreeSWITCH Developer Conference > sip:888 at conference.freeswitch.org > > iax:guest at conference.freeswitch.org/888 > > googletalk:conf+888 at conference.freeswitch.org > > pstn:213-799-1400 > > > ------------------------------------------------------------------------ > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From gmaruzz at celliax.org Fri Jul 24 02:43:49 2009 From: gmaruzz at celliax.org (Giovanni Maruzzelli) Date: Fri, 24 Jul 2009 11:43:49 +0200 Subject: [Freeswitch-dev] ASR, dictation ;-) Message-ID: <7b197bef0907240243t2d8709c9w6a2a19eadd713d06@mail.gmail.com> http://yro.slashdot.org/story/09/07/23/228208/SpinVox-Recognition-Is-Often-Expensive-Human-Transcription From anthony.minessale at gmail.com Fri Jul 24 08:08:45 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Fri, 24 Jul 2009 10:08:45 -0500 Subject: [Freeswitch-dev] D-READ FAIL! [] while using openzap with libpri In-Reply-To: <4A692554.6050800@etherstack.com> References: <4A67D615.1070408@etherstack.com> <20090723124732.6035A774009@etherstack.com> <4A692554.6050800@etherstack.com> Message-ID: <191c3a030907240808j4af25413r85733f440c585edf@mail.gmail.com> I'd probably need to see this first hand. IM or email me privately to arrange for us to visit your box. On Thu, Jul 23, 2009 at 10:07 PM, Alex Green wrote: > Thanks Anthony, > > The box with the TE210p has: > ---------------------------- > Zaptel 1.4.12 > Libpri 1.4.10 > Openzap via Freeswitch 1.0.3 > I initially had the two ports of the TE210p connected together for > testing. I had D-Channel issues fairly often. > > Here is the interesting bit: I noticed that the code around line 117 in > lpwrap_pri.c had changed over the last 4 months (since version 693). I > updated openzap to the head, recompiled and my little test app making > calls from one PRI to the other on the TE210p worked fine (or so I > thought, see below). > > Vanilla Freeswitch box with TE110p: > ----------------------------------- > Zaptel rev 4630 (from http://wiki.freeswitch.org/wiki/Zaptel_Tutorial) > Libpri 1.4.10.1 > Freeswitch 1.0.3 > Connect the two together and D-channel errors, which was no surprise on > my previous experience, so I updated Freeswitch to the trunk. At this > point I still got D-channel errors as reported in the last email. > > > Thanks again, -alex > > > Anthony Minessale wrote: > > Which revision of FS/OpenZAP/Zaptel are you using respectively? > > > > All the errors after your shutdown are not really clues they are just > > typical > > things that happen when you close the socket but the endless D-READ FAIL > > sounds strange. How often does this happen? > > > > We mostly have sangoma users so we have less info on Digium cards > > but I can try to investigate your problem for you if you answer my first > > round of questions. > > > > > > > > On Wed, Jul 22, 2009 at 10:16 PM, Alex Green > > wrote: > > > > On a number of occasions using openzap with libpri the D channel > seems > > to some how lose synchronisation resulting in 'D-READ FAIL! []'. > > > > Background: > > ----------- > > On one side is a very standard Linux box with Freeswitch and a TE110p > > card. The signalling is set up to be a Network E1. On the other side > of > > the PRI coax cable is a box I am experimenting with has openzap > > interacting with a small application of my own. This side is set up > to > > be a CPE E1 (using a TE210p). This problem has happened to me > previously > > using freeswtich/openzap but scouring the internet has found nought. > I > > am concerned that I have done something silly, but I have double > checked > > everything. The error is printed from lpwrap_pri.c line 117. > > > > Symptoms: > > --------- > > On freeswitch "D-READ FAIL! []" is just printed to screen over and > over > > again. After issuing a shutdown the following clue is given after > > stopping mod_openzap: > > 2009-07-22 17:11:07 [INFO] zap_io.c:257 zap_channel_destroy() Closing > > channel zt:1:30 fd:67 > > 2009-07-22 17:11:07 [INFO] zap_io.c:257 zap_channel_destroy() Closing > > channel zt:1:31 fd:68 > > D-READ FAIL! [] > > Error = -1 > > Lpwrap Run Pri: : Bad file descriptor > > > > On Openzap (without freeswitch) the following happens: > > [CRIT] src/ozmod/ozmod_libpri/lpwrap_pri.c:122 __pri_lpwrap_read() > span > > 5 D-READ FAIL! [] > > [ERROR] src/ozmod/ozmod_libpri/ozmod_libpri.c:88 s_pri_error() !! > > Received short I-frame (expected 4, got -3) > > [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:812 process_event() > EVENT > > [ALARM_TRAP][7][5:1] STATE [PROGRESS_MEDIA] > > [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:821 process_event() > > Changing state on 5:1 from PROGRESS_MEDIA to RESTART > > [WARNING] src/ozmod/ozmod_libpri/ozmod_libpri.c:831 process_event() > > channel 5:1 (1:1) has alarms! [YELLOW/LOOP] > > [DEBUG] src/ozmod/ozmod_libpri/ozmod_libpri.c:812 process_event() > EVENT > > [ALARM_TRAP][7][5:2] STATE [DOWN] > > ...The last two are printed repeatedly. > > > > > > For some extra information I have summarised my setup below. Any help > on > > this (surly I am not the first person to experience this!) is greatly > > appreciated. Many thanks, -alex > > > > > > > > Setup: > > ------ > > *Zaptel.conf* > > Box1 (Freeswitch Network E1) has 'span=1,1,0,ccs,hdb3' > > Box2 (Openzap CPE E1) has 'span=1,0,0,ccs,hdb3' > > I have experimented with crc4 on/off and timing of 1/2. > > > > *openzap.conf* similar on both sides. > > [span zt] > > number => 1 > > trunk_type => e1 > > b-channel => 1-15,17-31 > > d-channel=> 16 > > > > *openzap.conf.xml* > > Box1 (Freeswitch Network E1). > > > > > > > > > > > > > > > > > > > > Box2 (Openzap CPE) passes the following to libpri (via > > zap_configure_span); > > "node", "cpe", > > "switch", "euroisdn", > > "dp", "unknown", > > "l1", "alaw", > > > > _______________________________________________ > > FreeSWITCH-dev mailing list > > FreeSWITCH-dev at lists.freeswitch.org > > > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > > UNSUBSCRIBE: > http://lists.freeswitch.org/mailman/options/freeswitch-dev > > http://www.freeswitch.org > > > > > > > > > > -- > > Anthony Minessale II > > > > FreeSWITCH http://www.freeswitch.org/ > > ClueCon http://www.cluecon.com/ > > Twitter: http://twitter.com/FreeSWITCH_wire > > > > AIM: anthm > > MSN:anthony_minessale at hotmail.com > > > > > > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com > > > > > > IRC: irc.freenode.net #freeswitch > > > > FreeSWITCH Developer Conference > > sip:888 at conference.freeswitch.org > > > > > > iax:guest at conference.freeswitch.org/888 > > > > googletalk:conf+888 at conference.freeswitch.org > > > > > > pstn:213-799-1400 > > > > > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > FreeSWITCH-dev mailing list > > FreeSWITCH-dev at lists.freeswitch.org > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > > http://www.freeswitch.org > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090724/1319d0a2/attachment.html From juanbackson at gmail.com Sat Jul 25 05:55:44 2009 From: juanbackson at gmail.com (Juan Backson) Date: Sat, 25 Jul 2009 20:55:44 +0800 Subject: [Freeswitch-dev] random fs crashing Message-ID: <27c25bc40907250555l624b80b9i909b7ffbaccadca9@mail.gmail.com> Hi, I am having some strange randomly crashing of fs in production. They all point to something wrong in the main(). Although I have my own module running, but I don't think it should have any impact to the main() process. Could someone please point me to some solution that may resolve or debug this problem? [New process 15596] [New process 15595] #0 0x00002b5b831bc215 in raise () from /lib64/libc.so.6 Thread 1198 (process 15595): #0 0x00002b5b832584c2 in select () from /lib64/libc.so.6 No symbol table info available. #1 0x00002b5b823fc9c5 in apr_sleep (t=) at time/unix/time.c:246 tv = {tv_sec = 0, tv_usec = 351000} #2 0x00002b5b823a418a in switch_core_runtime_loop (bg=) at src/switch_core.c:672 No locals. #3 0x0000000000402607 in main (argc=2, argv=0x7fff5b793498) at src/switch.c:706 pid_path = "/usr/local/freeswitch/log/freeswitch.pid", '\0' pid_buffer = "15595", '\0' old_pid_buffer = "5951", '\0' pid_len = 5 old_pid_len = 4 err = 0x0 nf = 0 runas_user = 0x0 runas_group = 0x0 nc = 1 pid = x = alt_dirs = 0 known_opt = 1 high_prio = 0 flags = 1 ret = destroy_status = fd = (switch_file_t *) 0x12bc7b00 pool = (switch_memory_pool_t *) 0x12bc79c8 rlp = {rlim_cur = 245760, rlim_max = 245760} waste = 0 __PRETTY_FUNCTION__ = "main" Thanks, JB -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090725/421d8b43/attachment.html From brian at freeswitch.org Sat Jul 25 08:17:49 2009 From: brian at freeswitch.org (Brian West) Date: Sat, 25 Jul 2009 10:17:49 -0500 Subject: [Freeswitch-dev] random fs crashing In-Reply-To: <27c25bc40907250555l624b80b9i909b7ffbaccadca9@mail.gmail.com> References: <27c25bc40907250555l624b80b9i909b7ffbaccadca9@mail.gmail.com> Message-ID: <241963C8-BFEE-4DF8-B6D9-9D6A16BD6C63@freeswitch.org> What does your mod do? If you corrupt memory you can crash all over the place and it won't make sense. So what are you doing in your module that might be naughty? /b On Jul 25, 2009, at 7:55 AM, Juan Backson wrote: > > I am having some strange randomly crashing of fs in production. > They all point to something wrong in the main(). Although I have my > own module running, but I don't think it should have any impact to > the main() process. Could someone please point me to some solution > that may resolve or debug this problem? From shaheryarkh at googlemail.com Sun Jul 26 05:19:43 2009 From: shaheryarkh at googlemail.com (Muhammad Shahzad) Date: Sun, 26 Jul 2009 17:19:43 +0500 Subject: [Freeswitch-dev] A possible bug in FS causing Linux Kernel crash Message-ID: Hi, I am having random Linux Kernel crash problems while running FreeSWITCH as Skype to/from SIP gateway on one of our production servers. This machine is running CentOS 5.2, Kernel version 2.6.18-92.1.22.el5.centos.plusPAE with FS svn revision number 13754. At time of Kernel crash i could find following crash messages which point to some source code file in FS source tree. --------------------- Kernel Begin ------------------------ 3 Time(s): ======================= 3 Time(s): [] syscall_call+0x7/0xb 3 Time(s): [] sys_delete_module+0x192/0x1b8 3 Time(s): [] audit_syscall_entry+0x14b/0x17d 3 Time(s): [] remove_proc_entry+0x139/0x18c 3 Time(s): [] alsa_sound_exit+0xa/0x30 [snd] 3 Time(s): [] snd_info_done+0x46/0x49 [snd] 3 Time(s): BUG: warning at fs/proc/generic.c:732/remove_proc_entry() (Not tainted) 1 Time(s): snd-malloc: Memory leak? pages not freed = 1 ---------------------- Kernel End ------------------------- While the problem seems to arise from ALSA kernel module but it blames FS file fs/proc/generic.c:732 for this. The only FS module that is using ALSA is mod_skypiax but as far as i remember that module is using FS internal routines to allocate and de-allocate sound driver services for Skype client. Please suggest a solution. Thank you. -- Muhammad Shahzad ----------------------------------- CISCO Rich Media Communication Specialist (CRMCS) CISCO Certified Network Associate (CCNA) Cell: +92 334 422 40 88 MSN: shari_786pk at hotmail.com Email: shaheryarkh at googlemail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090726/b0e5d401/attachment.html From dftoro at yahoo.com Sun Jul 26 07:25:49 2009 From: dftoro at yahoo.com (Diego Toro) Date: Sun, 26 Jul 2009 07:25:49 -0700 (PDT) Subject: [Freeswitch-dev] support currency and number pronounced in spanish (suggestion) Message-ID: <734913.45285.qm@web33502.mail.mud.yahoo.com> Hi all, ? This code support currency and number pronounced in spanish, there are new files so that to pronounce numbers in spanish is different to english, for example, number 100 in english is one-hundred and 500 is five-hundred but in spanish that is not right way. ? Audio files neccesaries (included in phrase_es.xml): ?veinti.wav ?100.wav ?500.wav ?700.wav ?900.wav I changed code on mod_say_es.c and switch_status_t play_group method to improve support for pronouncing currency and number, this is new code: ? static switch_status_t play_group(switch_say_method_t method, int a, int b, int c, char *what, switch_core_session_t *session,switch_input_args_t *args) { ?if (a) { ? switch(a) { ?? case 1: ?if (b || c) { ????????????? say_file("digits/hundred.wav"); ?????????? } else { ????????????? say_file("digits/100.wav"); ????????????? } ? ????????? break; ?? case 5: ?say_file("digits/500.wav"); ? ?break; ?? case 7: ?say_file("digits/700.wav"); ??????? break; ?? case 9: ?say_file("digits/900.wav"); ??????? break; ?? default: ?say_file("digits/%d.wav", a); ??????? say_file("digits/hundred.wav"); ?break; ??? } ? } ? ?if (b) { ?? if (b > 1) { ???? switch (b) { ????? case 2:? if (c) { ??????????????? say_file("digits/veinti.wav"); ??????????????? } else { ????????????????? say_file("digits/20.wav"); ???????????????? } ?????????? break; ????? default: ? say_file("digits/%d0.wav", b); ??????????????? if (c) ?{ ????????????????? say_file("currency/and.wav"); ???????????????? } ?????????? break; ??????? } ???? } else { ???????? say_file("digits/%d%d.wav", b, c); ?c = 0; ????? } ?? } ?if (c) { ?? if (method == SSM_COUNTED) { ??? say_file("digits/h-%d.wav", c); ? } else { ???? say_file("digits/%d.wav", c); ??? } ?} ?if (what && (a || b || c)) { ?? say_file(what); ? } ?return SWITCH_STATUS_SUCCESS; } ? ? any suggestion is welcome ? Diego Toro -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090726/ec4cd46d/attachment.html From brian at freeswitch.org Sun Jul 26 08:58:10 2009 From: brian at freeswitch.org (Brian West) Date: Sun, 26 Jul 2009 10:58:10 -0500 Subject: [Freeswitch-dev] support currency and number pronounced in spanish (suggestion) In-Reply-To: <734913.45285.qm@web33502.mail.mud.yahoo.com> References: <734913.45285.qm@web33502.mail.mud.yahoo.com> Message-ID: <3635629E-DDB1-4FE6-959E-1B43B0AC5280@freeswitch.org> Please post your changes to jira. /b On Jul 26, 2009, at 9:25 AM, Diego Toro wrote: > Hi all, > > This code support currency and number pronounced in spanish, there > are new files so that to pronounce numbers in spanish is different > to english, for > example, number 100 in english is one-hundred and 500 is five- > hundred but in spanish that is not right way. > > Audio files neccesaries (included in phrase_es.xml): > veinti.wav > 100.wav > 500.wav > 700.wav > 900.wav > I changed code on mod_say_es.c and switch_status_t play_group method > to improve support for pronouncing currency and number, this is new > code: > > static switch_status_t play_group(switch_say_method_t method, int a, > int b, int c, char *what, switch_core_session_t > *session,switch_input_args_t *args) > { > if (a) { > switch(a) { > case 1: > if (b || c) { > say_file("digits/hundred.wav"); > } else { > say_file("digits/100.wav"); > } > > break; > case 5: > say_file("digits/500.wav"); > > break; > case 7: > say_file("digits/700.wav"); > break; > case 9: > say_file("digits/900.wav"); > break; > default: > say_file("digits/%d.wav", a); > say_file("digits/hundred.wav"); > break; > } > } > > if (b) { > if (b > 1) { > switch (b) { > case 2: if (c) { > say_file("digits/veinti.wav"); > } else { > say_file("digits/20.wav"); > } > break; > default: > say_file("digits/%d0.wav", b); > if (c) > { > say_file("currency/and.wav"); > } > break; > } > } else { > say_file("digits/%d%d.wav", b, c); > c = 0; > } > } > if (c) { > if (method == SSM_COUNTED) { > say_file("digits/h-%d.wav", c); > } else { > say_file("digits/%d.wav", c); > } > } > if (what && (a || b || c)) { > say_file(what); > } > return SWITCH_STATUS_SUCCESS; > } > > > any suggestion is welcome > > Diego Toro > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090726/1e9bec32/attachment.html From gmaruzz at celliax.org Mon Jul 27 07:08:55 2009 From: gmaruzz at celliax.org (Giovanni Maruzzelli) Date: Mon, 27 Jul 2009 16:08:55 +0200 Subject: [Freeswitch-dev] Skypiax, Skype endpoint and trunk, revamped Message-ID: <7b197bef0907270708h1dd55de2m92b5de869da6404d@mail.gmail.com> Ciao FreeSWITCHers, please have a look at the much changed wiki page: http://wiki.freeswitch.org/wiki/Skypiax_Skype_Endpoint_and_Trunk and checkout and test the code in svn. Much has happened, various bug fixes and features added. Most notable: - multiple instances of the same Skype username on Linux (eg: running 20 concurrent channels as "Bob" Skype user) - adding and removing interfaces on the fly (patch sent by Muhammad Shahzad) - easier creation of Skype clients configuration directory - reduced latency - better robustness - running as Windows Service - customized ALSA driver for more devices with less IRQs and context switches - custom kernel tickless and 100HZ (eg. solves high load problems in CentOS and in virtualization) - interactive command line client for prototyping Also, please note that ALSA drivers version 1.0.20 seems to be much more stable in our kind of usage (snd-dummy). Various other enhancements will come, but in the mean time please give feedback on the current svn code (we want to be robust for the 1.0.4 Release :-) ) See you all at www.cluecon.com, talk on Skypiax August 4th at 4.30 pm ! -giovanni Sincerely, Giovanni Maruzzelli ========================================= www.celliax.org via Pierlombardo 9, 20135 Milano Italy gmaruzz at celliax dot org Cell : +39-347-2665618 Fax : +39-02-87390039 From marketing at cluecon.com Mon Jul 27 11:50:01 2009 From: marketing at cluecon.com (Michael Collins) Date: Mon, 27 Jul 2009 11:50:01 -0700 Subject: [Freeswitch-dev] ClueCon 2009 - Last Chance For Early Bird Special! Message-ID: <87f2f3b90907271150y2b5c5db1pb7466590a87c0a48@mail.gmail.com> ClueCon is next week! We're all gearing up for a great event. Here is some important information for those who've not already paid: Today is the last day to receive the $499 early bird special. After today, the price will go up to $699. If you have registered at the ClueCon website but you have not yet paid then please call 877.742.CLUE immediately! We want to make sure that you get the early bird rate. All registrations after today (Monday July 27) will be $699. Thank you for your support of ClueCon 2009! We are looking forward to seeing everyone in person in Chicago. -Michael Collins http://www.cluecon.com 877.742.CLUE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090727/ad6aaa33/attachment.html From gmaruzz at celliax.org Mon Jul 27 12:31:01 2009 From: gmaruzz at celliax.org (Giovanni Maruzzelli) Date: Mon, 27 Jul 2009 21:31:01 +0200 Subject: [Freeswitch-dev] Slashdot: How-to-Help-With-a-University-ICT-Strategy Message-ID: <7b197bef0907271231y262c7b06v3a83ebcef86f7f54@mail.gmail.com> http://ask.slashdot.org/story/09/07/27/1652247/How-to-Help-With-a-University-ICT-Strategy " An anonymous reader writes "I have been asked to contribute to my university's revised ICT (Information and Communication Technology) strategy and I am curious what fellow Slashdot members consider to be the main advice in this context. What are the major mistakes that organizations like universities make? Given the complexity of the different participants in a university, how does one have a coherent strategy that fulfills the needs of such a wide audience? How does one promote open source in a managerial culture? How does one deal with the curse of the virtual learning environment?"" http://ask.slashdot.org/comments.pl?sid=1316571&cid=28842157 From ron.freeswitch at mcleodnet.com Mon Jul 27 13:10:59 2009 From: ron.freeswitch at mcleodnet.com (Ron McLeod) Date: Mon, 27 Jul 2009 13:10:59 -0700 Subject: [Freeswitch-dev] Looking for Mandarin-speaking FreeSWITCH Developer Message-ID: <41D6CFE835BE4EB593F3F6FD830759B2@fromage> I am looking for a Mandarin-speaking FreeSWITCH developer located in either: Vancouver Canada, Shenzhen China, or Hangzhou China. Please contact me off list. From ianquek at gmail.com Mon Jul 27 23:13:07 2009 From: ianquek at gmail.com (Ian Quek) Date: Tue, 28 Jul 2009 14:13:07 +0800 Subject: [Freeswitch-dev] Dialplan parser Message-ID: Hi, I'm looking at the dialplan wiki, and it says that the entire dialplan is parsed when the call reaches the ROUTING state. Where can I find the code that actually parses the dialplan.xml file? thanks -Ian -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090728/084770de/attachment.html From brian at freeswitch.org Tue Jul 28 01:25:01 2009 From: brian at freeswitch.org (Brian West) Date: Tue, 28 Jul 2009 03:25:01 -0500 Subject: [Freeswitch-dev] Dialplan parser In-Reply-To: References: Message-ID: <5D77BD4F-D67C-4CC3-8735-1245A9ECECA2@freeswitch.org> src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c /b On Jul 28, 2009, at 1:13 AM, Ian Quek wrote: > Hi, I'm looking at the dialplan wiki, and it says that the entire > dialplan is parsed when the call reaches the ROUTING state. Where > can I find the code that actually parses the dialplan.xml file? > > thanks > -Ian > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From cstomi.levlist at gmail.com Tue Jul 28 01:29:48 2009 From: cstomi.levlist at gmail.com (Tamas Cseke) Date: Tue, 28 Jul 2009 10:29:48 +0200 Subject: [Freeswitch-dev] get rid of mod_loopback for outbound calls In-Reply-To: <191c3a030907220909i785a6fc9tf0a4cae9a3aefd75@mail.gmail.com> References: <4A673665.3020408@gmail.com> <191c3a030907220909i785a6fc9tf0a4cae9a3aefd75@mail.gmail.com> Message-ID: <4A6EB6FC.8010007@gmail.com> Hello, Thank you for your effort about this issue. Our problem is that searching this routing data from database is quiet painful. Let me explain. we have manual calls from softphones and automatically originated calls pushed into fifo. We have a quiet complicate routing logic setting certain variables (sip headers, caller id number etc...), select routes according to prefix, time matching and so on. For manual calls we only could accomplish these routing in dialplan. (we store the data in database but we generate xml dialplans from them). For automatic calls if we can't use the dialplan we have to implement this routing again (in C module). and every time when a manager or customer would like a new feature (eg. add different sip headers for calls for different projects) we have to implement it twice. I tried to make a patch to do a dialplan hunt before the real invite for outgoing channels, but it's not very elegant... We were thinking about to make a new endpoint module, but the problem is that outgoing channel routine create the session, that we need for dialplan hunting, so I can't do it totally independent Could you please advise me a way to do it elegant, or is it a very bad idea? Here is the patch. svn diff -r 14390:14396 http://svn.freeswitch.org/svn/freeswitch/branches/cseket/src/mod/endpoints/mod_sofia Thanks in advance, Tamas Anthony Minessale ?rta: > yah, I looked into that and it's not possible to do. > > Your usage of the dialplan like a database is just not a good way to do it. > I suggest you use a database or something else to store that routing data > like others do. > > > > On Wed, Jul 22, 2009 at 10:55 AM, Tamas Cseke wrote: > > >> Hello, >> >> we are using mod_loopback for outbound calls to be able to do a dialplan >> hunt before the actual call origination. >> change caller number, change routing according to the prefix and >> something like that. >> We have talked about a lot, that this is "not very" efficient because >> we have 2 extra channels (loopbacks) for every call. >> >> I diged into the state machine code and figured out that if I change the >> on_routing state handler functions for switch_ivr_originate to don't >> veto the standard behavior I can perform a dilplan hunt. >> But I still have to originate a channel which makes a dialplan hunt and >> originate another. and this isn't what we really would like to... >> >> I've got the following tip from Anthony earlier: >> 0416 16:39:28 <@anthm> maybe i could make an api command to pretend to >> do a dialplan run and print out a list in inline format of what to do >> 0416 16:39:48 <@anthm> that you could feed to originate inline dialplan >> >> But I don't know how to implement this. I need some explanation. >> >> 1) the dialplan pretender api returns applications in inline format >> 2) we feed it to inline dialplan >> but how could we originate the call, how should the whole process look >> like? >> could you please give me an example? >> >> I was thinking about someting like this, but it doesn't make sense I quess. >> ${originate(call_url inline ${pretend_dialplan_hunt(exten XML context)})} >> >> Thanks in advance, >> Tamas >> >> >> >> _______________________________________________ >> FreeSWITCH-dev mailing list >> FreeSWITCH-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> >> > > > > > ------------------------------------------------------------------------ > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > From ianquek at gmail.com Tue Jul 28 04:44:22 2009 From: ianquek at gmail.com (Ian Quek) Date: Tue, 28 Jul 2009 19:44:22 +0800 Subject: [Freeswitch-dev] Recording Calls to Extensions Message-ID: Hi, I have a question regarding editing the default.xml file in conf/dialplan. What I want to do, is set the dialplan to record calls on specific extensions, for example, 1002, but not on other extensions. So far, I've tried the following: : : the rest of the applications that were originally in Local_Extension are here : : The problem with this, is that now all other calls that do not dial 1002 give me the error message that the "destination number is not available" I have also tried reversing the order: : : the rest of the applications that were originally in Local_Extension are here : : However, this results in no recording being done at all. How do I fix this such that I only record calls to extension 1002, and allow all other calls through normally? thanks -Ian -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090728/f0e6edc1/attachment.html From msc at freeswitch.org Tue Jul 28 07:34:37 2009 From: msc at freeswitch.org (Michael S Collins) Date: Tue, 28 Jul 2009 07:34:37 -0700 Subject: [Freeswitch-dev] Recording Calls to Extensions In-Reply-To: References: Message-ID: <235ECDB7-BDE9-43DA-9374-461B80617332@freeswitch.org> On Jul 28, 2009, at 4:44 AM, Ian Quek wrote: > Hi, > > I have a question regarding editing the default.xml file in conf/ > dialplan. > What I want to do, is set the dialplan to record calls on specific > extensions, for example, 1002, but not on other extensions. > > So far, I've tried the following: > > > > Try adding: break="never" after the expression in the above line. Remember, the default matching logic is "break on first non match" which in your case would clobber all those local extensions except 1002. Adding the break="never" will let the extension keep matching even if 1002 doesn't match. -MC > > > > > : > : > the rest of the applications that were originally in > Local_Extension are here > : > : > > > > The problem with this, is that now all other calls that do not dial > 1002 give me the error message that the "destination number is not > available" > > I have also tried reversing the order: > > > > : > : > the rest of the applications that were originally in > Local_Extension are here > : > : > > > > > > > However, this results in no recording being done at all. > > How do I fix this such that I only record calls to extension 1002, > and allow all other calls through normally? > > thanks > -Ian > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From anthony.minessale at gmail.com Tue Jul 28 07:50:47 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Tue, 28 Jul 2009 09:50:47 -0500 Subject: [Freeswitch-dev] get rid of mod_loopback for outbound calls In-Reply-To: <4A6EB6FC.8010007@gmail.com> References: <4A673665.3020408@gmail.com> <191c3a030907220909i785a6fc9tf0a4cae9a3aefd75@mail.gmail.com> <4A6EB6FC.8010007@gmail.com> Message-ID: <191c3a030907280750s1db9fc18k1843d3b485da4af@mail.gmail.com> you could try using a FS api call in your originate that uses mod_http to hit your routing logic. The other way is just not elegant at all and there is no way I can see to do it. On Tue, Jul 28, 2009 at 3:29 AM, Tamas Cseke wrote: > Hello, > > Thank you for your effort about this issue. > Our problem is that searching this routing data from database is quiet > painful. > Let me explain. we have manual calls from softphones and automatically > originated calls pushed into fifo. > > We have a quiet complicate routing logic setting certain variables (sip > headers, caller id number etc...), select routes according to prefix, > time matching and so on. > For manual calls we only could accomplish these routing in dialplan. > (we store the data in database but we generate xml dialplans from them). > For automatic calls if we can't use the dialplan we have to implement > this routing again (in C module). and every time when a manager or > customer would like a new feature (eg. add > different sip headers for calls for different projects) we have to > implement it twice. > > I tried to make a patch to do a dialplan hunt before the real invite for > outgoing channels, but it's not very elegant... > We were thinking about to make a new endpoint module, but the problem > is that outgoing channel routine create the session, that we need for > dialplan hunting, so I can't do it totally independent > Could you please advise me a way to do it elegant, or is it a very bad > idea? > > Here is the patch. > svn diff -r 14390:14396 > > http://svn.freeswitch.org/svn/freeswitch/branches/cseket/src/mod/endpoints/mod_sofia > > Thanks in advance, > Tamas > > Anthony Minessale ?rta: > > yah, I looked into that and it's not possible to do. > > > > Your usage of the dialplan like a database is just not a good way to do > it. > > I suggest you use a database or something else to store that routing data > > like others do. > > > > > > > > On Wed, Jul 22, 2009 at 10:55 AM, Tamas Cseke >wrote: > > > > > >> Hello, > >> > >> we are using mod_loopback for outbound calls to be able to do a dialplan > >> hunt before the actual call origination. > >> change caller number, change routing according to the prefix and > >> something like that. > >> We have talked about a lot, that this is "not very" efficient because > >> we have 2 extra channels (loopbacks) for every call. > >> > >> I diged into the state machine code and figured out that if I change the > >> on_routing state handler functions for switch_ivr_originate to don't > >> veto the standard behavior I can perform a dilplan hunt. > >> But I still have to originate a channel which makes a dialplan hunt and > >> originate another. and this isn't what we really would like to... > >> > >> I've got the following tip from Anthony earlier: > >> 0416 16:39:28 <@anthm> maybe i could make an api command to pretend to > >> do a dialplan run and print out a list in inline format of what to do > >> 0416 16:39:48 <@anthm> that you could feed to originate inline dialplan > >> > >> But I don't know how to implement this. I need some explanation. > >> > >> 1) the dialplan pretender api returns applications in inline format > >> 2) we feed it to inline dialplan > >> but how could we originate the call, how should the whole process look > >> like? > >> could you please give me an example? > >> > >> I was thinking about someting like this, but it doesn't make sense I > quess. > >> ${originate(call_url inline ${pretend_dialplan_hunt(exten XML > context)})} > >> > >> Thanks in advance, > >> Tamas > >> > >> > >> > >> _______________________________________________ > >> FreeSWITCH-dev mailing list > >> FreeSWITCH-dev at lists.freeswitch.org > >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > >> http://www.freeswitch.org > >> > >> > > > > > > > > > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > FreeSWITCH-dev mailing list > > FreeSWITCH-dev at lists.freeswitch.org > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > > http://www.freeswitch.org > > > > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090728/96893bf9/attachment-0001.html From rupa at rupa.com Tue Jul 28 07:58:54 2009 From: rupa at rupa.com (Rupa Schomaker) Date: Tue, 28 Jul 2009 09:58:54 -0500 Subject: [Freeswitch-dev] get rid of mod_loopback for outbound calls In-Reply-To: <191c3a030907280750s1db9fc18k1843d3b485da4af@mail.gmail.com> References: <4A673665.3020408@gmail.com> <191c3a030907220909i785a6fc9tf0a4cae9a3aefd75@mail.gmail.com> <4A6EB6FC.8010007@gmail.com> <191c3a030907280750s1db9fc18k1843d3b485da4af@mail.gmail.com> Message-ID: use mod_curl instead of mod_http.... On Tue, Jul 28, 2009 at 9:50 AM, Anthony Minessale < anthony.minessale at gmail.com> wrote: > you could try using a FS api call in your originate that uses mod_http to > hit your routing logic. > > The other way is just not elegant at all and there is no way I can see to > do it. > > > > On Tue, Jul 28, 2009 at 3:29 AM, Tamas Cseke wrote: > >> Hello, >> >> Thank you for your effort about this issue. >> Our problem is that searching this routing data from database is quiet >> painful. >> Let me explain. we have manual calls from softphones and automatically >> originated calls pushed into fifo. >> >> We have a quiet complicate routing logic setting certain variables (sip >> headers, caller id number etc...), select routes according to prefix, >> time matching and so on. >> For manual calls we only could accomplish these routing in dialplan. >> (we store the data in database but we generate xml dialplans from them). >> For automatic calls if we can't use the dialplan we have to implement >> this routing again (in C module). and every time when a manager or >> customer would like a new feature (eg. add >> different sip headers for calls for different projects) we have to >> implement it twice. >> >> I tried to make a patch to do a dialplan hunt before the real invite for >> outgoing channels, but it's not very elegant... >> We were thinking about to make a new endpoint module, but the problem >> is that outgoing channel routine create the session, that we need for >> dialplan hunting, so I can't do it totally independent >> Could you please advise me a way to do it elegant, or is it a very bad >> idea? >> >> Here is the patch. >> svn diff -r 14390:14396 >> >> http://svn.freeswitch.org/svn/freeswitch/branches/cseket/src/mod/endpoints/mod_sofia >> >> Thanks in advance, >> Tamas >> >> Anthony Minessale ?rta: >> > yah, I looked into that and it's not possible to do. >> > >> > Your usage of the dialplan like a database is just not a good way to do >> it. >> > I suggest you use a database or something else to store that routing >> data >> > like others do. >> > >> > >> > >> > On Wed, Jul 22, 2009 at 10:55 AM, Tamas Cseke > >wrote: >> > >> > >> >> Hello, >> >> >> >> we are using mod_loopback for outbound calls to be able to do a >> dialplan >> >> hunt before the actual call origination. >> >> change caller number, change routing according to the prefix and >> >> something like that. >> >> We have talked about a lot, that this is "not very" efficient because >> >> we have 2 extra channels (loopbacks) for every call. >> >> >> >> I diged into the state machine code and figured out that if I change >> the >> >> on_routing state handler functions for switch_ivr_originate to don't >> >> veto the standard behavior I can perform a dilplan hunt. >> >> But I still have to originate a channel which makes a dialplan hunt and >> >> originate another. and this isn't what we really would like to... >> >> >> >> I've got the following tip from Anthony earlier: >> >> 0416 16:39:28 <@anthm> maybe i could make an api command to pretend to >> >> do a dialplan run and print out a list in inline format of what to do >> >> 0416 16:39:48 <@anthm> that you could feed to originate inline dialplan >> >> >> >> But I don't know how to implement this. I need some explanation. >> >> >> >> 1) the dialplan pretender api returns applications in inline format >> >> 2) we feed it to inline dialplan >> >> but how could we originate the call, how should the whole process look >> >> like? >> >> could you please give me an example? >> >> >> >> I was thinking about someting like this, but it doesn't make sense I >> quess. >> >> ${originate(call_url inline ${pretend_dialplan_hunt(exten XML >> context)})} >> >> >> >> Thanks in advance, >> >> Tamas >> >> >> >> >> >> >> >> _______________________________________________ >> >> FreeSWITCH-dev mailing list >> >> FreeSWITCH-dev at lists.freeswitch.org >> >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> >> http://www.freeswitch.org >> >> >> >> >> > >> > >> > >> > >> > ------------------------------------------------------------------------ >> > >> > _______________________________________________ >> > FreeSWITCH-dev mailing list >> > FreeSWITCH-dev at lists.freeswitch.org >> > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> > http://www.freeswitch.org >> > >> >> >> _______________________________________________ >> FreeSWITCH-dev mailing list >> FreeSWITCH-dev at lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> > > > > -- > Anthony Minessale II > > FreeSWITCH http://www.freeswitch.org/ > ClueCon http://www.cluecon.com/ > Twitter: http://twitter.com/FreeSWITCH_wire > > AIM: anthm > MSN:anthony_minessale at hotmail.com > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com > IRC: irc.freenode.net #freeswitch > > FreeSWITCH Developer Conference > sip:888 at conference.freeswitch.org > iax:guest at conference.freeswitch.org/888 > googletalk:conf+888 at conference.freeswitch.org > pstn:213-799-1400 > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > > -- -Rupa -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090728/c0e243f4/attachment.html From gmaruzz at celliax.org Wed Jul 29 04:53:09 2009 From: gmaruzz at celliax.org (Giovanni Maruzzelli) Date: Wed, 29 Jul 2009 13:53:09 +0200 Subject: [Freeswitch-dev] FishEye Down? Message-ID: <7b197bef0907290453n1b9dd482jeb78366ebcee544f@mail.gmail.com> FishEye seems to be down since some hours (now is CET 1:52 PM) -giovanni From msc at freeswitch.org Thu Jul 30 11:08:31 2009 From: msc at freeswitch.org (Michael Collins) Date: Thu, 30 Jul 2009 11:08:31 -0700 Subject: [Freeswitch-dev] FreeSWITCH FYI: Interview With Anthony Message-ID: <87f2f3b90907301108s2fd62841m9d327868ca8940f2@mail.gmail.com> FYI, BandwidthU's interview with Anthony has been posted. Click hereto visit part 3 of the interview which has links to parts one and two. Also, be sure to Digg it! Thanks, Michael -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090730/7d18ce46/attachment.html From marketing at cluecon.com Thu Jul 30 11:23:02 2009 From: marketing at cluecon.com (Michael Collins) Date: Thu, 30 Jul 2009 11:23:02 -0700 Subject: [Freeswitch-dev] ClueCon 2009 - Last Minute Updates and Information Message-ID: <87f2f3b90907301123u35924511v6683b79a11bd96b5@mail.gmail.com> Hello all! Please visit the ClueCon website for information about the meet and greet on Tuesday, August 4th being sponsored by iCall. Please be sure to RSVP at the link provided so that the great folks at iCall know how many people they'll be hosting. Can you believe it's only five days until ClueCon 2009! It's not too late to get registered. Please call us at 877.742.CLUE and sign up today. You don't want to miss out on all the great stuff happening this year! We're all looking forward to meeting each other next week. See you in Chicago! -Michael Collins http://www.cluecon.com 877.742.CLUE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090730/eb128f6b/attachment.html From dujinfang at gmail.com Fri Jul 31 13:42:16 2009 From: dujinfang at gmail.com (Seven Du) Date: Sat, 1 Aug 2009 04:42:16 +0800 Subject: [Freeswitch-dev] what's the best way to change code and make patch Message-ID: Hi, Let's say I made 2 changes to one file, and svn diff can generate one diff file, but I want two changes in different patch files so developers may apply both or only one to trunk. The simple way would be do only one change one time, but that one might be take time or never to be applied into trunk, this makes complicated to maintenance code. The other way maybe to make a branch, but takes extra works to keep sync with trunk. Ideas? Thanks. From brian at freeswitch.org Fri Jul 31 13:52:32 2009 From: brian at freeswitch.org (Brian West) Date: Fri, 31 Jul 2009 15:52:32 -0500 Subject: [Freeswitch-dev] what's the best way to change code and make patch In-Reply-To: References: Message-ID: <77099A23-482F-40E4-9957-0C35F0C1F39F@freeswitch.org> svn diff path.tofile.c > patch1.diff svn diff path.tootherfile.c > patch2.diff /b On Jul 31, 2009, at 3:42 PM, Seven Du wrote: > Hi, > > Let's say I made 2 changes to one file, and svn diff can generate one > diff file, but I want two changes in different patch files so > developers may apply both or only one to trunk. > > The simple way would be do only one change one time, but that one > might be take time or never to be applied into trunk, this makes > complicated to maintenance code. > > The other way maybe to make a branch, but takes extra works to keep > sync with trunk. > > Ideas? > > Thanks. From dujinfang at gmail.com Fri Jul 31 19:51:41 2009 From: dujinfang at gmail.com (Seven Du) Date: Sat, 1 Aug 2009 10:51:41 +0800 Subject: [Freeswitch-dev] what's the best way to change code and make patch In-Reply-To: <77099A23-482F-40E4-9957-0C35F0C1F39F@freeswitch.org> References: <77099A23-482F-40E4-9957-0C35F0C1F39F@freeswitch.org> Message-ID: <353D9FB8-A25A-438E-80B1-3B347F132C36@gmail.com> Thanks Brian. But what if the 2 changes are on one file? change 1 svn diff file.c > patch1.diff revert file.c change 2 svn diff file.c > patch2.diff patch < patch1.diff Then I got 2 patch files and 2 changes reminds on my code. But it will be more complicated if I more than 2 changes. Also I have to re-diff if I want to change change1 ... 7. On Aug 1, 2009, at 4:52 AM, Brian West wrote: > svn diff path.tofile.c > patch1.diff > svn diff path.tootherfile.c > patch2.diff > > /b > > On Jul 31, 2009, at 3:42 PM, Seven Du wrote: > >> Hi, >> >> Let's say I made 2 changes to one file, and svn diff can generate one >> diff file, but I want two changes in different patch files so >> developers may apply both or only one to trunk. >> >> The simple way would be do only one change one time, but that one >> might be take time or never to be applied into trunk, this makes >> complicated to maintenance code. >> >> The other way maybe to make a branch, but takes extra works to keep >> sync with trunk. >> >> Ideas? >> >> Thanks. > > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From brian at freeswitch.org Fri Jul 31 19:59:01 2009 From: brian at freeswitch.org (Brian West) Date: Fri, 31 Jul 2009 21:59:01 -0500 Subject: [Freeswitch-dev] what's the best way to change code and make patch In-Reply-To: <353D9FB8-A25A-438E-80B1-3B347F132C36@gmail.com> References: <77099A23-482F-40E4-9957-0C35F0C1F39F@freeswitch.org> <353D9FB8-A25A-438E-80B1-3B347F132C36@gmail.com> Message-ID: <36F09EE7-8836-4FD2-A248-3A95577C1CB2@freeswitch.org> oh that sucks... you'll have to do them differently. /b On Jul 31, 2009, at 9:51 PM, Seven Du wrote: > Thanks Brian. But what if the 2 changes are on one file? > > change 1 > svn diff file.c > patch1.diff > revert file.c > change 2 > svn diff file.c > patch2.diff > > patch < patch1.diff > > Then I got 2 patch files and 2 changes reminds on my code. But it will > be more complicated if I more than 2 changes. Also I have to re-diff > if I want to change change1 ... > > 7. From mike at jerris.com Fri Jul 31 20:34:36 2009 From: mike at jerris.com (Michael Jerris) Date: Fri, 31 Jul 2009 23:34:36 -0400 Subject: [Freeswitch-dev] what's the best way to change code and make patch In-Reply-To: <36F09EE7-8836-4FD2-A248-3A95577C1CB2@freeswitch.org> References: <77099A23-482F-40E4-9957-0C35F0C1F39F@freeswitch.org> <353D9FB8-A25A-438E-80B1-3B347F132C36@gmail.com> <36F09EE7-8836-4FD2-A248-3A95577C1CB2@freeswitch.org> Message-ID: <62BD09A8-D64A-4D90-8BED-738B764E18B4@jerris.com> If you use git locally with git-svn you can do this. git add -i Mike On Jul 31, 2009, at 10:59 PM, Brian West wrote: > oh that sucks... you'll have to do them differently. > > /b > > On Jul 31, 2009, at 9:51 PM, Seven Du wrote: > >> Thanks Brian. But what if the 2 changes are on one file? >> >> change 1 >> svn diff file.c > patch1.diff >> revert file.c >> change 2 >> svn diff file.c > patch2.diff >> >> patch < patch1.diff >> >> Then I got 2 patch files and 2 changes reminds on my code. But it >> will >> be more complicated if I more than 2 changes. Also I have to re-diff >> if I want to change change1 ... >> >> 7. > > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org From anthony.minessale at gmail.com Fri Jul 31 22:00:49 2009 From: anthony.minessale at gmail.com (Anthony Minessale) Date: Sat, 1 Aug 2009 00:00:49 -0500 Subject: [Freeswitch-dev] what's the best way to change code and make patch In-Reply-To: <62BD09A8-D64A-4D90-8BED-738B764E18B4@jerris.com> References: <77099A23-482F-40E4-9957-0C35F0C1F39F@freeswitch.org> <353D9FB8-A25A-438E-80B1-3B347F132C36@gmail.com> <36F09EE7-8836-4FD2-A248-3A95577C1CB2@freeswitch.org> <62BD09A8-D64A-4D90-8BED-738B764E18B4@jerris.com> Message-ID: <191c3a030907312200x517c27bdse0b39ad950778ef8@mail.gmail.com> dont forget to propose what you are patching so we all approve of it if you plan to re-submit. On Fri, Jul 31, 2009 at 10:34 PM, Michael Jerris wrote: > If you use git locally with git-svn you can do this. > > git add -i > > Mike > > On Jul 31, 2009, at 10:59 PM, Brian West wrote: > > > oh that sucks... you'll have to do them differently. > > > > /b > > > > On Jul 31, 2009, at 9:51 PM, Seven Du wrote: > > > >> Thanks Brian. But what if the 2 changes are on one file? > >> > >> change 1 > >> svn diff file.c > patch1.diff > >> revert file.c > >> change 2 > >> svn diff file.c > patch2.diff > >> > >> patch < patch1.diff > >> > >> Then I got 2 patch files and 2 changes reminds on my code. But it > >> will > >> be more complicated if I more than 2 changes. Also I have to re-diff > >> if I want to change change1 ... > >> > >> 7. > > > > > > _______________________________________________ > > FreeSWITCH-dev mailing list > > FreeSWITCH-dev at lists.freeswitch.org > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > > http://www.freeswitch.org > > > _______________________________________________ > FreeSWITCH-dev mailing list > FreeSWITCH-dev at lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale at hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888 at conference.freeswitch.org iax:guest at conference.freeswitch.org/888 googletalk:conf+888 at conference.freeswitch.org pstn:213-799-1400 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20090801/2405cfeb/attachment.html