Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [curling-pins-api-style]
- autofallthrough=no
- exten => s,1,Answer
- exten => s,n,Set(i=1)
- ;exten => s,n,Set(Timeout(response)=25)
- exten => s,n,Background(enter_account) ; custom/sixteendigits)
- exten => s,n,WaitExten(25)
- ; lets wait for the card number
- exten => _XXXXXXXXXXXXXXXX,1,Set(CARDNUMBER=${EXTEN})
- exten => _XXXXXXXXXXXXXXXX,2,NoOp(Cardnumber is ${CARDNUMBER})
- ;exten => _XXXXXXXXXXXXXXXX,3,Set(BAL=${CURL(https://api.com/api/,call=getbalance&user=username&pass=password&cardnumber=55)}}) ;card #
- exten => _XXXXXXXXXXXXXXXX,3,Set(BAL="{"status":0,"message":"Query Successful.","data":{"balance":1072}") ;card #
- ;exten => _XXXXXXXXXXXXXXXX,3,Set(BAL=${"status":4,"message":"The PIN you supplied is not valid."}) ;card #
- exten => _XXXXXXXXXXXXXXXX,4,NoOP(${BAL});
- exten => _XXXXXXXXXXXXXXXX,5,Goto(PINCHECK,s,1)
- ;;;;;;;;;;;; NOTES
- ;{"status":0,"message":"Query Successful.","data":{"balance":1072}} ; CORRECT CARD NUMBER - dont need a pin but we add pin for sec
- ;{"status":4,"message":"The PIN you supplied is not valid."} ; INCORRECT WHAT?
- ;;;;;;;;;;;;;;;;;;;;;;;;;;
- exten => t,1,Playback(thank_you_calling)
- exten => t,2,Plaback(goodbye_love) ; custom/ty-for-calling-goodbye) ; this is gonna break if you dont have this sound in here - please update with a TIMEOUT message for the CARD#
- exten => t,3,Goto(howmanytimes,s,1)
- exten => i,1,Playback(invalid) ; custom/invalid-card
- exten => i,2,Goto(howmanytimes,s,1)
- [PINCHECK]
- ;PinNumber
- exten => s,1,Set(Timeout(response)=10)
- exten => s,n,Background(please-enter-your)
- exten => s,n,Background(pin_number) ; custom/please-enter-your-pin)
- exten => s,n,WaitExten(25)
- exten => _XXXX,1,NoOP(User entered ${EXTEN} as PIN )
- exten => _XXXX,n,Set(PIN="{status":0,"message":"PIN OK"}") ;pin #
- ;exten => _XXXX,n,Set(PIN=${CURL() ;pin #
- exten => _XXXX,n,Set(PINTRIM=${PIN:23:-2})
- exten => _XXXX,n,NoOp(${PINTRIM})
- exten => _XXXX,n,GotoIf($["${PINTRIM}" = "PIN OK"]?goodpin,1:badpin,1)
- exten => goodpin,1,Playback(current_account_balance) ; custom/your-current-balance)
- exten => goodpin,n,SayNumber(${BAL:61}) ; 60
- exten => goodpin,n,Playback(thank_you_calling) ; custom/ty-for-calling-goodbye)
- exten => goodpin,n,Playback(goodbye_love)
- exten => goodpin,n,Hangup()
- exten => badpin,1,Playback(pin-invalid) ; custom/invalid-pin-number)
- exten => badpin,n,While($[${i} < 3])
- exten => badpin,n,SayNumber(${i})
- exten => badpin,n,Set(i=$[${i} + 1])
- exten => badpin,n,Goto(start)
- exten => badpin,n,EndWhile()
- exten => badpin,n,Playback(thank_you_calling)
- exten => badpin,n,Playback(goodbye_love)) ; custom/ty-for-calling-goodbye)
- exten => badpin,n,Hangup()
- exten => t,1,Playback
- exten => t,2,Goto(howmanytimes,s,1)
- exten => i,1,Playback(custom/invalid-card)
- exten => i,2,Goto(howmanytimes,s,1)
- [howmanytimes]
- exten => s,1,NoOP(We're gonna give this person 2 more tries 'cuz i is set to $i) ; how many times were you sent here
- exten => s,n,Gotoif($["${i}"="3"]?h,1,) ; Go back to where you came from or hangup
- exten => s,n,Goto(curling-pins-api-style,1)
- exten => h,1,Hangup ; might not need this
- ; 20 seconds are you still htere?
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement