Summary:ASTERISK-10390: When originating a call from a meetme room, the ringback is not heard in the meetme room
Reporter:bgonciulea (bgonciulea)Labels:
Date Opened:2007-09-26 09:31:53Date Closed:2011-06-07 14:07:55
Versions:Frequency of

conf => 600


exten => 100,1,Answer
exten => 100,n,MeetMe(600,1q)
exten => 100,n,Hangup

exten => 101,1,Dial(SIP/phone1)
exten => 101,n,Hangup

exten => 102,1,Dial(ZAP/1)
exten => 102,n,Hangup

I have a TDM400P with 4 FXOs and also some SIP users (phone1, phone2) all bounded to the "default" context.

If I dial 100 using any of the phones I enter the meetme room. While in the meetme room I give Asterisk the following command using the Asterisk manager:

Action: Originate
Channel: Local/100@default
Context: default
Exten: 101 (or 102)
Priority: 1

At this moment the other party's phone starts ringing, but the users in the meetme room can not hear the ringback. If the call is answered, only then the first user from the meetme room can hear the called party.

I have tried all sorts of combinations using "r" parameter in Dial, or using Answer and Ringing applications, but I couldn't hear the ringback in the meetme room while initiating a call as described above.

Comments:By: Dmitry Andrianov (dimas) 2007-09-26 10:57:12

what makes you think you should hear ringback at all? try it with two normal extnsions and you will find that asterisk does not start calling the second phone until first is answered.

By: bgonciulea (bgonciulea) 2007-09-26 11:12:42

Your example is right.

If you think about my scenario, the manager command

Action: Originate
Channel: Local/100@default
Context: default
Exten: 101 (or 102)
Priority: 1

instructs asterisk to call "Channel" and only after it answers call the Context|Exten|Priority. In my case, calling "Channel" means entering the meetme room, which is executed successfully very quickly (which is equivalent to a channel answer). After this, asterisk calls Context|Exten|Priority. I expected that the members in the meetme room could hear the ringback of the in progress call.

By: Dmitry Andrianov (dimas) 2007-09-26 12:41:47

Ahh. I overlooked you calling MeetMe first and only when it "answers" you start calling SIP phone...
The only way I found to pass "r" option to Dial application was:

Channel: Local/100@default
Application: Dial
Data: Local/101@default||r
Priority: 1

but it does not work. According to "core show application dial", the "r" parameter used to "Indicate ringing to the calling party. Pass no audio to the calling  party until the called channel has answered." which from my understanding means that Dial just uses some API to notify callin party ringing is in progress. It does NOT emulate ringing tone.
When you doing same with two SIP phones you onle hear ringing because your SIP phone generates ringging tone when asterisk indicates that current status is "ringing".

By: Dmitry Andrianov (dimas) 2007-09-26 13:12:02

Following dialplan

       101 => {

will do what you want...

By: bgonciulea (bgonciulea) 2007-09-27 02:48:44

Thanks, your suggestion is working!

Anyway I don't understand why the 'r' is needed for Dial, when we already have PlayTones(). I have tried without 'r' and it is not working.

Also I don't understand why it doesn't work with Ringing instead of PlayTones.

By: Dmitry Andrianov (dimas) 2007-09-27 03:02:00

Well, as I understand, Ringing() just __indicates__ ringing. That is sends some special frame which says "this call is in ringing state" or something. It is what called "signaling". It does NOT produce ringing sound - producing audible signals is the business of caller's SIP client. When SIP phone receives signaling saying callee is ringing, it start making this sound for you.
Since in your case the "caller" is MeetMe conference room, not the phone, it does not do that.
In constrast, PlayTones really generates the sound so it is sent to the "caller" and MeetMe "hears" it.

By: Jason Parker (jparker) 2007-10-02 13:07:12

As I understand it, this is working as expected.

Please reopen if that is not the case.

By: Jason Parker (jparker) 2007-10-02 13:08:27

I suppose I should note for the record that dimas is correct.  Ringing is indicated (and not played) to the calling channel.  Since meetme does not know/care about ringing, it does not get played.