HiWhen a call comes in, we make an system() call in the dialplan to a Perl script that looks up the Caller*ID in Sugar. If it finds an account, it sends a specially-formatted message on an internal IRC channel. Hmm, interesting. From this point of view, what's the difference between an AGI and a system call? I have very superficially fiddled with AGI enough to make my phone system send a popup message to my tv, but as you say, all I wanted to do was run a script so curious what the kind of philosophical point of an AGI is? Is the AGI effectively part of the dialplan, just written in a-n-other programming language? On our desktops, we have robots listening on the IRC channel. When they see a call that you've answered, they kick off "firefox -remote...." to open the appropriate Sugar, LedgerSMB and RT pages in tabs. Hmm, clever and interesting. How do you decide which users get the popup? This seems to be the real missing link in Asterisk+integration right now, how to figure out how to map ringing phones to alert scripts. The options seem to be: - Alert script has some simple heuristics, eg paging everyone in a group per script, call the correct script per incoming call group (eg my "flickup things on the OSD of my TV" script) - Alert scripts directly use the asterisk manager api and monitor whatever extensions they wish. Robust, but doesn't scale because not everyone should have a manager API access account (too much risk of abuse in a larger organisation) (eg ADM) - Alert scripts poll some kind of middleware which has a manager API and alerts the desktop tool (eg HUD from trixbox) Clearly that last item is the desired situation. Communication can be over IRC or whatever, but the whole ability to map desktop clients to extensions seems to be a missing chunk of functionality that you could supply (with an open protocol)... You might want to consider commercialising the integration that you have done - perhaps push some of the changes upstream to stabalise interfaces, etc..We thought about it, but there are a number of downsides: 1) We use an unusual combination of software (SugarCRM, LedgerSMB and RT.) The average business is likely to be far more Microsoft-centric.... Perhaps, but Sugar and Asterisk are a popular combination. Also I think what you have is possibly a lot of middleware that could be re-used more widely? Consider that HUD is useless for me because it has weak support for the (non microsoft) tools that I use. However, the call manager seems perfect. ADM works, but the call manager doesn't scale up. Perhaps there is a market for you to divy up the utilities, eg: - Asterisk module to read CDRs from SL/LSMB/Sugar - Call manager which maps ringing extensions to messages to end user client monitoring tools - Simple open end user tools (suspect that others will help you develop those?) 2) ... which means we'd need to do Windows client programming. I'd sooner slit my wrists. No probs. Personally I only use stuff which is multi-platform, ie works on Linux, Windows AND Mac. 3) This kind of work is heavily consulting-oriented, and I find consulting a hard way to make money. I much prefer a product-oriented business. :-) Dunno how to charge for the above... I think it would potentially sell to the sugar crowd though... Have a look at theonly existing sugar+asterisk module which does a fancy popup when the phone rings and other stuff. It's quite hard to find, but it looks fancy Also, we used standard interfaces (Asterisk's "system" call) in somewhat non-standard ways (IRC as a message-bus) so there's not much to push upstream. Don't really see that this is non-standard. Big issue is that this functionality is possible, easy, but currently not standardised. Any stick in the ground at this point is valid and will hopefully kickstart further development Bringing this back to LedgerSMB... Actually I think this is marginally related and so interesting that I hope no one minds if we stay OT for a bit longer...? I personally don't use Sugar (but have considered it). But I'm very, very keen to have a bunch of searches appear automatically in LSMB when the phone rings and my customer answers. If you have such a module for reasonable money then send me the bill. (Reasonable is probalby less than $200 in this case) Good luck Ed W |