Greetings,
One of the things that I have been working with off and on is a new event API for Asterisk. Most of the current infrastructure was written almost a year ago. However, just recently, I extended this system to be able to allow device states to be shared within a cluster of Asterisk servers.
The current system for distributed events is designed for a high speed LAN. However, I also have plans to extend this to DUNDi so that it can be used withina DUNDi network, as well.
If you are interested in this work, I would appreciate any help with testing. I have documented how to set it up and how I used some custom states to verify the functionality.
To download the code:
$ svn co http://svn.digium.com/svn/asterisk/team/russell/events asterisk-events
For information on setup and testing, check out this document.
UPDATE
This functionality has been merged into Asterisk and will be available in Asterisk 1.6.1. Instead of testing this branch, please test 1.6.1.
To download the code:
$ svn co http://svn.digium.com/svn/asterisk/branches/1.6.1 asterisk-1.6.1
For information on setup and testing, check out this document.

10 responses so far ↓
1 felipe pasa // Mar 26, 2008 at 8:40 am
Great idea,
i will go test! and give some feedback
thanks
2 Asterisk 1.6, Now with Distributed Presence // Jun 10, 2008 at 9:40 am
[...] making that possible is something that I have worked on a bit here and there. I previously made a post asking for some of that code to be tested. Now, this code has been merged in to Asterisk [...]
3 Nguyen // Sep 11, 2008 at 1:52 am
hi,
I have just installed asterisk-events which i got from checkout (svn co http://svn.digium.com/svn/asterisk/team/russell/events).
But when i make asterisk error:
—–
…
[CC] res_agi.c -> res_agi.o
[LD] res_agi.o -> res_agi.so
[CC] res_ais.c -> res_ais.o
In file included from res_ais.c:47:
ais/ais.h:41: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ckpt_handle’
make[1]: *** [res_ais.o] Error 1
make[1]: Leaving directory `/usr/src/events/res’
make: *** [res] Error 2
…
—–
Could you tell me this problem, please,
Thank a lot.
Nguyen,
4 russell // Sep 11, 2008 at 6:39 am
Nguyen,
Thanks for the comment. This functionality has actually been merged into Asterisk trunk, and will be released in Asterisk 1.6.1. So, instead of testing this branch, I would test 1.6.1. Check it out here:
$ svn co http://svn.digium.com/svn/asterisk/branches/1.6.1 asterisk-1.6.1
I will update the post with this information.
Thanks!
5 Nguyen // Sep 11, 2008 at 8:48 pm
Thanks for reply, it works now,
6 Nguyen // Sep 16, 2008 at 11:06 pm
hi Russel,
I have a problem which asterisk event following:
I have configured asterisk and openais (../doc/distributed_devstate.txt).
+ In ais.conf
…
[device_state]
type=event_channel
publish_event=device_state
subscribe_event=device_state
…
then i run asterisk -vvvc => asterisk return “Segmentation fault”, both configure file of asterisk i don’t change and set to default.
I have tried with gdb, i see:
gdb /usr/sbin/asterisk
(gdb) set args -vvvv
(gdb) run
……
Parsing ‘/etc/asterisk/dundi.conf’: == Found
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1215505520 (LWP 15895)]
0x003658a8 in saEvtDispatch () from /usr/lib/openais/libSaEvt.so.2
(gdb)
Please help me,
Thanks
7 russell // Sep 16, 2008 at 11:32 pm
The issue lies in the openais code. It tries to allocate over 1 MB of memory on the stack, while Asterisk creates threads with a much smaller stack size than that. So, it blows up. I submitted a patch to fix this a long time ago:
https://lists.linux-foundation.org/pipermail/openais/2007-August/009257.html
However, none of the releases listed in the “stable” section on openais.org include this fix. So, you’ll have to run a newer version.
8 Nguyen // Sep 17, 2008 at 10:46 pm
Thanks Russell, I will check it and reply to you.
Nguyen Hung,
9 Haseeb // Dec 30, 2008 at 7:39 am
Since I saw a couple of good changes/features in Asterisk new version 1.6 here:
http://www.syednetworks.com/asterisk-1-6-features
And I upgraded to new version but I faced two different issues:
1. Since i’m using Digium telephony card TDM410 FXO, so after installation I tried to check zap status with “zap” commands on CLI but unfortunately i couldn’t get chan_zap.so module? what package provides me this?
2. My second problem is my zaptel hardwares are dropping some warnings for echo cancellation. I guess new version doesn’t support echo cancellation or what?
please someone guide me with this. Thanks
10 russell // Dec 30, 2008 at 9:03 am
Haseeb, please read the following documents:
http://svn.digium.com/svn/asterisk/branches/1.6.0/UPGRADE-1.6.txt
http://svn.digium.com/svn/asterisk/branches/1.6.0/Zaptel-to-DAHDI.txt
http://svn.digium.com/svn/dahdi/tools/trunk/UPGRADE.txt
Leave a Comment