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 SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Cisco Call Manager Speed Dial with Pause 4

Status
Not open for further replies.

fitzwaterj

IS-IT--Management
Jun 26, 2008
16
0
1
US
Hi, I have CCM v6.1 I know how to program a speed dial on the phone but it won't let me do a comma for a pause. Does anyone have a IP Phone Service setup that you can help me with? Thank you. Jerry
 
It is my understanding there is no "pause" feature in Call Manager. Call Manager express does allow for a pause fetaure but it is my understanding that it has never been added to Call Manager. At least it is not available in CM 6.x.

I also understand Cisco has been asked to add this as a feature.

Really it is fundemental in my opinion since it is needed in so many places.
 
Unity allows you to add pauses in call handlers, but I know thats not what you want.

Hope this helps.
 
This has been a feature request since call manager version 3.3 but never been added. You will probably have to look into a 3rd party product or implement IPCC and run a script that does that for you (way to much work and support if you ask me). However if it is a vital business need you might just have to.
 
this would be way too much work but...
you could make non DID numbers up as a CTI Route point forward then to voice mail and make a call handler for the number with the pause then assign the non DIDs as speed dials...again too much work to setup and also to maintain.

Hope this helps.
 
Thank you all for your replies. I called our vendor and he installed an app that runs on IPCC for an autodialer. All I have to do now is subscribe the service to the doctors phone and enter in the dial string. If anyone needs help with this reply back to this thread and I can show you what they did.
 
If you wouldn't mind posting it anyways... never hurts having another lil tid bit on the boards to use =)

Glad you got it workin!

------------------------------------
Dallas, Texas
Telecommunications Tech
CCVP, CCNA, Net+

CCNP in the works
 
Fitzwaterj,

I am currently in the same boat that you once were. Would you mind posting what was completed by your vendor?

Thanks,

Han
 
