Huawei modems with Asterisk, another frustration

There are many: chan_mobile, chan_datacard, chan_dongle. I tried them all but none of them actually “works”.  They failed in controlled lab environments, they worked for periods of time but ended crashing the module and Asterisk itself.

At the time of writing this post the frustration is eating me. I spent the weekend trying to make chan_dongle to work with an E177 modem which a friend of mine bought from Amazon two weeks ago.

Chan_dongle is an effort from a developer who decided to share his work with us, I’m not criticizing him, I’m just publishing the results of my lab test along with some of the frustration originated from it.

I’ll read the code, try to figure out what’s happening and If I succeed, I’ll publish the results here.

 

Opensource DWG2000 messaging API

In my spare time I do some consulting jobs mostly about telecom stuff and in one of these jobs I wrote a Dialer software for Asterisk which makes phone calls to users (numbers) loaded from a database. If the call is successful the program must inform the called party about what just happened by sending a SMS. Everything was OK until this feature was required.

We used a 8 ports DWG2000 GSM gateway manufactured by Dinstar which works really fine in terms of overall performance and voice quality. It also supports sending/receiving SMS’s but the API exposed works only on Windows machines and since the source code of the driver remains undisclosed, we (I’m part of a team) were unable to port it to Linux. What they do provide is a detailed protocol specification with enough documentation to implement it by myself and the result of that effort can be found in my github account.

It is still in a very early stage but I’m planning to implement the whole protocol soon but for now, it works for sending and receiving SMS’s, it suited quite well the requirements of my last consulting job.

What I’ve been doing these days

My initial goal when I started this blog was to write at least once a week about the things I did during the week but then I realize that the time I have is not enough or there’s something wrong with the way I set my schedule.

Anyway, the following is a list of the things I’ve been working on:

  1. International numbering plan.
  2. E.164 format specification.
  3. Routing/validation algorithm for E.164 numbers.
  4. Some Asterisk’s stuff.
  5. Openbravo ERP testing.
  6. Openbravo POS code modification to fit Paraguayan business rules.

Hopefully, there will be an independent post for every item on the list since writing a blog is an extraordinary way to document my work 😀