cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
754
Views
0
Helpful
5
Replies

How do I modify the CiscoIPPhone Schema?

alan_joseph
Level 1
Level 1

Can someone school me up on where the CiscoIPPhone.xsd schema file is located and how it is accessed by the phones? I would like to add an element to the CiscoIPPhoneDirectoryEntryType object.

I have a copy of the schema from the SDK, though I don't know where I need to place it on CCM, or if it gets integrated into the phone loads somehow ... Here's what I'm looking to add:

<xsd:element name="Department" nillable="true">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:maxLength value="32"/>

<xsd:minLength value="0"/>

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

Thanks much!

5 Replies 5

stephan.steiner
Spotlight
Spotlight

Hmm - interesting idea. However, I'd bet a couple beers you'll never get this to work. The reason is simple: teaching the phone to accept extended XML is one thing - but you also want it to be rendered, and you definitely only get that by modifying the phone's XML parser in the firmware. Looking at how XML is used in other APIs, I also very much doubt that the phone has a built-in stylesheet to transform the XML input into renderable elements - rather I suspect the phone does a line by line parsing of the XML, and can directly render the elements it can handle (which must not be confused with what's in the schema.. look at it.. it's hand edited)

Hi Stephan,

Thanks for the reply, and that's a bet I reckon I would be losing ;) I'm very new to the whole development scene and am still trying to figure out how all of the pieces fit.

My end goal is just to be able to search on and display DepartmentNumber info as configured in the CCM Admin Global Directory (DC Directory)

I've been able to successfully get CCM to return the DepartmentNumber as part of a Directory Entry (Querying from a browser - see attached), though since "Telephone" and "Name" are the only two extensions to the DirectoryEntry object, I don't know how to get the info to display on the phone ... I just get an XML Parse error when I run the query on the phone.

I've attached my xmldirectorylist.asp file for reference. Can you take a look and let me know what you think? Here's what I'm using to return the DepartmentNumber info ...

Response.Write("\n");

Response.Write("" + fullname + "\n");

Response.Write("" + users[i].TelephoneNumber + "\n");

Response.Write("" + users[i].DepartmentNumber + "\n");

Response.Write("\n");

Thanks in advance!

joe

I'm afraid you'll have to write your own directory from scratch.. using CiscoIPPhoneInput to enter the query parameters, CiscoIPPhoneMenu to list the results, and CiscoIPPhoneText to list result details (e.g. the department, and you can put other stuff there as well.. e.g. I've written phone books that list the primary number on the menu, then list the cellphone and personal phone in the detail page and offer softkeys to call one of the numbers found - naturally I'm using another data source than the CCM directory to get additional data).

Hello Stephan,

Is it possible to post the files you have developped, I have the same need.

In fact, it is a bit more simple, I want to display on the Directory search result the ipphone number (ldap attribute = numeroCourt) instead of the standard telephonenumber attribute.

I am using an alternate LDAP directory.

Thanks in advance for your help.

I agree with the earlier posts that you can't make the phone accept an additional XML element that is not in the original schema. You will need to write a custom application that searches LDAP and uses CiscoIPPhoneMenu object to display the matched numbers. This will give you the flexibility to display any attributes (i.e IP phone number, department, title, etc.) I had written such an application years ago. It should take 1-2 days to write it. Obviously you can get fancy with it and start pagination (only 5 phones per page with buttons to scroll next and prev. on the list, etc.)