cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1326
Views
5
Helpful
6
Replies

IPPS - Language and don't show user without number

nbilland
Level 1
Level 1

Hello,

I managed to create a custom directory hosted on an IIS server, but I notice that the language of the directory remains in English. The "User locale" field of the phone is set to "French", but it doesn't seem to be enough.

How can I set the language of my directory? Is it from the ccmcipdctionary.asp file?

I also have a second question, is it possible to display only the users who have a phone number ?

Thanks !

1 Accepted Solution

Accepted Solutions

It looks like the LDAPSearch object can ingest localization files that effect the language-specific text in the XML for displaying directories.  However, the localization file(s) were accessible directly from the CUCM host back in 4.x when it was installed on a standard Windows OS, and now that modern CUCM is installed as an opaque (Linux) appliance, there is no way to retrieve any such localization file(s) off the disk. 

Using my wiles, I can confirm that there are no files anything like ccmcipdictionary.* on CUCM 14, so I suspect this whole localization file concept has changed and ccmcipdictionary.asp has been lost to time...

This means localization support with LDAPSearch won't work either   Two options I can think of:
* After having LDAPSearch generate the XML list output, do a global search/replace to replace the standard US_EN text tokens in the XML document with localized versions you implement/source yourself.
* Abandon the LDAPSearch object, and build a modern web service that simply outputs the expected XML to send to the phones.  This sample attempts to do just that using Node/Express/EJS - unfortunately it doesn't implement any localization at the moment, but you have the full source code to modify as needed: https://github.com/CiscoDevNet/ipps-javascript-samples

View solution in original post

6 Replies 6

dstaudt
Cisco Employee
Cisco Employee

Is your directory based on localizeddirectory.asp from the SDK?  Fairly amazed you got it working as the sample is very old/out-of-date...
From the header comments, it looks like you will have had to configure your directory app as the target for the Directories URL for the enterprise (or individual phone)

dstaudt_0-1668617183041.png

which should result in the phone including a 'locale=XXX' URL query parameter when it retrieves the URL (might double check this with Wireshark.)  The .asp script seems to extract this locale and store it in the session for later reference.
You could also 'hard-code' the locale by including your own 'locale=XXX' URL query parameter in the service URL for your app - e.g. if you have it configured as a regular service, and not as the base Directory URL.
Also keep in mind this setting effects how the phone determines the Directories URL to actually use:

dstaudt_1-1668617506337.png

 

The LDAPSearch COM object doesn't seem to have an option for excluding results with no phone number - but I assume you can do that by modifying the LDAP search base specified, i.e. by adding (telephoneNumber=*)

Do you think I should include this LDAP filter in the code of the localizeddirectory.asp file?

Yeah, my directory is based on localizeddirectory.asp from the SDK. Thanks, I feel like Victor Frankenstein with your message !

I already made the changes on the CUCM to indicate to use "Both" sources for services provisioning. 

I also hard specified the local variable in the localizeddirectory.asp file, but nothing to do. In the code of localizeddirectory.asp file, the local variable is only used in the following variable:

var fileName = "c:\ciscowebs\ipphoneservices\ccmcip\locales\" + locale + "\ccmcipdictionary.asp"

However, I don't have this path (or a similar one) in the SDK... So, I don't know what is ccmcipdictionary.asp and if is the one I need...

I tried to see if it was on the CUCM, in vain...

It looks like the LDAPSearch object can ingest localization files that effect the language-specific text in the XML for displaying directories.  However, the localization file(s) were accessible directly from the CUCM host back in 4.x when it was installed on a standard Windows OS, and now that modern CUCM is installed as an opaque (Linux) appliance, there is no way to retrieve any such localization file(s) off the disk. 

Using my wiles, I can confirm that there are no files anything like ccmcipdictionary.* on CUCM 14, so I suspect this whole localization file concept has changed and ccmcipdictionary.asp has been lost to time...

This means localization support with LDAPSearch won't work either   Two options I can think of:
* After having LDAPSearch generate the XML list output, do a global search/replace to replace the standard US_EN text tokens in the XML document with localized versions you implement/source yourself.
* Abandon the LDAPSearch object, and build a modern web service that simply outputs the expected XML to send to the phones.  This sample attempts to do just that using Node/Express/EJS - unfortunately it doesn't implement any localization at the moment, but you have the full source code to modify as needed: https://github.com/CiscoDevNet/ipps-javascript-samples

Thank you, your JS solution is much better than the SDK and I managed to achieve the different goals!