Goodbye PHX, Hello NYC (Astricon 2008)

It’s the 27th of September, and AstriCon 2008 is over. I have to say that I really enjoyed myself. Apart from the lectures that I attended, that had opened my eyes to some new areas of Asterisk (I’ll be needing to think about those), I’ve met some people and finally managed to achieve some of my personal goals – in regards to Asterisk and the Asterisk community.

One of the people I’ve met and we’ve talked extensively is Philippe Lindheimer, from the FreePBX project. Our main topic of discussion was regarding FreePBX training for Israel, where I am located. However, as the discussion continued, we started talking about the various aspects that we both see as problematic with FreePBX. My general take on the FreePBX issue is that currently, FreePBX is the only open source, feature rich, highly versatile PBX environment for Asterisk. As Philippe commented, FreePBX was initially designed to support all the varient Open Source PBX projects running around the market, however, as Asterisk is the most predominent one, the rest of the isoteric projects were, more or less, left out.

The highlight of AstriCon for me was actually not AstriCon itself, but the DevCon that started on the 26th, right after AstriCon. I admit that I didn’t have the time to stay for the entire DevCon (although I really would have liked to) – I can say that the short time at DevCon was well spent (at least in my view). During the DevCon, the participants had split into initial thinking groups, each one in charge of analysing either a problem or future aspect of Asterisk. Essentially, there were 3 major groups, a SIP group, a framework API group and a group that had made it its business to look at all the other aspects that were not covered by the two initial groups.

The primary groups (SIP and API) were formed after a discussion about the would-be soft belly of Asterisk. Being a consultant and platform developer, the API group appealed to me and I joined that group. The initial talks among the group members was around an idea for an application/function that I had, to add an XML-RPC client application for Asterisk. My main insentive for this is the idea that in 90% of the cases that I’ve used AGI, I’ve usually performed a database call or remote web service call, returned a value to Asterisk, and continued on my way. Utilizing an XML-RPC application or function will enable me to lower the bar on the knowledge my customers require in order to interact with Asterisk. I’ve realized the potential of such a standard interface, during a project I’ve done about a year ago – a database driven dynamic IVR engine, that works of a unified dialplan, without creating any configuration changes. As I discuessed the idea with corydon76, other people shared their feelings and thoughts on the idea, and slowly patterns started emerging and other people started contributing more ideas and thoughts. As a certain point I had to leave for a couple of hours, only to come back later one, after the group had designed a completely new engine for Asterisk’s logic. Basically, the framework is not just a framework, it seperates the application logic of Asterisk from the asterisk core environment, returning much of the control and power back to the application developer. It’s a little hard for me to go about and describe the various aspects here, however, the general agreement was that for Asterisk to evolve into the next starge – these changes are a must.

One of the new ideas introduced to the framework was the ability to create namespace hooks to Asterisk. This means that asterisk will provide to the developer a set of namespaces, allowing the developer to interact – almost directly – with an internal part. For example, tying SIP codec negotiation to an externally provided business logic. As brian mentioned this specific functionality, he got a set of screams from the SIP work group – which I warned him that would happen – but hey, we’ve got to laugh too 🙂

Around 5pm the teams seperated – as most of the guys wanted to watch the presendial debate on TV, only to meet back around 8pm. Led by Kevin Fleming, we drove to a miniture gold course, not far away from the hotel. It’s the first time I ever played miniture golf – it’s alot harder than it actually looks.

For the time being, I’m well defining the XML-RPC application/function I’ve mentioned about, while corydon76 helps me in gaining the experience in writing the application/function to a workable code. While I’ve written a couple of patches for say.c and app_voicemail.c – writing a complete application from scratch is new to me – and it’s nice to have corydon76 as my tutor and guide on this one – Let’s see how it comes out in the end.

Oh, there’s also a small matter of the Digium Innovation award that i’ve won – however, that’s already old news on Google.

London’s Heathrow Terminal 5

Ok, so I’m on my way to AstriCon 2008. AstriCon this year is taking place in Glendale Arizona. If I’m flying to Arizona, why am I writing about London? well, as some of you may know, I’m a fair British Airways fan. I donno, maybe it’s the service, maybe it’s the fact that I’m an executive club member, or maybe it’s simply due to the fact that I really like London – I usually prefer travelling the US via the UK.

In any case, a few months back, British Airways had migrated its operations to the new Terminal 5, replacing the old Terminal 4. Today is the first time I’ve landed in Terminal 5, basically I’m on connection to the US. My experience up till now can be summed up with one word: BRAVA!

Terminal 5 is a shopping gallery heaven for all those of like to do their Duty Free shopping. Although Heathrow is one of the most expensive airports in the world, the overall shopping experience is amazing. The shops and wide and carry all varieties of electronics, drinks, pharmacy, the works – you name it, they have it. On the other hand, as I was strolling around the duty shops I couldn’t escape the feeling that I’m in a massive retail attack area. I was generally attacked by brands, shops, posters – it’s just like a huge shopping mall. As you can’t really go anywhere, shopping is more or less your only alternative.

Now, let’s talk lounges! The Business/First lounge of British Airways is amazing! Cold bard, warm bar, drinks and all the Internet you can use. Over 30 wide screen stations for Internet access with Free WiFi inside the lounge – what can I say, what does a business traveller require more? Unlike the previous lounges, they had created sitting areas for eating/working and sitting areas for the computers, thus, people who want to eat next to their personal computer can do so. The lounges complex is big and roomy, and can easily fit around 300 people, at least as much as I counted (per lounge). There are two lounge complexes, a north and south. Each one is separated into Business class, First Class, Card Holders and so on. So, in general, each area should be able to sustain a total of over 1500 visitors at any given time – amazing.

