Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations TouchToneTommy on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Variables in CM 10.1 1

Status
Not open for further replies.
Nov 22, 2013
598
US
I am looking for a solution to change the on call person via a vector variable.

The ability to change the routed to number in a vector by calling another vdn/vector that will have an announcement asking for the desired on call number, you enter the 10 digit number and then the routing will change to that number? I am not sure if this is possible or not?

 
Every time I ask on here, I figure it out 10 minutes later.

Code:
Variable
On-Call-Number              collect G     12     1     918004444444

The below vector is the administration vector to change the on call persons cell number and has 2 announcements, 1 asking you to enter the on call persons cell number starting with 9 and area code. the second to let you know the change has been made and hangs up.

Code:
CALL VECTOR

    Number: 12               Name: on-call-test
Multimedia? n      Attendant Vectoring? n    Meet-me Conf? n           Lock? n
     Basic? y   EAS? y   G3V4 Enhanced? y   ANI/II-Digits? y   ASAI Routing? y
 Prompting? y   LAI? y  G3V4 Adv Route? y   CINFO? y   BSR? y   Holidays? y
 Variables? y   3.0 Enhanced? y
01 wait-time    1   secs hearing ringback
02 collect      12   digits after announcement 12025    for B
03 disconnect   after announcement 12026
04 stop


Vector to route to the on call person when called.
Code:
                                  CALL VECTOR

    Number: 13               Name: on-call-manual
Multimedia? n      Attendant Vectoring? n    Meet-me Conf? n           Lock? n
     Basic? y   EAS? y   G3V4 Enhanced? y   ANI/II-Digits? y   ASAI Routing? y
 Prompting? y   LAI? y  G3V4 Adv Route? y   CINFO? y   BSR? y   Holidays? y
 Variables? y   3.0 Enhanced? y
01 wait-time    0   secs hearing ringback
02 set          B      = B      SEL   12
03 route-to     number B                        cov n if unconditionally
04



 
Is your "Management" VDN a DID or otherwise reachable from the outside? If so, you may want an initial announcement that says "Please enter your security code" and collect multiple digits. If the collected digits don't match the code, then the call is disconnected.

01 wait-time 2 secs hearing ringback
02 collect 6 digits after announcement 12026 for none
03 goto step 5 if digits = "123456"
04 disconnect after announcement none

05 collect 12 digits after announcement 12025 for B
06 disconnect after announcement 12026
07 stop

Then if you want to get REALLY fancy, you can create individual announcements for "One", "Two", "Three", etc. and have the system read back the number.
 
I did end up adding a code to enter with an announcement, my first post was just testing in my lab cm. Pretty cool stuff, never have I had a need to do that.

 
bit late but there was a good KB on here years ago for setting up an on-call vector
 
@ZeroZeroOne.
Looking to read back extensions with announcements, not finding a good how to on that? Any suggestions?


 
I do!

Record announcements "zero" through "nine" and assign in sequential order, depending on dial plan: 9200 = "Zero", 9201 = "One", ... 9209 = "Nine".
Other Announcements:
V5 = "No caller ID received"
V2 = "Your Caller ID is"

Assign Variables:
Code:
VAR  Description            Type    Scope     Length    Start
BH   Digit Collect          collect L         1         1
BI   Digit Announcement     collect L         4         1
BJ   Total Digits           collect L         2         1
BK   Full Number            collect L         16        1
BL
BM   Caller ID ANI          ani     L         16        1

In this example we are reading back the Caller ID (ANI) but you could collect digits instead.

[ul]
[li]Steps 4-8 - Check to see if any ANI was collected.[/li]
[li]Steps 10-18 - Find the length of the Digit string. I can't remember why I did it this way. It could be a holdover from some other programming but I wanted a way to handle multiple string lengths (7-digit, 10-digit, or non-USA number lengths). You could simplify for just 10 or 11-digits.[/li]
[li]Steps 20-28 - Make and play the appropriate announcement for each sequential digit in the string.[/li]
[/ul]


Code:
Vector Number: 25
Vector Name: Speak Caller ID
1	# Reads the Caller ID (ANI)
2	# 
3	# -----------------------------------------------------------------------
4	wait-time 2 secs hearing ringback
5	goto step 10 if BM >= 0
6	# Did not get any Caller ID Info.
7	announcement V5
8	stop
9	# -----------------------------------------------------------------------
10	# Find Number of Digits (BJ)
11	set BJ = none ADD 17
12	set BJ = BJ SUB 1
13	# Starting with 16 Digits, compare to original to find the actual Number
14	# of digits.
15	set BK = BM SEL BJ
16	goto step 12 if BM <> BK
17	# Once BK = the entered Digits, we know the total number of digits.
18	# At this point, BJ = total digits.
19	# -----------------------------------------------------------------------
20	announcement V2
21	# Begin Loop for reading back Digits
22	set BH = BM SEL BJ
23	# Make the Single Digit into the Appropriate Announcement Extension
24	set BI = BH ADD 9200
25	announcement BI
26	set BJ = BJ SUB 1
27	goto step 21 if BJ > 0
28	# End Loop for reading back digits
29	# -----------------------------------------------------------------------
30	stop

