[Asterisk-Users] Unicall acting really funny

Moises Silva moises.silva at gmail.com
Tue Jun 13 06:20:52 MST 2006


Joao. The more important thing about testcall is that it allows you to
isolate the problem (you dont need asterisk) .
I would recommend you to read this document I wrote:

 http://phpmexic.u33.0web-hosting.com/wordpress/misc/mfcr2-asterisk-unicall.pdf

Here is described a bit more detailed. Is in spanishg, but since im
able to read portuguese I think may be you can understand it. The more
important thing is to increment testcall logging verbosity. For that
you need to edit testcall.c, there you will find a function named
run_uc(), search the logging_level variable and let it be
UC_LOG_SEVERITY_MASK, then "make testcall" and run the test again but
use only in 1 circuit. That will show in wich part of the initial
signaling is staying stuck.

Other more clear test is modify mfcr2.c, in the first line it has
commented a #define AUDIO_LOG, uncomment it and libmfcr2 will save all
the audio signalingin in a couple of files in the same folder you
execute testcall. ONce done that, you can send me the audio files and
the logging messages and may be I will be able to know what the
problem is.

Regards

On 6/13/06, Joao Mesquita <jmesquita at lightcomm.com.br> wrote:
> Dear Moises,
>
>     Thank you for your reply! I am not sure how to use the testcall tool
> to debug, but here we go with what I tried. The Main Thread message does
> never stop showing on the screen, I bet this is not the expected
> behavior tho. Maybe this can be of any help:
>
> asterisk-test:/usr/local/src/libunicall-0.0.3# cat testcall.conf
> destination-no 1150901010
> protocol-class mfcr2
> protocol-variant br,10,4
> protocol-end cpe
> on-offered accept
> circuits 1-10
>
> asterisk-test:/usr/local/src/libunicall-0.0.3# ./testcall
> Chan 1, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523, from
> '' to '1150901010'
> Chan 2, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523, from
> '' to '1150901011'
> Chan 3, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523, from
> '' to '1150901012'
> Chan 4, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523, from
> '' to '1150901013'
> Chan 5, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523, from
> '' to '1150901014'
> Chan 6, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523, from
> '' to '1150901015'
> Chan 7, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523, from
> '' to '1150901016'
> Chan 8, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523, from
> '' to '1150901017'
> Chan 9, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523, from
> '' to '1150901018'
> Chan 10, class 'mfcr2', variant 'br,10,4', end 1, caller 1461727523,
> from '' to '1150901019'
> Loading protocol mfcr2
> Thread for channel 0
> Thread for channel 1
> Thread for channel 2
> Thread for channel 3
> Thread for channel 4
> Thread for channel 5
> Thread for channel 6
> Thread for channel 7
> Thread for channel 8
> Thread for channel 9
> Chan   1: -- Local end unblocked! :-)
> Chan   1: -- Local end unblocked! :-)
> Chan   2: -- Local end unblocked! :-)
> Chan   2: -- Local end unblocked! :-)
> Chan   3: -- Local end unblocked! :-)
> Chan   3: -- Local end unblocked! :-)
> Chan   4: -- Local end unblocked! :-)
> Chan   4: -- Local end unblocked! :-)
> Chan   5: -- Local end unblocked! :-)
> Chan   5: -- Local end unblocked! :-)
> Chan   6: -- Local end unblocked! :-)
> Chan   6: -- Local end unblocked! :-)
> Chan   7: -- Local end unblocked! :-)
> Chan   7: -- Local end unblocked! :-)
> Chan   8: -- Local end unblocked! :-)
> Chan   8: -- Local end unblocked! :-)
> Chan   9: -- Local end unblocked! :-)
> Chan   9: -- Local end unblocked! :-)
> Chan  10: -- Local end unblocked! :-)
> Chan  10: -- Local end unblocked! :-)
> Chan   1: -- Far end unblocked! :-)
> Chan   1: -- Far end unblocked! :-)
> Chan   1: Initiating call
> Chan   1: -- Dialing on channel 0
> Chan   1: -- Dialing on channel 0
> Chan   2: -- Far end unblocked! :-)
> Chan   2: -- Far end unblocked! :-)
> Chan   2: Initiating call
> Chan   2: -- Dialing on channel 0
> Chan   2: -- Dialing on channel 0
> Chan   3: -- Far end unblocked! :-)
> Chan   3: -- Far end unblocked! :-)
> Chan   3: Initiating call
> Chan   3: -- Dialing on channel 0
> Chan   3: -- Dialing on channel 0
> Chan   4: -- Far end unblocked! :-)
> Chan   4: -- Far end unblocked! :-)
> Chan   4: Initiating call
> Chan   4: -- Dialing on channel 0
> Chan   4: -- Dialing on channel 0
> Chan   5: -- Far end unblocked! :-)
> Chan   5: -- Far end unblocked! :-)
> Chan   5: Initiating call
> Chan   5: -- Dialing on channel 0
> Chan   5: -- Dialing on channel 0
> Chan   6: -- Far end unblocked! :-)
> Chan   6: -- Far end unblocked! :-)
> Chan   6: Initiating call
> Chan   6: -- Dialing on channel 0
> Chan   6: -- Dialing on channel 0
> Chan   7: -- Far end unblocked! :-)
> Chan   7: -- Far end unblocked! :-)
> Chan   7: Initiating call
> Chan   7: -- Dialing on channel 0
> Chan   7: -- Dialing on channel 0
> Chan   8: -- Far end unblocked! :-)
> Chan   8: -- Far end unblocked! :-)
> Chan   8: Initiating call
> Chan   8: -- Dialing on channel 0
> Chan   8: -- Dialing on channel 0
> Chan   9: -- Far end unblocked! :-)
> Chan   9: -- Far end unblocked! :-)
> Chan   9: Initiating call
> Chan   9: -- Dialing on channel 0
> Chan   9: -- Dialing on channel 0
> Chan  10: -- Far end unblocked! :-)
> Chan  10: -- Far end unblocked! :-)
> Chan  10: Initiating call
> Chan  10: -- Dialing on channel 0
> Chan  10: -- Dialing on channel 0
> Chan   3: -- Alerting on channel 0
> Chan   3: -- Alerting on channel 0
> Chan   8: -- Alerting on channel 0
> Chan   8: -- Alerting on channel 0
> Chan   1: -- Alerting on channel 0
> Chan   1: -- Alerting on channel 0
> Chan   4: -- Alerting on channel 0
> Chan   4: -- Alerting on channel 0
> Chan   2: -- Alerting on channel 0
> Chan   2: -- Alerting on channel 0
> Chan   6: -- Alerting on channel 0
> Chan   6: -- Alerting on channel 0
> Chan   7: -- Alerting on channel 0
> Chan   7: -- Alerting on channel 0
> Chan   9: -- Alerting on channel 0
> Chan   9: -- Alerting on channel 0
> Chan   5: -- Alerting on channel 0
> Chan   5: -- Alerting on channel 0
> Chan  10: -- Alerting on channel 0
> Chan  10: -- Alerting on channel 0
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Chan   6: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   6: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   7: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   7: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   8: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   8: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   9: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   9: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan  10: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan  10: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   1: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   1: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   2: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   2: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   3: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   3: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   4: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   4: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   5: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Chan   5: -- Protocol failure on channel 0, cause (32773) Unexpected CAS
> bit pattern
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
> Main thread
>
> Thank you,
>
> Mesquita
>
>
> Moises Silva wrote:
> > I helped debugging a tormenta card about 1 month ago. Thats the only
> > experience I have with Tormenta card. But he had the same message
> > about FAS error in /proc/zaptel. Why dont you try using testcall
> > (included with libunicall), that will tell you exactly where the call
> > is staying?
> >
> > On 6/10/06, Joao Mesquita <jmesquita at lightcomm.com.br> wrote:
> >> Hello guys!
> >>
> >>     I hope you bare with yet another newbie on the list! :-)
> >>
> >>     I am trying to setup an asterisk installation in between a Siemens
> >> HiPath 3800 and my local carrier (Telefonica/Brazil). Both running R2.
> >> ISDN is not an option on the carrier. :-(
> >>
> >>     I could apparently setup both E1s just fine according to zttool
> >> (both OK with no alarms) but, and this is where it starts to get funky,
> >> some calls from some phones get trough and some don't. Besides that,
> >> when I put the loglevel parameter in unicall.conf, asterisk gives me a
> >> seg fault when loading the module.
> >>     The last problem is that when I try the "reload" command on the
> >> asterisk CLI, the E1s get blocked again because chan_unicall.so fails to
> >> reload.
> >>
> >>     First of all, lets start with my environment:
> >>
> >>     Linux version: 2.4.27-2-386 #1 Wed Aug 17 09:33:35 UTC 2005 i686
> >> GNU/Linux
> >>     Asterisk version: 1.2.9.1
> >>     Zaptel version: 1.2.6
> >>     Unicall: unicall-0.0.3pre9
> >>     Board: ATCOM AX-4E (same as Tormenta2)
> >>
> >> asterisk-test:/# cat /proc/interrupts
> >>            CPU0
> >>   0:     277514    IO-APIC-edge  timer
> >>   1:          2    IO-APIC-edge  keyboard
> >>   2:          0          XT-PIC  cascade
> >>   8:          4    IO-APIC-edge  rtc
> >>  14:      38259    IO-APIC-edge  ide0
> >>  15:         12    IO-APIC-edge  ide1
> >>  16:          0   IO-APIC-level  usb-uhci, usb-uhci
> >>  17:          0   IO-APIC-level  Intel ICH5
> >>  18:          0   IO-APIC-level  usb-uhci
> >>  19:          0   IO-APIC-level  usb-uhci
> >>  22:    2700297   IO-APIC-level  tor2
> >>  23:      14842   IO-APIC-level  ehci_hcd, eth0
> >> NMI:          0
> >> LOC:     277453
> >> ERR:          0
> >> MIS:          0
> >>
> >> ##### E1 connected to the carrier #######
> >> asterisk-test:/# cat /proc/zaptel/1
> >> Span 1: Tor2/0/1 "Tormenta 2 (PCI) Quad E1 Card 0 Span 1" HDB3/
> >> ClockSource
> >>         BPV count: 812
> >>         FAS error count: 3
> >>
> >>            1 Tor2/0/1/1 CAS (In use)
> >>            2 Tor2/0/1/2 CAS (In use)
> >>            3 Tor2/0/1/3 CAS (In use)
> >>            (snip)
> >>            27 Tor2/0/1/27 CAS (In use)
> >>           28 Tor2/0/1/28 CAS (In use)
> >>           29 Tor2/0/1/29 CAS (In use)
> >>           30 Tor2/0/1/30 CAS (In use)
> >>           31 Tor2/0/1/31 CAS (In use)
> >>
> >> ##### E1 connected to the HiPath #########
> >> Span 2: Tor2/0/2 "Tormenta 2 (PCI) Quad E1 Card 0 Span 2" HDB3/
> >>         BPV count: 329
> >>         FAS error count: 6
> >>
> >>           32 Tor2/0/2/1 CAS (In use)
> >>           33 Tor2/0/2/2 CAS (In use)
> >>           34 Tor2/0/2/3 CAS (In use)
> >>           35 Tor2/0/2/4 CAS (In use)
> >>           (snip)
> >>           57 Tor2/0/2/26 CAS (In use)
> >>           58 Tor2/0/2/27 CAS (In use)
> >>           59 Tor2/0/2/28 CAS (In use)
> >>           60 Tor2/0/2/29 CAS (In use)
> >>           61 Tor2/0/2/30 CAS (In use)
> >>           62 Tor2/0/2/31 CAS (In use)
> >>
> >> asterisk-test:/etc# cat zaptel.conf
> >> span=1,1,0,cas,hdb3
> >> span=2,0,0,cas,hdb3
> >> span=3,0,0,cas,hdb3
> >> span=4,0,0,cas,hdb3
> >> #
> >> cas=1-15:1101
> >> cas=17-31:1101
> >> #
> >> cas=32-46:1101
> >> cas=48-62:1101
> >> #
> >> cas=63-77:1101
> >> cas=79-93:1101
> >> #
> >> cas=94-108:1101
> >> cas=110-124:1101
> >>
> >> asterisk-test:/etc/asterisk# cat unicall.conf
> >> [channels]
> >> language=br
> >> protocolclass=mfcr2
> >> context=from-e1-externo
> >> protocolvariant=br,20,20
> >> protocolend=cpe
> >> group=1
> >> channel => 1-15
> >> channel => 17-31
> >>
> >> language=br
> >> context=from-e1-interno
> >> group=2
> >> channel => 32-46
> >> channel => 48-62
> >>
> >>
> >> Ok, now let's go with the logs! :-)
> >>
> >> When asterisk starts everything goes OK without the loglevel entry in
> >> unicall.conf, but with it we get:
> >>
> >>  [chan_unicall.so] => (Unified call processing (UniCall))
> >>   == Parsing '/etc/asterisk/unicall.conf': Found
> >> Segmentation fault (core dumped)
> >> asterisk-test:~# Ouch ... error while writing audio data: : Broken pipe
> >> Warning, flexibel rate not heavily tested!
> >>
> >>
> >> Now dialing from a DECT (Siemens Gigaset C50) extension behind Hipath to
> >> SIP/teste:
> >>
> >> Jun 10 02:24:36 WARNING[1652]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/39 event Detected
> >> Jun 10 02:24:42 WARNING[1652]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/39 event Offered
> >> Jun 10 02:24:42 WARNING[1652]: chan_unicall.c:2805 handle_uc_event: CRN
> >> 32770 - Offered on channel 0 (ANI: 1021, DNIS: 8080, Cat: 0)
> >> Jun 10 02:24:42 WARNING[1652]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/39 event Accepted
> >>     -- Executing Answer("UniCall/39-1", "") in new stack
> >> Jun 10 02:24:42 WARNING[1769]: chan_unicall.c:1460 unicall_answer:
> >> Answer Call
> >>     -- Executing Dial("UniCall/39-1", "SIP/teste") in new stack
> >>     -- Called teste
> >>     -- SIP/teste-291f is ringing
> >> Jun 10 02:24:43 WARNING[1769]: chan_unicall.c:2490 unicall_indicate:
> >> unicall_indicate 3
> >>     -- SIP/teste-291f answered UniCall/39-1
> >> Jun 10 02:24:47 WARNING[1769]: chan_unicall.c:2490 unicall_indicate:
> >> unicall_indicate -1
> >>   == Spawn extension (from-e1-interno, 8080, 2) exited non-zero on
> >> 'UniCall/39-1'
> >>     -- Hungup 'UniCall/39-1'
> >> Jun 10 02:24:59 WARNING[1652]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/39 event Drop call
> >> Jun 10 02:24:59 WARNING[1652]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/39 event Local end unblocked
> >>     -- Unicall/39 local unblocked
> >>
> >>
> >> Dialing from a Siemens euroset 3005 (regular office phone) to SIP/teste:
> >> This also happens to a lot of phones on the office
> >>
> >> Jun 10 02:26:05 WARNING[1652]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/40 event Detected
> >> Jun 10 02:26:10 WARNING[1652]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/40 event Protocol failure
> >>     -- Unicall/40 protocol error. Cause 32771
> >>
> >>
> >> Dialing from SIP/teste to local phone number:
> >>
> >>    -- Executing Dial("SIP/teste-eb12", "Unicall/g1/94109570") in new
> >> stack
> >>     -- Called g1/94109570
> >> Jun 10 02:26:59 WARNING[1778]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/3 event Dialing
> >> Jun 10 02:27:05 WARNING[1778]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/3 event Alerting
> >> Jun 10 02:27:08 WARNING[1778]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/3 event Connected
> >>     -- UniCall/3-1 answered SIP/teste-eb12
> >> Jun 10 02:27:14 WARNING[1778]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/3 event Protocol failure
> >>     -- Unicall/3 protocol error. Cause 32773
> >>     -- Hungup 'UniCall/3-1'
> >>   == Spawn extension (from-sip, 1194109570, 1) exited non-zero on
> >> 'SIP/teste-eb12'
> >>
> >> Dialing from SIP/teste to DECT Gigaset C50:
> >>
> >>  -- Executing Dial("SIP/teste-0644", "Unicall/g2/1021") in new stack
> >>     -- Called g2/1021
> >> Jun 10 02:28:05 WARNING[1788]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/38 event Dialing
> >> Jun 10 02:28:06 WARNING[1788]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/38 event Alerting
> >> Jun 10 02:28:10 WARNING[1788]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/38 event Connected
> >>     -- UniCall/38-1 answered SIP/teste-0644
> >> Jun 10 02:28:17 WARNING[1788]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/38 event Far end disconnected
> >> Jun 10 02:28:17 WARNING[1788]: chan_unicall.c:2955 handle_uc_event: CRN
> >> 32771 - far disconnected cause=Normal Clearing [16]
> >>     -- Channel 0 got hangup
> >>     -- Hungup 'UniCall/38-1'
> >>   == Spawn extension (from-sip, 1021, 1) exited non-zero on
> >> 'SIP/teste-0644'
> >>
> >> Dialing from SIP/teste to a random phone in the company (and the phone
> >> keeps ringing indefinitely):
> >>
> >>  -- Executing Dial("SIP/teste-3545", "Unicall/g2/1022") in new stack
> >>     -- Called g2/1022
> >> Jun 10 02:31:31 WARNING[1809]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/38 event Dialing
> >> Jun 10 02:31:32 WARNING[1809]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/38 event Alerting
> >> Jun 10 02:31:43 WARNING[1652]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/36 event Protocol failure
> >>     -- Unicall/36 protocol error. Cause 32773
> >>     -- Hungup 'UniCall/38-1'
> >>   == Spawn extension (from-sip, 1022, 1) exited non-zero on
> >> 'SIP/teste-3545'
> >>
> >>
> >> After I restart asterisk, for some reason it all stops to work.
> >> Dialing from SIP/teste to local phone:
> >>
> >>   -- Executing Dial("SIP/teste-7030", "Unicall/g1/94109570") in new
> >> stack
> >>     -- Called g1/94109570
> >> Jun 10 02:37:03 WARNING[1844]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/31 event Dialing
> >> Jun 10 02:37:05 WARNING[1844]: chan_unicall.c:2694 handle_uc_event:
> >> Unicall/31 event Protocol failure
> >>     -- Unicall/31 protocol error. Cause 32776
> >> Jun 10 02:37:05 WARNING[1844]: app_dial.c:713 wait_for_answer: Unable to
> >> forward voice
> >>     -- Hungup 'UniCall/31-1'
> >>   == Everyone is busy/congested at this time (1:0/0/1)
> >>
> >>
> >> Now, the last of the problems (maybe I should have broken this down into
> >> more email, shouldn't I?), the reloading chan_unicall.so!
> >>
> >>  == Parsing '/etc/asterisk/skinny.conf': Found
> >>     -- Reloading module 'chan_features.so' (Feature Proxy Channel)
> >>     -- Reloading module 'chan_zap.so' (Zapata Telephony w/PRI)
> >>   == Parsing '/etc/asterisk/zapata.conf': Found
> >> Jun 10 02:38:49 WARNING[1599]: chan_zap.c:10886 setup_zap: Ignoring
> >> switchtype
> >> Jun 10 02:38:49 WARNING[1599]: chan_zap.c:10886 setup_zap: Ignoring
> >> signalling
> >> Jun 10 02:38:49 WARNING[1599]: chan_zap.c:10886 setup_zap: Ignoring
> >> rxwink
> >>     -- Reloading module 'chan_unicall.so' (Unified call processing
> >> (UniCall))
> >>   == Parsing '/etc/asterisk/unicall.conf': Found
> >> Jun 10 02:38:49 ERROR[1599]: chan_unicall.c:3441 mkintf: Unable to open
> >> channel 1: Device or resource busy
> >> here = 0, tmp->channel = 0, channel = 1
> >> Jun 10 02:38:49 ERROR[1599]: chan_unicall.c:4213 setup_unicall: Unable
> >> to register channel '1-15'
> >> Jun 10 02:38:49 WARNING[1599]: chan_unicall.c:4533 reload: Reload of
> >> chan_unicall.so is unsuccessful!
> >>
> >>
> >>
> >> Ok, I think thats about it! Hope someone is patient enough to read all
> >> this! I am sorry for the first really long email.
> >>
> >> Once again, thank you,
> >>
> >> Mesquita
> >> _______________________________________________
> >> --Bandwidth and Colocation provided by Easynews.com --
> >>
> >> Asterisk-Users mailing list
> >> To UNSUBSCRIBE or update options visit:
> >>    http://lists.digium.com/mailman/listinfo/asterisk-users
> >>
> >
> >
>
> _______________________________________________
> --Bandwidth and Colocation provided by Easynews.com --
>
> Asterisk-Users mailing list
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-users
>


-- 
"Su nombre es GNU/Linux, no solamente Linux, mas info en http://www.gnu.org"



More information about the asterisk-users mailing list