Sponsor: VoiceMeUp - Corporate & Wholesale VoIP Services

VoIP Mailing List Archives
Mailing list archives for the VoIP community
 SearchSearch 

[asterisk-users] Open Source Asterisk Polling Solution

Goto page Previous  1, 2
 
Post new topic   Reply to topic    VoIP Mailing List Archives Forum Index -> Asterisk Users
View previous topic :: View next topic  
Author Message
joshdmetzger at gmail.com
Guest





PostPosted: Wed Apr 23, 2014 8:16 am    Post subject: [asterisk-users] Open Source Asterisk Polling Solution Reply with quote

I agree that ODBC is the way to go here.  It's trivially easy to setup, and equally simple to push database updates via the dialplan.  I've used ODBC connectivity with Asterisk in a large and VERY busy call center, and performance was never remotely an issue (call recording is a different story, but that's something else entirely...).  There was mention of checking against a DNC list, and ODBC would be good for this as well - just put that into a table and match against it before making your outbound call. 


-Josh



On Wed, Apr 23, 2014 at 4:12 AM, James Sharp <james@fivecats.org (james@fivecats.org)> wrote:
Quote:
On 4/23/2014 12:20 AM, Nick Cameo wrote:
Quote:

    That's about as simple as it gets.

    A call file that goes to the dialplan.

    A dialplan that consists of Read (which would play the message)
    followed a GotoIf into a mailbox (either voicemail or Dial() to an
    external number).

    One hint for doing unattended dialing like this, make sure you're
    dialing using a SIP or other digital method rather than, say, out an
    analogue port that doesn't have decent answer detect.

    And you can't just dump a whole bunch of call files into the system
    at once, you'll need to meter them out based on the number of
    concurrent outbound calls your provider will allow.


Hello James,

Good to see you here, and thank you very much. Though my basic idea of
how it will look using call files and dialplan is like what you and
others on here have pointed out. Yes,
we are using SIP for both origination and termination (just helping my
friend use some of our accounts used for PBX, and prepaid). I have been
using * for many years now however,
never for call center/predictive dialer type processes. Once I have got
this thing to call out and get calls coming in. It would be nice to
write to a database all the users that press
option on. I have a strong Java, PHP and SQL background. Will probably
need to make a call using AGI or such?

N.





You can go AGI, but there are direct ODBC handles available in the dialplan if you build Asterisk properly with the ODBC resources enabled.  That'd my personal preference from a performance standpoint.



--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
              http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users


Back to top
asterisk.org at sedwar...
Guest





PostPosted: Wed Apr 23, 2014 9:55 am    Post subject: [asterisk-users] Open Source Asterisk Polling Solution Reply with quote

On 4/23/2014 12:20 AM, Nick Cameo wrote:

Quote:
I have a strong Java, PHP and SQL background. Will probably need to make
a call using AGI or such?

On Wed, 23 Apr 2014, James Sharp wrote:

Quote:
You can go AGI, but there are direct ODBC handles available in the
dialplan if you build Asterisk properly with the ODBC resources enabled.
That'd my personal preference from a performance standpoint.

On Wed, 23 Apr 2014, Josh Metzger wrote:

Quote:
I agree that ODBC is the way to go here. It's trivially easy to setup,
and equally simple to push database updates via the dialplan. I've used
ODBC connectivity with Asterisk in a large and VERY busy call center,
and performance was never remotely an issue (call recording is a
different story, but that's something else entirely...). There was
mention of checking against a DNC list, and ODBC would be good for this
as well - just put that into a table and match against it before making
your outbound call.

And in this corner...

I always do database access it an AGI. IMNSHO, any significant chunk of
logic or functionality belongs in an AGI. Keep your dialplan lean and
mean.

I tried database access in the dialplan using the mysql() application
years ago, just to confirm I was right and I was Smile

What an ugly, messy, fragile dialplan.

You already know database access in 'real' languages, why would you want
to code in a limited and difficult to debug environment?

I'm an 'old school' C programmer, so performance is always close to my
heart, but not when it makes my job harder.

Writing database access in the dialplan avoids creating a process for the
AGI, but unless you're processing hundreds or thousands of calls per
second, process creation is not going to be a factor.

I write my AGIs in C. It is my 'sharpest tool in the toolbox.' If C is not
in your 'wheelhouse,' use PHP or <cough>Java</cough>. You (and the next
guy who gets to enhance and maintain this application) will be glad you
did.

--
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards sedwards@sedwards.com Voice: +1-760-468-3867 PST
Newline Fax: +1-760-731-3000

--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users
Back to top
support at drdos.info
Guest





PostPosted: Wed Apr 23, 2014 10:17 am    Post subject: [asterisk-users] Open Source Asterisk Polling Solution Reply with quote

Quote:
Quote:
I tried database access in the dialplan using the mysql() application
years ago, just to confirm I was right and I was Smile

Quote:
Quote:
What an ugly, messy, fragile dialplan.

With FuncODBC this is no longer an issue. All of the query logic is handled outside of the dial plan.

Doug



--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users
Back to top
joshdmetzger at gmail.com
Guest





PostPosted: Wed Apr 23, 2014 10:37 am    Post subject: [asterisk-users] Open Source Asterisk Polling Solution Reply with quote

I've always done my DB access via func_odbc and not with the mysql package.  While we ran a MySQL db, I was more comfortable with the odbc stuff because it was part of Asterisk core and not an addon package.  I can't speak to the simplicity of using the mysql stuff vs the odbc stuff, but there isn't a lot to creating your query in func_odbc and then calling it from your dialplan (and passing a few variables).  I'd say it's no more difficult than calling an AGI, in my case we WERE processing a LARGE volume of calls, and importantly: It didn't require me to learn C or PHP.  Wink

Now if you want complicated, somewhere I have a very long GotoIf() that includes an ODBC call and nested Math() functions...


-Josh



On Wed, Apr 23, 2014 at 11:17 AM, Doug Lytle <support@drdos.info (support@drdos.info)> wrote:
Quote:
>> I tried database access in the dialplan using the mysql() application
Quote:
Quote:
years ago, just to confirm I was right and I was Smile

Quote:
Quote:
What an ugly, messy, fragile dialplan.


With FuncODBC this is no longer an issue.  All of the query logic is handled outside of the dial plan.

Doug



--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
               http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users


Back to top
asterisk.org at sedwar...
Guest





PostPosted: Wed Apr 23, 2014 1:25 pm    Post subject: [asterisk-users] Open Source Asterisk Polling Solution Reply with quote

On Tue, 22 Apr 2014, A J Stiles wrote:

Quote:
...so absolutely *do not* pay money for a solution, and *do* insist on
the Source Code and Modification Rights.

Even an obvious and simple solution has value if it exceeds the OP's skill
set or the value of his time to implement.

--
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards sedwards@sedwards.com Voice: +1-760-468-3867 PST
Newline Fax: +1-760-731-3000

--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users
Back to top
asterisk.org at sedwar...
Guest





PostPosted: Wed Apr 23, 2014 1:36 pm    Post subject: [asterisk-users] Open Source Asterisk Polling Solution Reply with quote

On Wed, 23 Apr 2014, Steve Edwards wrote:

Quote:
Quote:
Quote:
I tried database access in the dialplan using the mysql() application
years ago, just to confirm I was right and I was Smile What an ugly,
messy, fragile dialplan.

On Wed, 23 Apr 2014, Doug Lytle wrote:

Quote:
With FuncODBC this is no longer an issue. All of the query logic is
handled outside of the dial plan.

I took a look and it looks like a step in the right direction, kind of a
'prepared statement' approach and it gets all the ugly quoting nonsense
out of the dialplan. The query statement may be out of the dialplan, but
the logic of what to do with the returned values remains.

The OP stated that he was going to 'will wire it up to the DNC' (the
National Do Not Call Registry?) which sounds like a simple 'query the
database to see if the key exists' kind of thing for which ODBC seems
reasonable.

This application should be expanded to include multiple databases so his
callers can press 1 to be queued for an agent or 2 to be added to his
client's private DNC database. While checking 2 databases is no big deal,
a simple 'check-dnc' AGI can hide those details and yield a cleaner
dialplan.

As the application matures, there may be additional enhancements that
would lean towards wishing he had started down the AGI road.

If the target list includes (but is not limited to) members of a group
(like a church) you could have a situation where the callee is on the DNC,
but has opted-in so you have another database to consider.

How about checking the database to see the last time they had 'waste they
need picked up?' If the 'waste' is charitable donations of clothing or
furniture, I suspect most people would be good with just a call or 2 per
year.

How about letting the 'donor' schedule the number of months until the next
call?

--
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards sedwards@sedwards.com Voice: +1-760-468-3867 PST
Newline Fax: +1-760-731-3000

--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users
Back to top
joshdmetzger at gmail.com
Guest





PostPosted: Wed Apr 23, 2014 1:48 pm    Post subject: [asterisk-users] Open Source Asterisk Polling Solution Reply with quote

I think it's all a matter of personal taste.  I think the logic for "add to DNC" is extremely trivial and would be more complicated with an AGI.  You have your prompt playback/read, if they hit "1", head to the queue, if they hit "2", it's a single dialplan line to put the info into the database and then one more like to Playback a nice "Goodbye" message.  You also add one additional line before calling out in that case - one query for the national DNC and one for the "internal" DNC, or you can get really fancy and setup your table with an extra column that denotes "national" or "internal".  While you're add it, throw in that extra column for "next call scheduling"...


All that being said, you would probably be better off pre-processing before sending the phone numbers to the PBX so you've already scrubbed the call list to only people not on a DNC list and within the scheduled call-back time.  That way you save the checks for each call outbound and only have the code for adding people to the DNC and scheduling the next call, though it still could be done either way (though in the case of not pre-processing, you're getting closer to making Asterisk into a dialer system and then you can get into fancy legal issues about using an "autodialer" when you accidentally call someone who doesn't want to be called and they complain (dependant on jurisdiction).


-Josh



On Wed, Apr 23, 2014 at 2:36 PM, Steve Edwards <asterisk.org@sedwards.com (asterisk.org@sedwards.com)> wrote:
Quote:
On Wed, 23 Apr 2014, Steve Edwards wrote:

Quote:
Quote:
Quote:
I tried database access in the dialplan using the mysql() application years ago, just to confirm I was right and I was Smile What an ugly, messy, fragile dialplan.


On Wed, 23 Apr 2014, Doug Lytle wrote:

Quote:
With FuncODBC this is no longer an issue.  All of the query logic is handled outside of the dial plan.


I took a look and it looks like a step in the right direction, kind of a 'prepared statement' approach and it gets all the ugly quoting nonsense out of the dialplan. The query statement may be out of the dialplan, but the logic of what to do with the returned values remains.

The OP stated that he was going to 'will wire it up to the DNC' (the National Do Not Call Registry?) which sounds like a simple 'query the database to see if the key exists' kind of thing for which ODBC seems reasonable.

This application should be expanded to include multiple databases so his callers can press 1 to be queued for an agent or 2 to be added to his client's private DNC database. While checking 2 databases is no big deal, a simple 'check-dnc' AGI can hide those details and yield a cleaner dialplan.

As the application matures, there may be additional enhancements that would lean towards wishing he had started down the AGI road.

If the target list includes (but is not limited to) members of a group (like a church) you could have a situation where the callee is on the DNC, but has opted-in so you have another database to consider.

How about checking the database to see the last time they had 'waste they need picked up?' If the 'waste' is charitable donations of clothing or furniture, I suspect most people would be good with just a call or 2 per year.

How about letting the 'donor' schedule the number of months until the next call?

--
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards       sedwards@sedwards.com (sedwards@sedwards.com)      Voice: [url=tel:%2B1-760-468-3867]+1-760-468-3867[/url] PST
Newline                                              Fax: [url=tel:%2B1-760-731-3000]+1-760-731-3000[/url]


--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
              http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users


Back to top
asterisk_list at earth...
Guest





PostPosted: Thu Apr 24, 2014 4:40 am    Post subject: [asterisk-users] Open Source Asterisk Polling Solution Reply with quote

On Wednesday 23 Apr 2014, Steve Edwards wrote:
Quote:
On Tue, 22 Apr 2014, A J Stiles wrote:
Quote:
...so absolutely *do not* pay money for a solution, and *do* insist on
the Source Code and Modification Rights.

Even an obvious and simple solution has value if it exceeds the OP's skill
set or the value of his time to implement.

Sure it may have value; but that value does not exceed the value of Source
Code and Modification Rights.

You know what you need today; but you have no idea what you are going to need
tomorrow. So it's vital that you have the ability to adapt the software you
are using to needs that may arise in future (also known as Freedom Three).
Exercise of the right to modify software in practice requires access to the
Source Code.

Having seen a former employer (1) turn away work for want of enough software
licences (there was a *big* price jump from 10 users to 25 users) and (2)
alter an established workflow to fit in with constraints imposed by new
software, I would *never* accept a piece of software which did not respect my
rights to enjoy, study, share and adapt it.

--
AJS

Note: Originating address only accepts e-mail from list! If replying off-
list, change address to asterisk1list at earthshod dot co dot uk .

--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users
Back to top
Display posts from previous:   
Post new topic   Reply to topic    VoIP Mailing List Archives Forum Index -> Asterisk Users All times are GMT - 5 Hours
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group

VoiceMeUp - Corporate & Wholesale VoIP Services