Han,
Thanks for the post. I forgot about posting the solution. We modified the can autodialer from cisco. Not for sure where we got it from. I found it on my IPCC. See the attached file. The main thing you modify in this file is the getparameter("dialstring"). I don't think you will need the phonepush stuff. That was for our phones to login/user assoc.
Add an autodialer phone service in the CCM. New parameter dialstring. Make sure the spelling and case is the same. When you subscribe to the service put the number you want to call in the dialstring parameter.
Ex. 95551212,,,,,1234 This will call the number (comma's are pause's then put in the psw 1234.

I couldn't attach the file. So here it is txt only.

Good Luck
Jerry


<%@ page language="java" import="java.io.*, java.net.*, java.util.*, javax.xml.parsers.*, org.w3c.dom.*, com.cisco.ipphone.sdk.*" %>

<%
//////////////////////////////////////////////////////////////////////
//
// Title: AutoDialer
// Author: kstearns
// Source File(s): autodialer.jsp
//
/////////////////////////////////////////////////////////////////////////
// Description:
//
// AutoDialer is a simple example of how a custom phone service can be used to dial numbers which require
// pauses in the dialing sequence - long distance services, calling cards, voicemail access, etc.
// When the user subscribes to the AutoDialer Phone Service, they will be required to enter a dial string.
// When the user invokes the AutoDialer service from their phone, their specified dial string will be dialed.
//
////////////////////////////////////////////////////////////////
// Requirements and Caveats:
//
// - Client: XML services-enabled IP Phone
//
// - When defining the IP Phone service on CallManager, a required Phone Service Parameter with the
// following properties must be added:
//
// Parameter Name: dialstring
// Parameter Display Name: The string of digits and pauses to be dialed
// Parameter Description: The string of digits to be dialed. The digits (0-9*#) are valid.
// Commas (,) can also be used to insert 1-second pauses.
// Example: 918005551212,,,,1,6185551212,,12345678#
// Parameter is Required: True (checked)
//
// - In order for AutoDialer to work, the PUSH userID and PUSH password hard-coded below
// MUST have authority to PUSH to all phones used by the application.
// For example, a new application user ID of 'sdkapps' could be created in the Global Directory.
// All phones using the application are then selected as Associated Devices for user 'sdkapps'.
//
// NOTE: For large-scale PUSH applications, associating hundreds or even thousands of devices to a single user
// (for purposes of PUSH authentication) is *NOT ACCEPTABLE*.
// In this case, the PUSH authentication *MUST* be offloaded from the CallManager server to an external
// web server - see the PushAuthenticate ASP sample script for more information.
//
// NOTE: The key to getting rapid, sequential PUSHes to execute properly is to use persistent HTTP 1.1 connections
// for the HTTP POST (PUSH). This keeps the TCP connection open rather than tearing it down and rebuilding
// for each PUSH. The Phone.push() methods have been specifically designed to take advantage of persistent connections
// and minimize overhead on the phone.
// Also note that we are not retrieving the result of the push (getResult = false) in this application because it
// would have caused additional unwanted delay between PUSHes. Only retrieve the result if you must verify the success
// of the push - in this case, we assume it completes successfully and are not concerned enough to check it.
//
///////////////////////////////////////////////////////////////////

//
// Edit the following Strings for your environment.
// This is for sample purposes only - placing passwords and other
// sensitive information in an open text file is obviously NOT recommended !!!
//

String phoneIP = request.getRemoteAddr();

String pushUserId = "phonepush";
String pushPassword = "12345";

String dialstring = request.getParameter("dialstring");
String screen = request.getParameter("screen");



Phone.push("Key:Speaker", phoneIP, pushUserId, pushPassword, false);

// Wait a second for phone to go off-hook
try {
Thread.sleep(1000);
} catch (Exception e) {};

// Now step thru each digit of the dial string and process it

for (int i=0; i < dialstring.length(); i++) {
String digit = dialstring.substring(i, i+1);

if (digit.equals(",")) {
// If it's a comma, then pause for one second and continue
try {
Thread.sleep(1000);
} catch (Exception e) {};
}
else if (digit.equals("#")) {
Phone.push("Key:KeyPadPound", phoneIP, pushUserId, pushPassword, false);

}
else if (digit.equals("*")) {
Phone.push("Key:KeyPadStar", phoneIP, pushUserId, pushPassword, false);
}
else {
// We assume here that the digit must be a number, so we can append it to the KeyPad URI
Phone.push("Key:KeyPad"+digit, phoneIP, pushUserId, pushPassword, false);
}
// Pause for 100ms before dialing next digit
// This helps get the timing of the keypresses closer to the timing of digit playout on a PSTN gateway.
try {
Thread.sleep(100);
} catch (Exception e) {};

}


Phone.push("Key:Services", phoneIP, pushUserId, pushPassword, false);
Phone.push("SoftKey:Exit", phoneIP, pushUserId, pushPassword, false);
Phone.push("Key:Services", phoneIP, pushUserId, pushPassword, false);



// THIS SAMPLE APPLICATION AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND BY CISCO,
// EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY
// FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, SATISFACTORY QUALITY OR ARISING FROM A COURSE
// OF DEALING, LAW, USAGE, OR TRADE PRACTICE.  CISCO TAKES NO RESPONSIBILITY REGARDING ITS USAGE IN AN
// APPLICATION., THE APPLICATION IS PROVIDED AS AN EXAMPLE ONLY, THEREFORE CISCO DOES NOT MAKE ANY
// REPRESENTATIONS REGARDING ITS RELIABILITY, SERVICEABILITY, OR FUNCTION.  IN NO EVENT DOES CISCO
// WARRANT THAT THE SOFTWARE IS ERROR FREE OR THAT CUSTOMER WILL BE ABLE TO OPERATE THE SOFTWARE WITHOUT
// PROBLEMS OR INTERRUPTIONS. NOR DOES CISCO WARRANT THAT THE SOFTWARE OR ANY EQUIPMENT ON WHICH THE
// SOFTWARE IS USED WILL BE FREE OF VULNERABILITY TO INTRUSION OR ATTACK. THIS SAMPLE APPLICATION IS
// NOT SUPPORTED BY CISCO IN ANY MANNER. CISCO DOES NOT ASSUME ANY LIABILITY ARISING FROM THE USE OF THE
// APPLICATION. FURTHERMORE, IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INCIDENTAL OR
// CONSEQUENTIAL DAMAGES, LOST PROFITS, OR LOST DATA, OR ANY OTHER INDIRECT DAMAGES EVEN IF CISCO OR ITS
// SUPPLIERS HAVE BEEN INFORMED OF THE POSSIBILITY THEREOF.


%>
 
Hello Fitzwaterj,

Thanks for reply; the information is very much appreciated.

I was hoping that you might be able to address a couple of questions for me. If you are not sure that's ok, just wanted to ask.

I see in the remarks that the source file is autodialer.jsp. The programming that you have copied is it from the autodialer.jsp file? Is a script builder or other programming App required to build and run these programs?

Do you happen to know how the vendor implemented this file into IPCC?

When referencing this script in the phone services of CM what is the URL that is being used?

I am trying to gain a better understanding of how these scripts are tied into the phone services of CM and how to bring the two together (CM Phone Services and IPCC scripts).

Thanks again and have a great day.

Han
 
Han,

All the text below my name Jerry is the file autodialer.jsp alot of that text is just notes or rem statements.

The vender that helped me is CDW.

The URL I have in the Service URL area is This is an IP address of a virtual server that houses my dashboard and other web info. The jsp file is put on this server. I guess if you wanted to put it on the IPCC you could. My vender just set things up this way.

Good Luck Han,
See ya
Jerry
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top