Tuesday, April 21, 2009

Cisco IPPhoneDirectory Exit softkey functionality

See http://webmaxtor.blogspot.com/2009/04/cisco-ciscoipphonedirectory-with-next.html regarding basic XML formatting and Next / URL softkey implementation.

The problem you will find is once you start paging through multiple directories, the Exit softkey will return you to the previous directory page, rather than the phone's Services menu. To make the Exit key actually exit the service you need to use a response.expires header. Below is an example of an ASP page implementing the header and presenting the XML appropriately.

### sample starts here ###

<% Response.Expires = -1 %>

<%

response.ContentType="text/xml"
response.Write("<?xml version='1.0' encoding='ISO-8859-1'?>")

response.Write("<CiscoIPPhoneDirectory>")
response.Write("<Title>Super Directory</Title>")
response.Write("<Prompt>Super Directory</Prompt>")

response.Write("<DirectoryEntry>")
response.Write("<Name>Test Local Number</Name>")
response.Write("<Telephone>95551212</Telephone>")
response.Write("</DirectoryEntry>")

response.Write("<DirectoryEntry>")
response.Write("<Name>Other Test Number</Name>")
response.Write("<Telephone>95551000</Telephone>")
response.Write("</DirectoryEntry>")

response.Write("<SoftKeyItem>")
response.Write("<Name>Dial</Name>")
response.Write("<URL>SoftKey:Dial</URL>")
response.Write("<Position>1</Position>")
response.Write("</SoftKeyItem>")

response.Write("<SoftKeyItem>")
response.Write("<Name>EditDial</Name>")
response.Write("<URL>SoftKey:EditDial</URL>")
response.Write("<Position>2</Position>")
response.Write("</SoftKeyItem>")

response.Write("<SoftKeyItem>")
response.Write("<Name>Next Page</Name>")
response.Write("<URL>http://mywebserver/CiscoIPPhoneDirectory.asp</URL>")
response.Write("<Position>3</Position>")
response.Write("</SoftKeyItem>")

response.Write("<SoftKeyItem>")
response.Write("<Name>Exit</Name>")
response.Write("<URL>SoftKey:Exit</URL>")
response.Write("<Position>4</Position>")
response.Write("</SoftKeyItem>")

response.Write("</CiscoIPPhoneDirectory>")

%>

### sample ends here ###

Monday, April 20, 2009

Cisco CiscoIPPhoneDirectory with Next key

The Cisco CiscoIPPhoneDirectory service only supports 32 entries. Below is a simple example of implementing a "Next" softkey to access a second list without requiring a "Refresh" header. The second list of numbers would be served by http://yourwebserver/SecondCiscoIPPhoneDirectoryPage.xml in this example.

*** XML sample starts here ***

<CiscoIPPhoneDirectory>
<Title>Special Directory</Title>
<Prompt>Special Directory</Prompt>

<DirectoryEntry>
<Name>A Sample Phone Number</Name>
<Telephone>918005551212</Telephone>
</DirectoryEntry>

<DirectoryEntry>
<Name>Another Sample Phone Number</Name>
<Telephone>918885551212</Telephone>
</DirectoryEntry>

<SoftKeyItem>
<Name>Dial</Name>
<URL>SoftKey:Dial</URL>
<Position>1</Position>
</SoftKeyItem>

<SoftKeyItem>
<Name>EditDial</Name>
<URL>SoftKey:EditDial</URL>
<Position>2</Position>
</SoftKeyItem>

<SoftKeyItem>
<Name>Next Page</Name>
<URL>http://yourwebserver/SecondCiscoIPPhoneDirectoryPage.xml</URL>
<Position>3</Position>
</SoftKeyItem>

<SoftKeyItem>
<Name>Exit</Name>
<URL>SoftKey:Exit</URL>
<Position>4</Position>
</SoftKeyItem>

</CiscoIPPhoneDirectory>

*** XML sample ends here ***

Monday, April 06, 2009

Cisco Unity message to Verizon text tip

Recently I gave up my insanely priced Windows smartphone contract with Sprint and went to a straight voice and text package with Verizon. Now that I am lacking the ability to view my Microsoft Outlook Web Access the question is how do I know when I receive a Unity voicemail message?

I want to avoid voice message delivery since I find it both annoying and a drain on my cell minutes, but without a wireless data package I have no corporate email access. Unity now supports SMS delivery natively but is not implemented at our office. My work around is using Outlook rules.

A user can typically create rules in Outlook that allows identifying incoming messages by sender, subject line, etc. and then performing a function. I have simply created a rule to identify Unity messages by “Voice Message” in subject line, and then forwarding it via email to my cell phone number at vtext.com. Since the vtext service does not accept attachments, I do not receive the voicemail itself and am not billed for the data transfer to my cell, but do receive a text indicating I have a voicemail, including the caller id and name.

Not a bad solution and inexpensive too.