[Vtigercrm-developers] Asterisk Good News
vtiger at camden.net
vtiger at camden.net
Wed Aug 27 16:12:12 GMT 2014
yes the overhead for AMI listen can be issue
normally dealt with by giving the AMI user Origination and Read Call only
rights, that cuts down on 99% of what you need to parse
in larger deployments where even the overhead of incoming calls to other
extensions is burdensome, AMI proxy where each user has a proxy user that
only listens to AMI data relevant to there own channel(s)
I would think you would only pull SQL data when user in vtiger clicks on
PBXmanager (the user version where they can see the call logs, not the one
for admin to change settings), and display the data rather than pulling it
all the time and creating your own tables, if remote access to SQL is the
concern its easy to write a php XML API, thats how our windows based call
notification works for vtiger so we did not have to open SQL to outside
world, when call comes in we take incomming phone number send it to our
API, the API does all the SQL queries, then returns XML of the results, we
did this with php, all that would be required is for you guys to say hey
put this php file on your asterisk server and modify the database name,
user and secret to match
----------------------------------------
From: "Akshath T.A" <akshath.t at vtiger.com>
Sent: Wednesday, August 27, 2014 11:09 AM
To: vtiger at camden.net
Cc: vtigercrm-developers at lists.vtigercrm.com
Subject: Re: [Vtigercrm-developers] Asterisk Good News
VtigerAsteriskApp does not modify any configuration of Asterisk directly.
We have recommended changes to be made in Asterisk configuration to get the
AGI request back to the App. Please make sure to track the changes in case
you need to revert back. AGI vs AMI AGI events are listened for incoming
calls as AMI event parsing had to deal with bit-of overhead (as we did in
5.4.0 Asterisk Integration). To origniate outgoing call AMI action is used
(borrowed from our earlier implementation). Working with AGI events is
lot-easier than processing AMI ourselves. The hard-work is taken care by
the asteriskjava library.
Polling Asterisk DB from CRM server was not a model considered as both the
applications can be setup on different machines. Also php script used for
regular polling in short-intervals (specially during active call handling)
demands server resources and impatcts CRM performance - we had encountered
this in our earlier implementation.
The approach of implementation we have taken may not be the only way to
get the integration. We are hopeful to see more such coming from community
and take away the learning from the same.
regards,
AKshath
On Wed, Aug 27, 2014 at 7:39 PM, vtiger at camden.net <vtiger at camden.net>
wrote: yes I am aware of what it was saying... but 101 was most certainly
a valid extension, at the same time this was going on we could send our own
origination command to AMI for 101 to call out and it worked just fine,
that error is not produced by asterisk at all, its not a valid asterisk
error return, you are mis-interrupting some other error and reporting it
back as a asterisk error
I think it was some error inside your java, at the time this was happening
we only saw data stream on webapp.sh on the click to call attempts, we
where also looking at data streams on your agi.sh saw nothing, the cli with
agi and verbose 10 notifications enabled saw nothing, and we also looking
at the AMI stream, nothing there as well, so we dont even think your
connector was even talking to asterisk at all
we fixed the issue last night, stopped the webapp.sh and agi.sh files and
prevented them from start @ boot, rebooted, cleared settings in vtiger PBX
manager or rather put in a bunch of junk, saved, rebooted, put settings
back into PBX manager, rebooted then turned the .sh files back on, not sure
what steps fixed but simple stop and start of .sh files and/or system
reboots did not fix
we still have issue on on test server where it seems vtiger altered
something in asterisk where all the extensions we had in vtiger no longer
will ring though a call queue, we have no data on the event we where not
actively monitoring data streams, and your asterisk connector has never
written 1 log to its own log directory, everything was working Friday, and
Monday we checked on it again and found that vtiger was stuck in endless
loop of inbound notification and those extensions would no longer sent a
sip invite though call queue, even after they where removed from vtiger and
a reboot, and the asterisk connector was completely shut down, keep in mind
these are test servers dedicated to getting vtiger to work, they are lamp +
asterisk + freepbx + vtiger only we have not moved into phase of testing
with other packages so the problems we are having can only be vtiger, this
is what concerns us about closed source java+agi, beyond we can not see
code to try to help you we now have situation where it seems your connector
and AGI have altered asterisk, we dont know whats it doing.
the whole reason we advocate for just use the AMI is its simple and works
and your not really doing anything that requires the interactivity that AGI
allows, AMI can be used to originate call as well as be monitored for
inbound, this is how tapi drivers work that plug into on site CRMs like
ACT, SAGE CRM, Lexis Nexus, ect, its also how sugar / sweet crm are
handling it
I think the tiring the call records to data in vtiger is a great idea, but
why are you generating your own CDR log's via AGI, and this is where I
think you guys are hung up on using AGI, but asterisk does have it own
MySQL tables and CDR reccords, why not during the isntall of vtiger ask for
the asterisk database name and credentials and query them for the info, and
vtiger should not be forcing all calls to record, asterisk gives us ways to
record and not record calls, if you want to link to recordings fine but
again you should be looking to see if a call was recorded, beyond a
performance issue and potential duplication of whats already being done in
the Asterisk, this ventures into a legal issue, a lot of places all parties
must be notified and consent to call recording, with vtiger it forces the
recording
the general rule of thumb here is if you need user input like your making
a IVR and logging what was entered then you need AGI, if your just
originating calls and monitoring for inbound use AMI, in either case SQL
should be used to get call record data
AGI has it problems that you are unnecessarily dealing with, they are
common for AGI, what if my agi script finishes before the call ends, what
if the call ends before my agi script finishes and a whole host of other
issues that you simply dont need to deal with for what your trying to do
----------------------------------------
From: "Akshath T.A" <akshath.t at vtiger.com>
Sent: Wednesday, August 27, 2014 3:19 AM
To: vtiger at camden.net
Subject: Re: [Vtigercrm-developers] Asterisk Good News
Hi,
From the logs, it clearly states that the extension - 101 was not found by
your Asterisk server when AMI originate request sent from Vtiger
Connector.
In order to nail down the issue, can we have a online meeting today or
tomorrow so that it would help us know what really is causing the problem.
I will be available from 9:00 AM to 8:00 PM IST at my office. Please tell
us your convenient time within this so that I can send you meeting link.
Thank you.
regards,
Akshath
Vtiger
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.vtigercrm.com/pipermail/vtigercrm-developers/attachments/20140827/d0990487/attachment-0001.html>
More information about the vtigercrm-developers
mailing list