[Vtigercrm-developers] A new approach to telephony integration
Alan Bell
alan.bell at libertus.co.uk
Fri Sep 27 08:01:45 UTC 2013
Hi all,
We have been using the vtiger click to call integration for a few
customers and I have customers wanting inbound screen pop to bring up
contact details based on callerID information. The current setup is
rather dependent on an asterisk server with an available API or AMI
interface and I want to do something for the situation where there is a
hosted SIP provider where we have no access to it at all, and fairly
dumb SIP handsets.
I have been investigating OpenSIPs, which is a SIP proxy, it just
handles signalling, not the voice calls themselves, so it is does not
require a lot of bandwidth or CPU. I have this set up so that it works
as a pure proxy, the handsets talk to it as if it was the upstream PBX,
it sends all their signalling upstream, all the return signals are
passed back to the handset. This basically means it sits in the middle
between handsets and exchange and it can see all the calls being
initiated. It can't see the VOIP traffic itself, that goes point to
point. It can fire events when a call happens, which can include XMLRPC
calls, so it can poke the vtiger server with a from address and the
dialled number. Having got that into the vtiger server we can log the
call and we could use a websockets connection to the end user browser to
cause an immediate popup with the contact details on incomming calls. We
can also do click-to-call in a similar SIP friendly way, by using the
PHP-SIP library to send an INVITE to the user extension, then a REFER to
make the extension dial the outbound number, then a BYE to hand off the
call.
Basically this means we can do inbound and outbound call handling with
zero dependence on support from the SIP exchange - and it doesn't have
to be asterisk or open source, any proprietary SIP platform will do. The
handsets that want to integrate with vtiger get reconfigured to point at
the vtiger server rather than directly at their exchange, other handsets
are not affected. This means in a big organisation we don't need to
negotiate for direct admin level access to the exchange, we just
reconfigure a few handsets in the sales and marketing department.
I have most of the bits in place to prove I can do this, but there is a
bit of a bug in openSIPs https://github.com/OpenSIPS/opensips/issues/87
which means it doesn't send valid XMLRPC at the moment, plus I have all
the vtiger integration and websockets work left to do.
If anyone has any feedback on this approach, or wants to collaborate on
it then do get in touch.
Alan Bell
The openSIPs website: http://opensips.org/
How the click to call bit works
http://level7systems.co.uk/en/blog/Click+to+Call+with+PHP-SIP
--
Libertus Solutions
http://libertus.co.uk
More information about the vtigercrm-developers
mailing list