Cisco Support Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Announcements

Welcome to Cisco Support Community. We would love to have your feedback.

For an introduction to the new site, click here. If you'd prefer to explore, try our test area to get started. And see here for current known issues.

New Member

How to use the place call step in the script

I am new to uccx and the document does not explain alot for me related to this step so much.

In the destination field : i use a  variable of string that matched before.

The call contol group id : i use the integer of 2 ,the same as configured in the call control group number on UCCXadmin page.

Dialog group: the same as call control group id.

Here is my problem,the call contact field.

If i create a variable of contact with value null and choose it in the contact field of the place a call.

Call is not placed to the extension.

Also with reactive debug : i see that this field should get filled with a value to make the call works,but i don't know how to use it.

Thanks in advance.

2 ACCEPTED SOLUTIONS

Accepted Solutions

Re: How to use the place call step in the script

Sounds like you're on the right path.  The one thing you didn't mention is whether or not the CTI Port Group's CSS setting can reach a valid pattern to make this call.  CTI Ports have device CSS's only, and it needs to contain the Partition of the pattern you are trying to dial.

Try this: start with a new blank script as follows:

Variables

Contact called_contact = null

String destination = "2001"

int CCG = 2

int CMG = 2

Script

Start

/* Use called_contact, destination, CCG and CMG variables in this step */

called_contact = Place Call (to destination)

  Successful

    Play Prompt (called_contact, SP[weclome])

    Terminate (called_contact)

    End

  NoAnswer

    /* Add Comment */

  Busy

    /* Add Comment */

Invalid

    /* Add Comment */

NoResource

    /* Add Comment */

Unsuccessful

    /* Add Comment */

End

You will need to double check your destination number as I have made up a phone number of 2001.  Enter your desk phone number for testing.  You will also need to double check your CCG and CMG values against what it configured in AppAdmin under: Subsystems > Cisco Unified CM Telephony > Call Control Groups and Subsystems > Cisco Media respectively.  I have made up the ID of 2 for you.

Once you have the script created just like this, and there's no need to save it, just create it, then go ahead and run an Active Debug by pressing F10 on your keyboard to step over each step one at a time.

Report your findings.  If it fails, include any error messages and which branch the Place Call step took.  E.g., NoResource.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.

Re: How to use the place call step in the script

There's several ways to match on a holiday, here's the most simple way.

Variables

Date today = D[now]

Date holiday = D[8/15/2013]

boolean is_holiday = false

Script

If (today.month == holiday.month && today.date == holiday.date && today.year == holiday.year)

  True

    Set is_holiday = true

  False

    Set is_holiday = false

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.
9 REPLIES

Re: How to use the place call step in the script

Sounds like you're on the right path.  The one thing you didn't mention is whether or not the CTI Port Group's CSS setting can reach a valid pattern to make this call.  CTI Ports have device CSS's only, and it needs to contain the Partition of the pattern you are trying to dial.

Try this: start with a new blank script as follows:

Variables

Contact called_contact = null

String destination = "2001"

int CCG = 2

int CMG = 2

Script

Start

/* Use called_contact, destination, CCG and CMG variables in this step */

called_contact = Place Call (to destination)

  Successful

    Play Prompt (called_contact, SP[weclome])

    Terminate (called_contact)

    End

  NoAnswer

    /* Add Comment */

  Busy

    /* Add Comment */

Invalid

    /* Add Comment */

NoResource

    /* Add Comment */

Unsuccessful

    /* Add Comment */

End

You will need to double check your destination number as I have made up a phone number of 2001.  Enter your desk phone number for testing.  You will also need to double check your CCG and CMG values against what it configured in AppAdmin under: Subsystems > Cisco Unified CM Telephony > Call Control Groups and Subsystems > Cisco Media respectively.  I have made up the ID of 2 for you.

Once you have the script created just like this, and there's no need to save it, just create it, then go ahead and run an Active Debug by pressing F10 on your keyboard to step over each step one at a time.

Report your findings.  If it fails, include any error messages and which branch the Place Call step took.  E.g., NoResource.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.
New Member

How to use the place call step in the script

Anthony ,thank you so much.

Really appreciate your help.

I have to say that all my steps was good except the

CMG,in my system it was 0 not 2 that's why it was not working.
Thanks for clarifying this point.

New Question :

How i can make match on holidays ,i mean weedays and time of day it's obvious,but what about
using the script editor to match special month and special date ?
I always get error.
By the way ,i still can't hold to read vol 1 (start with scripting),So confusing.Volume 2 is ok
Actually i am making the script by
intuition
Thanks in advance.

Re: How to use the place call step in the script

There's several ways to match on a holiday, here's the most simple way.

Variables

Date today = D[now]

Date holiday = D[8/15/2013]

boolean is_holiday = false

Script