This was also for a system that had enhanced vectoring that allowed for using variables. There are other methods of doing this without variables but this makes for much shorter vectors.
 
I tried to get this to work but was unable.

Was trying to figure out how to add this into my current vector of collecting the 11 digit on-call cell number and then reading back the numbers but had no luck so far.
I am going to start over from the beginning on this I think. Everything is working as intended except the readback of numbers. I can deal with that for now.

 
Code:
VAR  Description            Type    Scope     Length    Start
B    On-Call Collected             collect L         12        1
C    Digit Countdown               collect L         2         1
D    Individual Digit              collect L         1         1
E    Digit Announcement            collect L         4         1
F    On-Call Number                collect G         12        1

Code:
1	wait-time 2 secs hearing ringback
2	collect 6 digits after announcement [COLOR=#EF2929]"Enter Security Code"[/color] for none
3	goto step 5 if digits = "123456"
4	disconnect after announcement none
5	collect 12 digits after announcement [COLOR=#EF2929]"Enter new On-Call Number"[/color] for B
6	# Begin Loop for reading back Digits
7	announcement [COLOR=#EF2929]"The number you entered is…"[/color]
8	set C = none add 12
9	set D = B SEL C
10	# Make the Single Digit into the Appropriate Announcement Extension
11	set E = D ADD 9200
12	announcement E      [COLOR=#EF2929]"Nine" "One"  "Two"  "etc."[/color]
13	set C = C SUB 1
14	goto step 9 if C > 0
15	# End Loop for reading back digits
16	# -----------------------------------------------------------------------
17	# Confirm Digits are Correct.
18	collect 1 digits after announcement [COLOR=#EF2929]"If this is correct press 1"[/color] for none
19	goto step 1 if digits <> 1
20	set F = none ADD B      
21	announcement [COLOR=#EF2929]"The Number has been changed"[/color]
22	stop
23	# 
24	# No Changes
25	announcement [COLOR=#EF2929]"No Changes Made."[/color]
26	stop

OK, this is a little simpler.

D still has to be a single digit. That way the "B SEL C" will select only the first digit in length C.
For example, if the Dial String is "912345678910" then:
SEL 12 = "912345678910" Which is captured as "9" to D
SEL 11 = "12345678910" Which is captured as "1" to D
SEL 10 = "2345678910" Which is captured as "2" to D
and so on...

E then takes the value "9200" and adds the value of D to create the correct announcement extension.

I added a confirmation step at the end but that isn't required. You could also read back the existing number (F in this case) before asking to change it. F is set to Global to be used anywhere.
 
Thank you all.

I was able to get this working using ZeroZeroOnes first method. Also added a password to it since it is tied to a DID # as well.

Variable
Code:
 VARIABLES FOR VECTORS

Var Description                 Type    Scope Length Start Assignment       VAC
A   On-Call-Number       collect G     11     1     95555551234

Vector for administering the variable
Code:
 CALL VECTOR

    Number: 54               Name: On-call-alarm-admin
Multimedia? n      Attendant Vectoring? n    Meet-me Conf? n           Lock? n
     Basic? y   EAS? y   G3V4 Enhanced? y   ANI/II-Digits? y   ASAI Routing? y
 Prompting? y   LAI? y  G3V4 Adv Route? y   CINFO? y   BSR? y   Holidays? y
 Variables? y   3.0 Enhanced? y
01 wait-time    2   secs hearing ringback
02 collect      4    digits after announcement 1362     for none
03 goto step    14            if digits           <>     2580
04 goto step    6             if digits           =      2580
05 #    Collect and announcment asking to enter number and area code
06 collect      11   digits after announcement 1364     for A
07 #    Thanks for entering the oncall number, press 1 to test 2 to disconnect.
08 collect      1    digits after announcement 1365     for none
09 goto step    13            if digits           =      1
10
11 goto step    8             if unconditionally
12 stop
13 route-to     number A                        cov n if unconditionally
14 announcement 1363
15 goto step    2             if unconditionally
16 stop

Vector for calling the number for routing.
Code:
 CALL VECTOR

    Number: 55               Name: On-Call
Multimedia? n      Attendant Vectoring? n    Meet-me Conf? n           Lock? n
     Basic? y   EAS? y   G3V4 Enhanced? y   ANI/II-Digits? y   ASAI Routing? y
 Prompting? y   LAI? y  G3V4 Adv Route? y   CINFO? y   BSR? y   Holidays? y
 Variables? y   3.0 Enhanced? y
01 wait-time    2   secs hearing ringback
02 #    check holidays, weekend, a/h
03 goto step    11            if holiday          in     table 1
04 goto step    11            if time-of-day      is all 17:00 to all 08:00
05 goto step    11            if time-of-day      is fri 17:00 to mon 08:00
06 #    Normal Hours
07 goto step    16            if unconditionally
08 stop
09
10 #    After Hours, holiday, Weekend Oncall
11 set          A      = A      SEL   11
12 route-to     number A                        cov n if unconditionally
13 stop
14
15 #    Routing during normal hours
16 route-to     number 1234                     cov y if unconditionally
17 stop



 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top