Passport control and flight connections improved dramatically. with over 14 differnt X-Ray machines at the flight connections, and over 20 people attending the Passport Control – getting through Terminal 5 is a breeze. I don’t think I’ve ever been able to pass from one flight to another in Terminal 5, in less than 45 minutes – it took me only 15 minutes in Terminal 5!

So, if you are flying to anywhere in the world, and you can make your connection through the UK, then do it. It may be a little more costly than other routes, however, the experience is much more enjoyable than other airports – compared.

TrixBox shows its support (or lack of it)

Well, it’s quite common to get a flame here and there on any Internet technical maling list, but the following really caught my eye. Here’s an extract from the TrixBox forum:

———————- CUT HERE ———————-

Subject: SS7 on Sangoma a101D


i have a two running trixbox server with sangoma a101D cards in them. i want to connect these two servers with each other over a SS7 link. i have installed wanpipe utilities and using T1 cross over cable. both card are showing green light and also there is no alarm in the system. now i am trying to install some ss7 library in the system. i have tried both chan_ss7 and libss7. chan_ss7 didnt work in any way.
so i am trying to use libss7.
with new asterisk 1.6 and libss7, digium says it will supports mtp2 signalling. just need to add command
signalling=mtp2. but they also said that only digium card will support this feature. can i use direct mtp2 signalling on sangoma cards or is there is any other way around???????



Why are you trying to do

Why are you trying to do this? Is your goal to terminate SS-7 trunks to an Asterisk box at some point?

Your exercise sounds academic, ISDN User Part is essentially SS-7 and besides who trunks Asterisk with PRI’s

The last guy that asked these questions was working on a University project, if this is what you are doing then do your own homework. If not please explain your application so I can make a few suggestions.


aka “Skyking”

———————- CUT HERE ———————-

Ok, putting aside the discussion of Digium vs. Sangoma (It’s a well known fact I’m a Digium fan), I think I hadn’t seen any remark on any Asterisk forum which was rude as this one. The fact that TrixBox is not something you would naturally use for SS7, the fact that it’s Asterisk based simply makes it possible. Why does the responder care “Why the user wants SS7?” – it doesn’t matter one bit, he wants to do it, he has his reasons – just give the guy an answer and help him out.

Our responder says: “… and besides who trunks Asterisk with PRI’s …” – well, I can number multiple situations when Asterisk was required to be trunked with PRI circuits. For one, security measures sometime insist that you interconnect Asterisk with PRI circuits and not over IP. For example, one of my customers, a company in the defense industry required a secured VoIP connection to a provider, without exposing it’s internal network on the physical layer – the only way to do it was to interconnect Asterisk via a PRI circuit.

“… if this is what you are doing then do your own homework …” – That’s even worse than saying RTFM. In the Asterisk world, and especially in the SS7 world, nothing is straight forward and usually, things are slightly more complex than anticipated. Saying something like: “Do your homework” is like saying, “I know how to help you, it’s complex, but I won’t tell you”.

The good old saying says: “If you don’t have anything nice to say, don’t say anything” – it applies well to mailing lists and forums.

I admit, I had been known to throw a flame or two here and there – however, it is always related to a specific issue, and is usually related to non-technical issues being published on a technical list.

Dialers – Myth or Truth?

Over the past 12 months, I’ve been heavily involved in the development of high-speed dialers. While many companies published a prolific number of automatic dialers (power, predictive, broadcast) – none of these companies ever announced there top speed dialing capability.

An so I ask myself: “What is the reason not to release these numbers publicly?” – interesting, isn’t it. So, I decided to experiment myself and see if I would release public numbers for my dialer. I’ve designed my dialer to be capable of generating upto 35 calls concurrently. My questions was this: “While the dialer is fully capable these numbers in a test scenario, will this number be reached in real life?”

So, I started experimenting with my code – doing a very simple test. I’ve installed my dialer on a Dual Quad Core system, 8GB RAM, and a RAID-1 array as the storage. Now, I’ve setup the system to generate up to 35 calls every second, allowing the server to sustain a total of 180 concurrent calls – 360 channels.

What happend was actually this: the dialer generated about 180 dials within a period of about 8 seconds, and then, simply waited till some of the calls completed in order to generate additional calls. Ok, that is understandable, however, what is the throughput of the dialer? So, I decided to do another test, I filled up my queue with a total of 50,000 records. In addition, I’ve arranged with my carrier to terminate the calls to on of their SigValue systems, to sustain the enormous number of inbounds. In addition, I asked them to perform a small measurement of the average call inits per second. I was shocked with the result!

While the dialer simply peaked upon startup, after 20 seconds of operations it started normalizing at around 6 call initiations per second. But how can that be? how can it be that a dialer capable of dialing 35 calls is slowed down to crawl? – the reason is simple, the latency imposed by the PSTN/VoIP network, the time it takes for the calls to terminate and the actual time the call is left on the air, while the dial happens. All these factors together had given me the notion that there is no practical top speed, as it is in direct relation to the demographics of the dialer operations.

Having said that, is it possible to devise a formula to calcualte this number on a per demographic basis? maybe on a per PSTN/VoIP carrier type? maybe a combination of the both? will a formula such as that will enable for the better creation of broadcast/predictive dialer? – no use dialing tons of number into a demographic that can’t handle it, while at the other side of the spectrum, what demographics will benifit from the utilization of an automated dialer?