[asterisk-r2] clear_back_persistence_check equivalent

Moises Silva moises.silva at gmail.com
Tue Apr 7 12:24:28 CDT 2009


Can you help me to test if removing Set(mfcr2_double_answer=yes) and
setting mfcr2_double_answer=yes in chan_dahdi.conf works ?

On Tue, Apr 7, 2009 at 1:18 PM, Paulo Angonese <angonese at gmail.com> wrote:
> Make OK !!
> The problem persists with make menuselect x ncurses, but I don´t need to
> remove chan_oss.
>
> Then trying Set(mfcr2_double_answer=yes) again...
>
> It's working well!!!!
>
> Thanks and congratulations for your mcfr2 work.
>
> I´ll keep the server running this beta. I need this...
>
> Paulo Angonese
>
>
> Moises Silva escreveu:
>
> Try make clean and svn update. I have CentOS 5 as my development box
> and don't have that problem
>
> sangoma mfcr2-1.4 $ rpm -qa | grep ncurses
> ncurses-5.5-24.20060715
> ncurses-devel-5.5-24.20060715
>
> On Tue, Apr 7, 2009 at 12:01 PM, Paulo Angonese <angonese at gmail.com> wrote:
>
>
> Sorry, I'm using  asterisk-1.4.23.1 and applied
> openr2-asterisk-1.4.23.patch.
>
> The reason:
>  I run configure and then make. The following error occurs:
>
> chan_oss.c:80:23: error: busy_tone.h: No such file or directory
> chan_oss.c:81:23: error: ring_tone.h: No such file or directory
> chan_oss.c:304: error: âringtoneâ undeclared here (not in a function)
> chan_oss.c:305: error: âbusyâ undeclared here (not in a function)
> make[1]: *** [chan_oss.o] Error 1
> make[1]: Leaving directory `/usr/src/mfcr2-1.4/channels'
> make: *** [channels] Error 2
>
> Then I try to run "make menuselect" to remove OSS (I don´t need OSS).
> And another error.
> ...
> **************************************************
> *** Install ncurses to use the menu interface! ***
> **************************************************
> menuselect changes NOT saved!
>
> But ncurses is installed:
>
> mfcr2-1.4]# rpm -qa ncurses
> ncurses-5.5-24.20060715
>
> It was happening when I installed the openr2 1.1 too. Then I choose install
> asterisk and the patch.
>
> This is the last version of ncurses available in rpm.pbone.net for Centos 5.
>
> Paulo Angonese
>
>
> Moises Silva escreveu:
>
> Hello Paulo,
>
> The first thing to get is the R2 call files (mfcr2_call_files=yes and
> mfcr2_logdir=whatever). Also make sure you are using the mfcr2-1.4
> branch, I don't remember if "core show version" should say so.
>
> Moy
>
> On Tue, Apr 7, 2009 at 10:44 AM, Paulo Angonese <angonese at gmail.com> wrote:
>
>
>    Bad news. It didn´t work, unfortunatelly.
>
>    I set the mfcr2_double_answer to yes, just before the dial, and made a
> collect call. The asterisk didn't do the double answer.
>    And  mfcr2_double_answer=yes in chan_dahdi.conf  is not working any more.
> Even not using the Set in extensions.conf . In openr2 1.1 it was ok.
>
>    I tried Set(mfcr2_double_answer=yes) and Set(MFCR2_DOUBLE_ANSWER=yes) as
> well . Same problem.
>
>    System information, extensions.conf, log etc follow. Do you want any
> other information?
>
>    Paulo Angonese
>
> *CLI> mfcr2 show version
> OpenR2 version: 1.2.0, revision: 189
>
> *CLI> show version
> Asterisk 1.4.23.1 built by root @ gv07.vpcacad on a i686 running Linux on
> 2009-04-03 18:30:47 UTC
>
> # dahdi_cfg -vvvv
> DAHDI Tools Version - 2.1.0.2
>
> DAHDI Version: 2.1.0.4
> Echo Canceller(s): MG2
>
> # cat /proc/version
> Linux version 2.6.18-92.1.18.el5 (mockbuild at builder16.centos.org) (gcc
> version 4.1.2 20071124 (Red Hat 4.1.2-42)) #1 SMP Wed Nov 12 09:30:27 EST
> 2008
>
> ]# cat /etc/*release
> CentOS release 5.3 (Final)
>
>
>    extensions.conf:
> exten => _3[0-4]X,1,Set(mfcr2_double_answer=yes)
> exten => _3[0-4]X,n,Dial(${TRUNKMD}/${EXTEN},120,r)
>
> chan_dahdi.conf:
> [channels]
> signalling=mfcr2
> mfcr2_variant=br
> mfcr2_get_ani_first=no
> mfcr2_max_ani=3
> mfcr2_max_dnis=20
> mfcr2_logdir=span1
> mfcr2_call_files=yes
> mfcr2_logging=all
> mfcr2_metering_pulse_timeout=2500
> mfcr2_double_answer=yes
>
> group = 1
> usecallerid=yes
> hidecallerid=no
> callwaitingcallerid=no
> threewaycalling=no
> transfer=no
> cancallforward=no
> callreturn=no
> echocancel=yes
> echocancelwhenbridged=yes
> echotraining=yes
> immediate=no
> context = demd110
> channel => 1-15
> channel => 17-31
> mfcr2_double_answer=yes
> context = deredepublica
> mfcr2_max_ani=20
> mfcr2_max_dnis=3
> mfcr2_logdir=span2
> group = 2
> channel => 32-46
> channel => 48-62
>
>
>     log:
> Apr  7 09:56:09] VERBOSE[3326] logger.c:     -- Executing
> [303 at deredepublica:2] Set("DAHDI/44-1", "mfcr2_double_answer=yes") in new
> stack
> [Apr  7 09:56:09] VERBOSE[3326] logger.c:     -- Executing
> [303 at deredepublica:3] Dial("DAHDI/44-1", "Dahdi/g1/303|120|r") in new stack
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: no MFC/R2 category specified for
> chan DAHDI/2-1, using default National Subscriber
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - Attempting to make call
> (ANI=5184083465, DNIS=303, category=National Subscriber)
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - Call started at Tue
> Apr  7 09:56:09 2009 on chan 2
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - CAS Tx >> [SEIZE] 0x00
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - CAS Raw Tx >> 0x01
> [Apr  7 09:56:09] VERBOSE[3326] logger.c:     -- Called g1/303
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: bits changed in chan 2
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - Bits changed from 0x08
> to 0x0C
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - CAS Rx << [SEIZE ACK]
> 0x0C
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - Sending DNIS digit 3
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Tx >> 3 [ON]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Rx << 1 [ON]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Tx >> 3 [OFF]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Rx << 1 [OFF]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - Sending DNIS digit 0
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Tx >> 0 [ON]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - Group A DNIS request
> handled
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Rx << 1 [ON]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Tx >> 0 [OFF]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Rx << 1 [OFF]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - Sending DNIS digit 3
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Tx >> 3 [ON]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - Group A DNIS request
> handled
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Rx << 3 [ON]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Tx >> 3 [OFF]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Rx << 3 [OFF]
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - Sending category
> National Subscriber
> [Apr  7 09:56:09] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Tx >> 1 [ON]
> [Apr  7 09:56:10] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Rx << 1 [ON]
> [Apr  7 09:56:10] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Tx >> 1 [OFF]
> [Apr  7 09:56:10] DEBUG[3326] chan_dahdi.c: Chan 2 - MF Rx << 1 [OFF]
> [Apr  7 09:56:10] NOTICE[3326] chan_dahdi.c: MFC/R2 call has been accepted
> on chan 2
> [Apr  7 09:56:10] NOTICE[3326] chan_dahdi.c: Call accepted on forward
> channel 2
> [Apr  7 09:56:10] VERBOSE[3326] logger.c:     -- DAHDI/2-1 is ringing
> [Apr  7 09:56:11] DEBUG[3120] chan_dahdi.c: Chan 13 - DNIS so far: 3203175,
> expected length: 10
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: bits changed in chan 2
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Chan 2 - Bits changed from 0x0C
> to 0x04
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Chan 2 - CAS Rx << [ANSWER] 0x04
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: MFC/R2 call has been answered on
> chan 2
> [Apr  7 09:56:15] VERBOSE[3326] logger.c:     -- DAHDI/2-1 answered
> DAHDI/44-1
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Accepting MFC/R2 call on chan 44
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Chan 44 - CAS Tx >> [ANSWER]
> 0x04
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Chan 44 - CAS Raw Tx >> 0x05
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: master: 44, slave: 2, nothingok:
> 0
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Stopping tones on 44/0 talking
> to 2/0
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Stopping tones on 2/0 talking to
> 44/0
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Making 2 slave to master 44 at 0
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Added 10 to conference 9/44
> [Apr  7 09:56:15] DEBUG[3326] chan_dahdi.c: Added 51 to conference 9/2
> [Apr  7 09:56:15] VERBOSE[3326] logger.c:     -- Native bridging DAHDI/44-1
> and DAHDI/2-1
> [Apr  7 09:56:17] DEBUG[3326] chan_dahdi.c: bits changed in chan 2
>
>
>
>
>
> Moises Silva escreveu:
>
> Like any other variable there is no original value until you set it. I
> agree however it could be handy to set that variable when the channel
> is created to have the value configured in chan_dahdi.conf, I may add
> that someday if I don't forget it.
>
> Moy
>
> On Fri, Apr 3, 2009 at 2:22 PM, Paulo Angonese <angonese at gmail.com> wrote:
>
>
> Moises, the server is ready, and the extensions.conf prepared.
> But, just to avoid "losing the travel" (because the PABX is far), I´ve put
> some NoOp's to display the content of  MFCR2_DOUBLE_ANSWER variable and made
> a test.  But not connected to the E1/R2 trunk yet.
> Before SET the value is null (no value) and after  the value is "no".  The
> behaviour is like any other variable I've invented.
> Is that correct?  The original value shouldn't be "yes"?
>
> CLI> mfcr2 show version
> OpenR2 version: 1.2.0, revision: 189
>
> extensions.conf
> exten => _30[8-9],1,NoOp,xx${MFCR2_DOUBLE_ANSWER}
> exten => _30[8-9],n,Set(MFCR2_DOUBLE_ANSWER=no)
> exten => _30[8-9],n,NoOp,xx${MFCR2_DOUBLE_ANSWER}
> exten => _30[8-9],n,Dial(Dahdi/g1/${EXTEN},40)
>
> The output from console:
>     -- Executing [308 at dddcelular:1] NoOp("SIP/9349-b7600468", "") in new
> stack
>     -- Executing [308 at dddcelular:2] Set("SIP/9349-b7600468",
> "MFCR2_DOUBLE_ANSWER=no") in new stack
>     -- Executing [308 at dddcelular:3] NoOp("SIP/9349-b7600468", "no") in new
> stack
>     -- Executing [308 at dddcelular:4] Dial("SIP/9349-b7600468",
> "Dahdi/g1/308|40") in  new stack
>
> Paulo Angonese
>
>
>
>
>
>
>
> Moises Silva escreveu:
>
> Forget about your idea of Answer(), Hangup(), Answer(), that will
> never work under any situation.
>
> Just call Set(MFCR2_DOUBLE_ANSWER=yes) in the calls where you want to
> use double answer (Based on DNIS, CallerID or whatever you want)
> before doing Dial() or before Answer() if you want to answer
> immediately before Dialing, for all other calls
> Set(MFCR2_DOUBLE_ANSWER=no) or just don't set it. If you don't set
> that variable the default from chan_dahdi.conf will be used.
>
> Moy
>
> On Thu, Apr 2, 2009 at 4:07 PM, Paulo Angonese <angonese at gmail.com> wrote:
>
>
> Let me confirm:
>
> - change the MFCR2_DOUBLE_ANSWER to YES;
> - include in the extensions.conf, just before the DIAL, Answer(),
> Hangup(), Answer ();
> Is this ok?
> The MFCR2_DOUBLE_ANSWER=YES will only work only in this situation, not
> in global form?
>
> Paulo Angonese
>
>
> Moises Silva escreveu:
>
>
> The functionality you require is only in
> http://svn.digium.com/svn/asterisk/team/moy/mfcr2-1.4 and the beta
> release of Asterisk 1.6.2.
>
> You just set the variable MFCR2_DOUBLE_ANSWER before calling Answer()
>
> This also requires openr2 from the release-1 branch
> (http://openr2.googlecode.com/svn/branches/release-1) that is the
> branch that will become openr2 1.2.0 anytime soon. However, be aware I
> added some changes a few days ago for DTMF/R2 support and I have not
> really tested it well, I may have introduced some bug here or there
> :-)
>
> Moy
>
> On Thu, Apr 2, 2009 at 3:19 PM, Paulo Angonese <angonese at gmail.com> wrote:
>
>
>
>     Ok. It´s working.  Using  mfcr2_metering_pulse_timeout=2000 in openr2
> and clear_back_persistence_check=2000 in unicall as well.
>
>     But... (always has a but...)
>
>     There are some extensions in PABX which the colletc calls are permited.
> In these cases it doesn´t do the double answer.
> And,... the variable MFCR2_CATEGORY is always the same:
> national_subscriber... the TelCo is not changing its value.
> I´m trying to talk to TelCo to change, but I don´t believe. And, sincerely,
> the ideal is to implement the solution without talking with TelCo and PABX
> maintanaince.
> The transparent form is the ideal.
>
>    One solution could be do the bouble answer in Asterisk, based in the
> destination extension. I tried answer - hangup - answer and dial the
> extension. But just after the hangup Asterisk ends the call.  Flash() only
> in FXO lines. Is there any other technique to simulate the double answer in
> Asterisk?
>
>    A sugestion: simply bypass the ANSWER - CLEAR BACK - ANSWER from E1 PABX
> to  E1 TelCo.  Transparently, if it occurs between the
> mfcr2_metering_pulse_timeout  time.   At this manner the colletc call policy
> could be stayed at the PABX (totally transparent!).
>
>   It´s another problem. Time to change the title?
>
>   Paulo Angonese
>
>
> Moises Silva escreveu:
>
> Just add this:
>
> mfcr2_metering_pulse_timeout=2000
>
> Moy
>
> On Wed, Apr 1, 2009 at 2:05 PM, Paulo Angonese <angonese at gmail.com> wrote:
>
>
>    Hi. I´m new in this list.
>
>    I'm trying to put an Asterisk betwen an Ericsson MD110 and the TelCo
> (Brasil Telecom).
>    The problem is collect calls blocked by the MD110. It uses the double
> answer technique. When Asterisk, using OpenR2, receives the CLEAR BACK ,
> call drops immediatly. One solution is to program the MD110 allowing the
> collect calls, and use the use the mfcr2_allow_collect_calls=no or
> mfcr2_double_answer=yes in Asterisk, I know. But I can´t (and I don´t want)
> ask to MD110 maintaince to do this.
>    The solution using Unicall is to change
> mfcr2->clear_back_persistence_check in mfcr2.c  to  a value like 2000 (two
> seconds in my case).
>    How can I do this using OpenR2?
>
>    Thanks
>
>    Paulo Angonese
>
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> asterisk-r2 mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-r2
>
>
>
>
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> asterisk-r2 mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-r2
>
>
>
>
>
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> asterisk-r2 mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-r2
>
>
>
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> asterisk-r2 mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-r2
>
>
>
>
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> asterisk-r2 mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-r2
>
>
>
>
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> asterisk-r2 mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-r2
>
>
>
>
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> asterisk-r2 mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-r2
>



-- 
"I do not agree with what you have to say, but I’ll defend to the
death your right to say it." Voltaire



More information about the asterisk-r2 mailing list