Re: [asterisk-users] Verification number / code

2009-11-22 Thread Steve Edwards
Un-top-posting...

 On Sat, 21 Nov 2009, Thomas Perron wrote:

 I want to distribute a random number to each of the first 100 callers 
 to my IVR. This random number will be matched to their telephone 
 number. Where in Asterisk can I do this?  And, how?

 Logic.

 Call arrives. Context for announcement begins. You will receive a 
 authentication code at the end of the message. Then, if they press a 
 certain digit to confirm then I simply pass a code to them. These 
 codes are distributed to the first 100. The 101st call does not get a 
 code.

 On Sat, Nov 21, 2009 at 7:20 PM, Steve Edwards 
 asterisk@sedwards.comwrote:

 I'm guessing you really don't want a random number since a random 
 number generator can generate duplicates.

 Matching the number to their ANI also has issues. What if my ANI is 
 blocked? What if I spoof my ANI? What if I call from a SIP phone?

 I would pre-compute the random numbers and store them in a database.

 When a call arrives, I would invoke an AGI that would lock the table, 
 read the first value with a null ANI, update the row with the caller's 
 ANI, and unlock the table.

 You could do it in dialplan, but I find database access in dialplan 
 ugly.

 Alternatively, you could mung UNIQUEID (number of seconds since 
 Epoch.number of channels created by this instance of Asterisk) to 
 appear to the caller as random and then store that and their ANI in a 
 database.

 What happens if Asterisk is restarted in the middle of your campaign?

On Sat, 21 Nov 2009, Thomas Perron wrote:

 that is a bit heavy for me.  how about some simple way to announce a 
 random number.  using RAND. and saydigit

 exten = s,1,Set(junky=${RAND(1,8)})

Um. OK. Use RAND and saydigit. And use some sort of counter to know when 
you've issued 100 numbers.

But...

) You may have duplicate random numbers.

) You may have issues counting the callers if you have more than 1 call 
arrive at close to the same time.

) If Asterisk restarts, how will you know how many numbers have been 
issued?

) You still have to handle the matching requirement.

I still think a databased* approach is the best approach. I'm sorry it's 
not within your current skill-set. Maybe this means you should invest some 
time learning the skills or hire someone who has them.

If this is a toy (Guess a number...), use RAND and saydigit. If this is 
a contest with some sort of prize or involves anything of value, use a 
database.

*) MySQL has a really neat generic lock facility that will come in handy. 
See get_lock(lock-name, timeout).

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

___
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

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


[asterisk-users] Verification number / code

2009-11-21 Thread Thomas Perron
I want to distribute a random number to each of the first 100 callers to my
IVR.
This random number will be matched to their telephone number.
Where in Asterisk can I do this?  And, how?

Logic.

Call arrives.
Context for announcement begins.
You will receive a authentication code at the end of the message.
Then, if they press a certain digit to confirm then I simply pass a code to
them.
These codes are distributed to the first 100.
The 101st call does not get a code.
___
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

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

Re: [asterisk-users] Verification number / code

2009-11-21 Thread Steve Edwards
On Sat, 21 Nov 2009, Thomas Perron wrote:

 I want to distribute a random number to each of the first 100 callers to 
 my IVR. This random number will be matched to their telephone number. 
 Where in Asterisk can I do this?  And, how?

 Logic.

 Call arrives.
 Context for announcement begins.
 You will receive a authentication code at the end of the message.
 Then, if they press a certain digit to confirm then I simply pass a code to
 them.
 These codes are distributed to the first 100.
 The 101st call does not get a code.

I'm guessing you really don't want a random number since a random number 
generator can generate duplicates.

Matching the number to their ANI also has issues. What if my ANI is 
blocked? What if I spoof my ANI? What if I call from a SIP phone?

I would pre-compute the random numbers and store them in a database.

When a call arrives, I would invoke an AGI that would lock the table, read 
the first value with a null ANI, update the row with the caller's ANI, and 
unlock the table.

You could do it in dialplan, but I find database access in dialplan ugly.

Alternatively, you could mung UNIQUEID (number of seconds since 
Epoch.number of channels created by this instance of Asterisk) to 
appear to the caller as random and then store that and their ANI in a 
database.

What happens if Asterisk is restarted in the middle of your campaign?

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

___
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

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


Re: [asterisk-users] Verification number / code

2009-11-21 Thread Thomas Perron
that is a bit heavy for me.  how about some simple way to announce a random
number.  using RAND. and saydigit

exten = s,1,Set(junky=${RAND(1,8)})



On Sat, Nov 21, 2009 at 7:20 PM, Steve Edwards asterisk@sedwards.comwrote:

 On Sat, 21 Nov 2009, Thomas Perron wrote:

  I want to distribute a random number to each of the first 100 callers to
  my IVR. This random number will be matched to their telephone number.
  Where in Asterisk can I do this?  And, how?
 
  Logic.
 
  Call arrives.
  Context for announcement begins.
  You will receive a authentication code at the end of the message.
  Then, if they press a certain digit to confirm then I simply pass a code
 to
  them.
  These codes are distributed to the first 100.
  The 101st call does not get a code.

 I'm guessing you really don't want a random number since a random number
 generator can generate duplicates.

 Matching the number to their ANI also has issues. What if my ANI is
 blocked? What if I spoof my ANI? What if I call from a SIP phone?

 I would pre-compute the random numbers and store them in a database.

 When a call arrives, I would invoke an AGI that would lock the table, read
 the first value with a null ANI, update the row with the caller's ANI, and
 unlock the table.

 You could do it in dialplan, but I find database access in dialplan ugly.

 Alternatively, you could mung UNIQUEID (number of seconds since
 Epoch.number of channels created by this instance of Asterisk) to
 appear to the caller as random and then store that and their ANI in a
 database.

 What happens if Asterisk is restarted in the middle of your campaign?

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

 ___
 -- Bandwidth and Colocation Provided by http://www.api-digital.com --

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

___
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

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