/
Flows Dialers
Flows Dialers
VoiceBroadCast
exten=> _X.,1,Set(CHANNEL(Language)=es)
exten=> _X.,2,Answer(5)
exten=> _X.,3,Set(CALLERID(num)=${EXTEN})
exten=> _X.,4,Set(CALLERID(name)=${CDR(campaign)})
exten=> _X.,5,Set(__dialed=${EXTEN})
exten=> _X.,6,Set(__REALDIALED=${EXTEN})
exten=> _X.,7,GUID(__guid)
exten=> _X.,8,Set(CDR(guid)=${guid})
exten=> _X.,9,Playback(${sound},)
exten=> _X.,10,Read(__confirma,IVRDemoDesicion,1,,1,5)
exten=> _X.,11,GotoIf($["${confirma}" = "1"]?14:12)
exten=> _X.,12,GotoIf($["${confirma}" = "2"]?9:13)
exten=> _X.,13,Hangup()
exten=> _X.,14,Set(CDR(campaign)=${CDR(campaign)})
exten=> _X.,15,Set(MONITOR_FILENAME=${guid})
exten=> _X.,16,Set(__Ani=${EXTEN})
exten=> _X.,17,Set(CDR(type)=record)
exten=> _X.,18,SipAddHeader(CTI: {"Guid": "${guid}" , "Screen": "FALSE" , "Form": "${FORM}" , "Campaign" : "${CDR(campaign)}" , "Callerid" : "${CALLERID(num)}" , "ParAndValues" : "${PARAVAL}" , "Beep" : "TRUE" , "Answer" : "TRUE" , "Dialer" : "${DIALERRECORD}"})
exten=> _X.,19,GotoIf($["${am}" = "1"]?22:20)
exten=> _X.,20,Queue(${VBQUEUE},TtKk,,,600,,,,,)
exten=> _X.,21,Goto(VoiceBroadCast,${EXTEN},13)
exten=> _X.,22,Background(silence/1,,,)
exten=> _X.,23,AMD(4000,9000,2250,15000,100,50,5,256)
exten=> _X.,24,GotoIf($["${AMDSTATUS}" = "MACHINE"]?27:25)
exten=> _X.,25,Set(__userfield=${AMDSTATUS} - ${AMDCAUSE})
exten=> _X.,26,Goto(VoiceBroadCast,${EXTEN},20)
exten=> _X.,27,Set(__userfield=${AMDSTATUS} - ${AMDCAUSE})
exten=> _X.,28,WaitForSilence(,,)
exten=> _X.,29,Playback(${amsound},)
exten=> _X.,30,Goto(VoiceBroadCast,${EXTEN},13)
exten=> h,1,Set(HASH(rates)=${ODBC_Data(select rates.gateway\, rates.rate\, rates.cost\, rates.note FROM rates LEFT JOIN provider ON provider.name=rates.gateway WHERE provider.status = 'true' AND substring( '${EXTEN}'\, 1\, length( prefix_regexp ) ) REGEXP prefix_regexp ORDER BY length(prefix_regexp) DESC\,rates.rate ASC)})
exten=> h,2,Set(talkedminutes=${MATH(${CDR(billsec)} / 60,f)})
exten=> h,3,Set(talkedminutes=$[CEIL(${talkedminutes})])
exten=> h,4,Set(chargedbalance=${MATH(${talkedminutes} * ${HASH(rates,rate)},f)})
exten=> h,5,Set(realbalance=${MATH(${talkedminutes} * ${HASH(rates,cost)},f)})
exten=> h,6,Set(CDR(charged_balance)=${chargedbalance})
exten=> h,7,Set(CDR(real_balance)=${realbalance})
exten=> h,8,Set(CDR(note)=${HASH(rates,note)})
exten=> h,9,Set(CDR(carrier)=${HASH(rates,gateway)})
exten=> h,10,Set(CDR(userfield)=${userfield})
exten=> h,11,Set(CDR(direction)=outgoing)
exten=> h,12,Set(CDR(causecode)=${HANGUPCAUSE})
exten=> h,13,Hangup()
Progressive, Preview
exten=> _XXXXX.,1,Set(VOLUME(TX)=2)
exten=> _XXXXX.,2,Set(VOLUME(RX)=2)
exten=> _XXXXX.,3,Set(__OUTQUEUE=${CDR(campaign)})
exten=> _XXXXX.,4,Set(__DIALED=${EXTEN})
exten=> _XXXXX.,5,Set(__AGENT=${OUTAGENT})
exten=> _XXXXX.,6,Set(__guid=${OUTGUID})
exten=> _XXXXX.,7,Set(did1=${CUT(OUTDID,-,1)})
exten=> _XXXXX.,8,Set(did2=${CUT(OUTDID,-,2)})
exten=> _XXXXX.,9,GotoIf($["${did2}"==""]?26:10)
exten=> _XXXXX.,10,Set(digit1len=${LEN(${did1})})
exten=> _XXXXX.,11,Set(digit1len=${MATH(${digit1len} - 2,i)})
exten=> _XXXXX.,12,Set(randDID=${RAND(${did1:-2},${did2})})
exten=> _XXXXX.,13,Set(CALLERID(num)=${did1:0:${digit1len}}${randDID})
exten=> _XXXXX.,14,Set(CALLERID(name-pres)=${CALLERPRESS})
exten=> _XXXXX.,15,Set(dummy=${ODBC_Data(UPDATE calls_spool set status =0\, retries = retries + 1 WHERE contact = ${CDR(contact)} AND destination = '${EXTEN}')})
exten=> _XXXXX.,16,Set(CDR(guid)=${guid})
exten=> _XXXXX.,17,Set(CDR(type)=record)
exten=> _XXXXX.,18,MixMonitor(${guid}.gsm,b,)
exten=> _XXXXX.,19,Set(CDR(accountcode)=${AGENT})
exten=> _XXXXX.,20,Set(__idLlamada=${guid})
exten=> _XXXXX.,21,Set(__REALDIALED=${EXTEN})
exten=> _XXXXX.,22,Dial(${DIALSTRING:0:-1}/${EXTEN},30,ctTM(RECORD),)
exten=> _XXXXX.,23,Set(CDR(causecode)=${HANGUPCAUSE})
exten=> _XXXXX.,24,NoOp(${DIALSTATUS} - ${HASH(SIP_CAUSE,${CDR(dstchannel)})} - ${HANGUPCAUSE})
exten=> _XXXXX.,25,Hangup()
exten=> _XXXXX.,26,Set(CALLERID(num)=${OUTDID})
exten=> _XXXXX.,27,Goto(Progressive,${EXTEN},14)
exten=> h,1,Set(HASH(rates)=${ODBC_Data(select rates.gateway\, rates.rate\, rates.cost\, rates.note FROM rates LEFT JOIN provider ON provider.name=rates.gateway WHERE provider.status = 'true' AND substring( '${EXTEN}'\, 1\, length( prefix_regexp ) ) REGEXP prefix_regexp ORDER BY length(prefix_regexp) DESC\,rates.rate ASC)})
exten=> h,2,Set(talkedminutes=${MATH(${CDR(billsec)} / 60,f)})
exten=> h,3,Set(talkedminutes=$[CEIL(${talkedminutes})])
exten=> h,4,Set(chargedbalance=${MATH(${talkedminutes} * ${HASH(rates,rate)},f)})
exten=> h,5,Set(realbalance=${MATH(${talkedminutes} * ${HASH(rates,cost)},f)})
exten=> h,6,Set(CDR(charged_balance)=${chargedbalance})
exten=> h,7,Set(CDR(real_balance)=${realbalance})
exten=> h,8,Set(CDR(note)=${HASH(rates,note)})
exten=> h,9,Set(CDR(carrier)=${HASH(rates,gateway)})
exten=> h,10,Set(CDR(userfield)=${userfield})
exten=> h,11,Set(CDR(direction)=outgoing)
exten=> h,12,Set(CDR(causecode)=${HANGUPCAUSE})
exten=> h,13,NoCDR()
exten=> h,14,QueueUpdate(${OUTQUEUE},${UNIQUEID},${AGENT},${DIALSTATUS},${ANSWEREDTIME},${DIALEDTIME}|${DIALED}|${IdLlamada}|)
exten=> h,15,Hangup()
PowerDialer, Predictive
exten=> _X.,1,Set(CHANNEL(Language)=es)
exten=> _X.,2,Answer(0)
exten=> _X.,3,Set(CALLERID(num)=${EXTEN})
exten=> _X.,4,Set(__dialed=${EXTEN})
exten=> _X.,5,Set(__REALDIALED=${EXTEN})
exten=> _X.,6,Set(__Ani=${EXTEN})
exten=> _X.,7,GUID(__guid)
exten=> _X.,8,Set(CDR(guid)=${guid})
exten=> _X.,9,Set(CDR(campaign)=${CDR(campaign)})
exten=> _X.,10,Set(MONITOR_FILENAME=${guid})
exten=> _X.,11,Set(CDR(type)=record)
exten=> _X.,12,SipAddHeader(CTI: {"Guid": "${guid}" , "Screen": "FALSE" , "Form": "${FORM}" , "Campaign" : "${CDR(campaign)}" , "Callerid" : "${CALLERID(num)}" , "ParAndValues" : "${PARAVAL}" , "Beep" : "TRUE" , "Answer" : "TRUE" , "Dialer" : "${DIALERRECORD}"})
exten=> _X.,13,GotoIf($["${am}" = "1"]?16:14)
exten=> _X.,14,Queue(${CDR(campaign)},TtKk,,,600,,,,,)
exten=> _X.,15,Hangup()
exten=> _X.,16,Background(silence/1,,,)
exten=> _X.,17,AMD(6000,1500,800,2500,100,50,3,256)
exten=> _X.,18,GotoIf($["${AMDSTATUS}" = "MACHINE"]?19:14)
exten=> _X.,19,Set(__userfield=${AMDSTATUS} - ${AMDCAUSE})
exten=> _X.,20,GotoIf($[${RETRY} <= ${MAXRETRIES}]?22:21)
exten=> _X.,21,Hangup()
exten=> _X.,22,Set(dummy=${ODBC_Data(DELETE FROM calls_spool WHERE contact = ${CDR(contact)} )})
exten=> _X.,23,Set(dummy=${ODBC_Data(INSERT INTO calls_spool VALUES(${DIALERRECORD}))})
exten=> _X.,24,Goto(PowerDialer,${EXTEN},21)
exten=> h,1,Set(HASH(rates)=${ODBC_Data(select rates.gateway\, rates.rate\, rates.cost\, rates.note FROM rates LEFT JOIN provider ON provider.name=rates.gateway WHERE provider.status = 'true' AND substring( '${EXTEN}'\, 1\, length( prefix_regexp ) ) REGEXP prefix_regexp ORDER BY length(prefix_regexp) DESC\,rates.rate ASC)})
exten=> h,2,Set(talkedminutes=${MATH(${CDR(billsec)} / 60,f)})
exten=> h,3,Set(talkedminutes=$[CEIL(${talkedminutes})])
exten=> h,4,Set(chargedbalance=${MATH(${talkedminutes} * ${HASH(rates,rate)},f)})
exten=> h,5,Set(realbalance=${MATH(${talkedminutes} * ${HASH(rates,cost)},f)})
exten=> h,6,Set(CDR(charged_balance)=${chargedbalance})
exten=> h,7,Set(CDR(real_balance)=${realbalance})
exten=> h,8,Set(CDR(note)=${HASH(rates,note)})
exten=> h,9,Set(CDR(carrier)=${HASH(rates,gateway)})
exten=> h,10,Set(CDR(userfield)=${userfield})
exten=> h,11,Set(CDR(direction)=outgoing)
exten=> h,12,Set(CDR(causecode)=${HANGUPCAUSE})
exten=> h,13,GotoIf($["${ABANDONED}" == "TRUE"]?15:14)
exten=> h,14,Hangup()
exten=> h,15,Set(dummy=${ODBC_Data(DELETE FROM calls_spool WHERE contact = ${CDR(contact)})})
exten=> h,16,Set(dummy=${ODBC_Data(INSERT INTO calls_spool VALUES(${DIALERRECORD}))})
exten=> h,17,Goto(PowerDialer,${EXTEN},14)
, multiple selections available,
Related content
Strategies - Telephony
Strategies - Telephony
Read with this
Flows Dialers v5
Flows Dialers v5
More like this
Voice Dialers
Voice Dialers
Read with this
Flusso Dialers
Flusso Dialers
More like this
Voice Campaigns
Voice Campaigns
Read with this
Flujos Marcadores
Flujos Marcadores
More like this