Gamaliel Bedolla | 30 Mar 17:43 2015

Question regarding Yate CIC capacity

Hello all,
Actually We have a Yate working with 4 Cisco AS5400 handling 300 CICs. We have now to connect near 1800 CICs more. Is there any limit that can be considered using Yate for this?
YATE 4.3.0-1 on a Dell Poweredge 1950III with 32Gb RAM, HD 128 Gb
With Intel Xeon Quad-core 2.50 GHz
Thanks in advance.
Максим Телегин | 26 Mar 13:36 2015

Alsa channel

Hi, all! I try to use alsa channel in server-mode Yate. To test it, I use telnet commands: 'call alsa/default tone/dial' followed by 'drop alsa/default' command. It works ok, I hear dialtone and then see closed channel. But subsequent call does'nt work. Code analysis of alsachan.cpp showed that AlsaDevice is not closed when chan dropped, so new channel can't be created. Should I never drop Alsa channel to use it multiple times? Logs:
Rodrigo Ricardo Passos | 25 Mar 03:59 2015


Hi Yate,

How can i find g729 support for Yate  5.4.2-1? Exist some patch for 
Intel IPP or any other solution? Could be paid. I've  interesting .



Thufir | 21 Mar 05:04 2015



I've only been looking at vicidial for a small call center, was totally unaware of yate.  I've been looking at the web page, it looks interesting.  I particularly like that I can install it from apt.  Before I go down the rabbit hole with yate, what are its outbound dialer capabilities?

I see:

where someone's asked a similar question.

I see that that the yate client is well done, connects with google voice right off the bat.  I expect it would work fine for SIP, we'll be using SIP "trunking".  Yate doesn't seem to be Asterisk based -- it's a from-the-ground-up telephone engine?


Kulkov Ivan | 18 Mar 11:21 2015

goto directive and SIG module


Why does the 'goto' directive not work in the following case?

File: regexroute.conf


${module}^sig$ = goto as5350

;For Yate Sip Clients
^4[1-6]\(..\)$=goto over-node1 <-- work well

.*=; sig.ForwardCallIndicators = national,isdn-orig,isup-path;
.*=; sig.callerscreening = user-provided-passed;
.*=; sig.TransmissionMediumRequirement = 3.1khz-audio; sig.inn = 0; 
caller = ${caller}
.*=; sig.CallingPartyCategory = 229;
^4[1-6]\(..\)$=sig/${called}; trunk = isup0

;For External Clients over AS5350

${module}^sig$=and ^4[1-6]\(..\)=goto over-node1 <-- does not work

There is an example where it works:
${module}^sig$=and ^4[1-6]\(..\)=sip/sip:${called} <at> 192.168.x.x;

[13:07]  2life™ HD:

By the way, why does the simple construction not works in the foolowing 
context (as5350):
^4[1-6]\(..\)$=sip/sip:${called} <at> 192.168.x.x;


Best Regards, Ivan Kulkov
Senior System Administrator
OJSC "Start Telecom", Nizhny Novgorod
tel: +7 831 4371102 ext. 4343

Rodrigo Ricardo Passos | 23 Apr 14:36 2014

Get number in SAM

Hi Yate,

How can i get the digit in SAM message after receive an IAM using 



Dana cafe | 2 May 14:50 2014

queue.conf operators configuration

good afternoon,

I am trying to put calls in a queue and redistribute to operators 
(without using a database) but I don't know how to define these operators.

For testing i defined two users in regfile.conf:



Then in regexroute.conf I defined:


Finally test1 is defined  in the queue.conf file :


[queue test1]
mintime = 100
length= 100
onhold=wave/play/ test.wav
;definition of the operator
${queue} = test1
${required} = 1
${current} = 1
;  ${waiting}
  maxcall = 3000
;  prompt: string: Resource to play to the operator when it answers

using yate client logged as 1000 I call to 100 and the music on hold 
start but the call is not distributed to the user 2000 which is logged 
in another yate client. For sure the configuration of the operator is 
wrong, unfortunatelly I didn't find a useful example in the website and 
in internet.

thank you very much for your valuable help,


Moritz Orbach | 18 Mar 19:47 2014

Authentication-check in javascript

Hello all,

is there a javascript equivalent to regexroute's

Or more precisely: how can I (on call.route, in javascript)
1) verify that a client is registered in regfile.conf (allowed to make a
   certain call)
2) retrieve the true extension of the client (not based on any headers
   the client can set itself, but based on the registration)

I tried "msg.username", msg.params['username'] and similar properties of
the Message object in the call.route handler, but none of them seemed to

Best regards

Paul Chitescu | 18 Mar 14:06 2014

Yate 5.2 and YateBTS 2.0

Hello everybody!

We released Yate version 5.2 and also version 2.0 of YateBTS.

Yate 5.2 brings:
- Our friendly chatbot Eliza answers you by default to anything you write in 
rmanager that's not an Yate command :-)
- Improvements in Javascript that make writing an IVR much easier
- Better troubleshooting of memory leaks by having memory information from 
glibc and the ability to count objects allocated by each module

YateBTS 2.0 added:
- Support for 2G (COMP128-1) and 3G (MILENAGE) authentication
- Web interface for the Network In a Box
- USSD support (in commercial version only)
- COMP128-2 and COMP128-3 (in commercial version, only for GSMA members)

Paul Chitescu & Null Team

Marco Bisignano | 1 Apr 13:00 2014

R: R: R: [yate] Avoid multiple INVITE and BYE

Hi Marian and thank you for your suggestion. I'm writing a C++ module, but
how can I wait for call.drop to return ?

-----Messaggio originale-----
Da: Marian Podgoreanu [mailto:marian@...] 
Inviato: mercoledì 26 febbraio 2014 15:01
A: Marco Bisignano; yate@...
Oggetto: Re: R: R: [yate] Avoid multiple INVITE and BYE


In a php script you can't wait in a message handler for another message.
You may sleep for a second after sending the call.drop message.
This will give some time for the call to be dropped but it will delay things
(e.g. any other message to be handled by the script will be delayed).
This would not be acceptable on high load systems.

You may write a javascript or c++ module which:
1. Handle call.execute
2. Dispatch a call.drop for the outgoing call leg you want to stop 3. Let
call.execute continue when call.drop returns


On 26.02.2014 15:18, Marco Bisignano wrote:
> Thank you Marian, I understand; is there a way in my script to wait 
> that the first call is pre-empted and closed before sending the new INVITE
> -----Messaggio originale-----
> Da: Marian Podgoreanu [mailto:marian@...]
> Inviato: mercoledì 26 febbraio 2014 10:58
> A: Marco Bisignano; yate@...
> Oggetto: Re: R: [yate] Avoid multiple INVITE and BYE
> Hi,
> For the first call BYE is retransmitted to called party because it 
> doesn't confirm it. It does on the third retransmission.
> For the second call the INVITE is retransmitted due to the same reason.
> This may be a network issue or called party issue.
> The log also shows yate creating new dispatching threads and extmodule 
> warning a message sent to a script did not return in 10 seconds.
> Check your script(s): the message must be acknowledged after handling it.
> Example:
> $ev = Yate::GetEvent();
> if ($ev->type == "incoming")
>       $ev->Acknowledge();
> Marian
> On 26.02.2014 11:03, Marco Bisignano wrote:
>> Hi Marian and ty for your reply, here is my log with sniffer enabled:
>> FIRST CALL from 3212121 ( to 9413403212121 (messages are
>> ok)
>> SECOND CALL from 3212122 ( to 9413403212122 (multiple bye 
>> and
>> invite)
>> There is a PHP script called cac.php (Call Admission Control), second 
>> call has a major priority so first call is pre-empted (call.drop to 
>> both call channels).
>> If you want I can send you Wireshark capture.
>> Regards.
>> -----Messaggio originale-----
>> Da: Marian Podgoreanu [mailto:marian@...]
>> Inviato: mercoledì 26 febbraio 2014 09:37
>> A: Marco Bisignano; yate@...
>> Oggetto: Re: [yate] Avoid multiple INVITE and BYE
>> Hi,
>> Yate don't send multiple INVITE unless it's a retransmission.
>> If you think it does, please post a log to show it.
>> Marian
>> On 26.02.2014 10:25, Marco Bisignano wrote:
>>> Hi all, someone know if there is a way to avoid Yate sending 
>>> multiple INVITE or BYE messages all equals in the same call ?
>> --
>> Il messaggio e' stato analizzato alla ricerca di virus o contenuti 
>> pericolosi da MailScanner, ed e' risultato sicuro
> --
> Il messaggio e' stato analizzato alla ricerca di virus o contenuti 
> pericolosi da MailScanner, ed e' risultato sicuro

Il messaggio e' stato analizzato alla ricerca di virus o contenuti
pericolosi da MailScanner, ed e' risultato sicuro