If (today.month == holiday.month && today.date == holiday.date && today.year == holiday.year)

  True

    Set is_holiday = true

  False

    Set is_holiday = false

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.
New Member

How to use the place call step in the script

Thanks for reply,

1-but what about the other years ,2014,15.... .

Now i am matching only on 2013.

2-I need you to help me in some thing.I want to understand how the script editor work.

For example ,how you knew that you can enter 8/15/2013 in the  date field,i tried to enter only the month and day but it didn't work !  you of course know what to write for each variable.

That's  what i need,Can you advice any book or a real good document to  understand everything (ex.strings,intergers,....etc,and all the options  that can be used with each)

Thanks Anthony

How to use the place call step in the script

1. I'm not sure what you are asking.  Do you want to enter in all of the holidays for the next 10 years?

2. For this specific date literal example, you can find it in the scripting volume 3.

Here is the excerpt from the documentation on date literals:

Date Literals

The date literal is always of type Date. The following are the  different syntax formats you can use to enter a date.

DateLiteral: 
     DateDeclarator [n o w ] 
     DateDeclarator [DateDesignator TimeDesignatoropt] 
 
DateDeclarator [ DateDesignator TimeDesignatoropt ] 
 
DateDeclarator: one of 
     d D 
 
DateDesignator: 
     FullDatePattern: 
            Defined by the pattern "EEEE, MMMM d, yyyy" 
     LongDatePattern: 
            Defined by the pattern "MMMM d, yyyy" 
     MediumDatePattern: 
            Defined by the pattern "MMM d, yyyy" 
     ShortDatePattern: 
            Defined by the pattern "M/d/yy" 
 
TimeDesignator: 
     FullTimePattern: 
            Defined by the pattern "h:mm:ss a z" 
     LongTimePattern: 
            Defined by the pattern "h:mm:ss a z" 
     MediumTimePattern: 
            Defined by the pattern "h:mm:ss a" 
     ShortTimePattern: 
            Defined by the pattern "h:mm a" 

Example Date Literals:

D[12/13/52] 
D[Dec 13, 1952] 
D[Thu, July 4, 2002] 
D[July 5, 2002] 
D[July 7, 2002] 
D[7/6/02] 
D[Thu, July 4, 2002 5:59 PM] 
D[July 5, 2002 5:59 PM] 
D[July 7, 2002 5:59 PM] 
D[7/6/02 5:59 PM] 
D[Thu, July 4, 2002 12:23:59 AM] 
D[July 5, 2002 12:23:59 AM] 
D[July 7, 2002 12:23:59 AM] 
D[7/6/02 12:23:59 AM] 
D[Thu, July 4, 2002 12:23:59 AM CST] 
D[July 5, 2002 12:23:59 AM CST] 
D[July 7, 2002 12:23:59 AM CST] 
D[7/6/02 12:23:59 AM CST] 
D[now] 

Details for the date and time patterns are available in the  documentation of the java.text.DateFormat class. If the string now is used, then  the literal corresponds to the current date in the server's default timezone at  the time the literal is evaluated for the first time.

Each date literal is a reference to an instance of class  java.util.Date.



Copyright © 2002-2010, Cisco Systems, Inc. All rights  reserved.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.
New Member

Re: How to use the place call step in the script

Thank you so much,didn't know that there is volume 3 of the script,will search for it.

1-yes wanted a way to match holida based on day and month cause this is not changing.For example victory day,years changing but day and month are the same.

2-does volume 3 contains information about all other variables or there would be other document ?

Thanks Man,you are really helpful

Re: How to use the place call step in the script

1. Then you could simply not check the year.

Variables

Date today = D[now]

Date holiday = D[8/15/2013]

boolean is_holiday = false

Script

If (today.month == holiday.month && today.date == holiday.date)

  True

    Set is_holiday = true

  False

    Set is_holiday = false

2.  Volume 3 is the document you would use to learn about variable values, etc.  It's quite an indepth read.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.
New Member

Re: How to use the place call step in the script

Thanks Anthony,Great help.

New Member

Re: How to use the place call step in the script

Anthony,i don't know what happened but when i use the place the call  step,i don't here the ringback ? I hear nothing and go to the step of  the ring no answer.

Also I used to use call redirect and everything in the script worked fine ,take a look plz to the pic that i attached.

If the user called any thing execpt  2 the call redirect worked successfully and with invalid number call fall to menu choice.

I need to use the place call step cause of the timeout,cause i need  if the employee didn't answer the call within 30 sec to transfer the caller to the queue.(dial by extension)

Also How to write in the script editor : if the user dialed "2" or nothing (meaning didn't press anything ),cause the place call step didn't fall to next step if the user input nothing and received the error of excpecting minimum of 1 digit.

Thanks in advance.

810
Views
10
Helpful
9
Replies