Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Monica Tepelus

Pages: 1 ... 9 10 [11] 12 13
YateBTS / Re: Changing SIP headers on nib.js
« on: February 03, 2015, 08:47:56 AM »

You can't set this in accfile.conf Accfile contains the autentification information.

Adding a custom header to a call must be done in the routing stage: either in routeOutside() in nib.js or from another routing module that catches call.route/call.execute and adds that custom header.


You can't install same handler for different filters in the same script. You would need to install

and then from the script you would keep an additional structure that adds/removes $chan_ids that you are interested in.

Linux / Re: [ASK] YateBTS Project
« on: February 02, 2015, 09:46:08 AM »
You should start by reading" The Installing and Administration" section and some of the topics from Configuration section from:

We have installed YateBTS on Ubuntu, so I don't see an issue with that.

You set regexp to a value matching only the sims you use :)

Linux / Re: [ASK] YateBTS Project
« on: January 29, 2015, 09:50:04 AM »

The YateBTS Labkits use Mageia 4 but other distributions should also be ok. Also, DON'T use it in a virtual machine.
A normal computer should be ok. Yate doesn't use many resources and when it needs more memory/processing power it's because it's under heavy load.

As a starting point for your project see the NIB application. Users can send SMSs between then and user can also have SMS s conversion with elizachat bot.

Hi Jamie,

Yes, the logic is different and more complex when trying to implement ivrs in a global script.
In Yate you can't have an unpaired channel for very long. So I suggest you route your call to a dumbchannel ( You then send and receive messages on behalf on that dumbchan from your global script. In general when sending messages on behalf of someone else you use chan.masquerade (

Internally you will have the same flow of messages but you will interact differently with them. We don't have php examples with dumbchannel but you can follow the YAYPM ones where dumbchan is used (

Good luck :)

YateBTS / Re: Changing SIP headers on nib.js
« on: January 20, 2015, 05:23:43 AM »

You will need to modify the code a little in function routeOutside. You can change the caller directly from there.
Other headers can be set with:

msg["osip_"+headername] = headervalue;

Yate users hangout place / Re: Problems with call.answered
« on: January 20, 2015, 04:32:09 AM »

Since you didn't paste the full code I can't be sure you called things in the correct order.  The first thing I note is that you don't need to install 'call.answered' since you are sending it from the script.

Also, there is a basic example in share/scripts/playrec.php in yate's sources that starts exactly as you need so check it out.

Yate users hangout place / Re: Play the file after the call
« on: January 07, 2015, 03:59:21 AM »
I need a complete log to see what is happening. You might have sent this too late or for the wrong channel id. Post a longer sniffer log. One that contains both chan.disconnected messages.

Yate users hangout place / Re: External Scripts support - Windows
« on: January 05, 2015, 05:52:27 AM »
Yes, you can have a global script that is started as a service and handles messages on behalf of multiple channels. You can use dumbchannels to have the leg connected to a channel and send messages on behalf of the dumbchannel from your script.

Yate users hangout place / Re: Play the file after the call
« on: January 05, 2015, 05:48:10 AM »

Try doing this from a php/javascript global script or from a javascript routing script. You have better control over your parameters.

In a global script catch chan.disconnected and send a call.execute inside chan.masquerade on behalf of the chan A

An example in php:
$m = new Yate("chan.masquerade");
$m->params["message"] = "call.execute";
$m->params["id"] = "id_chan_A";
$m->params["callto"] = "wave/play//home/test/test.g729";

Yate users hangout place / Re: External Scripts support - Windows
« on: December 19, 2014, 03:45:21 AM »

You can run yate scripts on windows but they must be started differently, since Yate won't be allowed to start them.

The password for the extensions can only be numeric because they are authenticated when listening to their voicemail from the voicemail.php script.


Yes, starting with 4.3 forward noanswer won't work. We might fix this in the future but we didn't get to it.
You can continue using FreeSentral with an older version of yate without any issues, unless you really need something that was added later on.

Yate users hangout place / Re: hangup event?
« on: December 02, 2014, 09:55:33 AM »

Let's say you use javascript global script,

To start custom script you have to set in javascript.conf in section scripts:


Then in cdrfin.js (located in share/scripts if you run from sources or /usr/local/share/yate/scripts if you run 'make install').

function onCdrFinalize(msg)
     if (msg.operation!='finalize')
          return false;

     // your logic here

Message.install(onCdrFinalize, "call.cdr", 50);

This is an example how to run a query in javascript.

Also check out the other Javascript documentation:

Pages: 1 ... 9 10 [11] 12 13