cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2835
Views
5
Helpful
17
Replies

CUPC 8.0 LDAP pics

Stoyan Stoitsev
Level 8
Level 8

Hello,

I have CUPS 8.0.2 and users are with CUPC 8.0 and 7.1. Users on CUPC 7.1 are able to see photos from the LDAP and those on 8.0 cannot. CUPS is integrated with LDAP and is fetching the jpegPhoto attribute, integration is non-secure with TCP on port 389. CUPC 8.0 endpoints are configured in CUCM as CSF clients.

Best regards,

Stoyan

17 Replies 17

htluo
Level 9
Level 9

Are you able to search LDAP from CUPC 8?

Michael

http://htluo.blogspot.com

Yes

would you be able to do a packet capture while CUCIMOC logs in?

Michael

http://htluo.blogspot.com

Hello,

Here is a capture. It is a sniff directly from my PC and the CUPC is on it also.

Yufang Zhou
Cisco Employee
Cisco Employee

can you attach cupc 8.0 detail logging/ PRT ?

Hello Jeffrey,

I am not sure what exactly are these logs that you requested. Can you give a hit

Can we get any feedback on this?  I see Nathan's reply below but that does not fix PICTURES from LDAP.  That sets up an external web service to fetch from.

I am having same issue.  Pulling from Web Service works just fine, however changing to 389 and pulling from LDAP (MS AD) does not work.

It would be great to have an update to the original problem and not a work around suggested.  The work around does work but still does not address why it does not pull from AD.

Pulling from a webservice works for us because we have several other applications that need a UNC path.

Do you have the thumbnailPhoto attribute index? What program are you using to put in pictures? We used dameware NT utilities - If you have an Exchange server you can also do it through powershell.

Thanks for replying Nathan.......We are trying with the "thumbnailPhoto" attribute within AD.  We have pushed the schema out

to the GCs and we are using port 389 as referred to in the documentation.

I hear you on the web service.  We currently use the webservice but are moving away to use AD for all pictures for all of our products that will use it.

Hi


Just thought I'd throw in my two pence - I set up retrieval of photos from LDAP a while back (CUPS6, with suitably old version of CUPC) but I used the jpegPhoto attribute, not thumbnailPhoto. I couldn't tell you what the difference is between the two, but a quick google of the two attributes suggests there are some technical differences in the way they are either stored or retrieved.

Maybe try populating a couple of users' jpegPhoto attributes and see if you get any luck if you reconfigure the CUPC attribute map. Also keep the pictures small (while testing, as I imagine there's some upper limit on the size of the data you can store, and the size of the data you want to replicate round the place). What is/isn't supported may well have changed in CUPC 8.0

Final comment - if you are using port 389, you aren't using the Global Catalog service even if the DC you point at runs the GC service, so it doesn't matter if you've edited the schema to replicate the thumbnail attribute to the GC or not.

I used this script to load the jpegs (the name of each jpeg minus the .jpeg extension was the sAMAccountName or possibly the Display Name of the corresponding user if I recall correctly):

Const ForReading = 1
InDir = "c:\PICS\"
Set fso = CreateObject("Scripting.FileSystemObject")
set oIADS = GetObject("LDAP://RootDSE")
strDefaultNC = oIADS.Get("defaultnamingcontext")
Set theConn = CreateObject("ADODB.Connection")
theConn.Provider = "ADsDSOObject"
theConn.Open "ADs Provider"
Set theCmd  = CreateObject("ADODB.Command")
theCmd.ActiveConnection = theConn
Set objRecordSet = CreateObject("ADODB.Recordset")
For Each tFile In fso.GetFolder(InDir).Files
    tName = tFile.Name
    'Gets the persons Name from the file by stripping the extention.
    tName = Left(tName, InStrRev(tName,".")-1)
    'You may need to tweak this bit depending on your naming conventions.
    strQuery = "<>;" & _
                              "(&(objectClass=person)(name=" & tName & "));name,adspath;subtree"
    theCmd.CommandText = strQuery
    Set objRS = theCmd.Execute
    If objRS.RecordCount = 0 Then
      MsgBox "Can't find account for " & tName
    Else
      Set objUser = GetObject(objRS("adspath"))
      ObjUser.Put "jpegPhoto", ReadByteArray(tFile.Path)
      ObjUser.SetInfo
    End If
Next
'Stolen from http://www.ericphelps.com/q193998/index.htm
Function ReadByteArray(strFileName)
    Const adTypeBinary = 1
    Dim bin
    Set bin = CreateObject("ADODB.Stream")
    bin.Type = adTypeBinary
    bin.Open
    bin.LoadFromFile strFileName
    ReadByteArray = bin.Read
End Function

Aaron

Please rate if useful...

Aaron Please remember to rate helpful posts to identify useful responses, and mark 'Answered' if appropriate!

Thanks for responding Aaron.

I do realize using port 389 is not GC.  We extended Schema for other services.  I poorly wrote that t osay we have tried changing to port 3268 but it doesn't work.  The documentation also states that using the 3268 GC port won't retrieve pictures from AD.

I can't try the jpegPhoto Attribute as we no longer have that available in 2008 AD.  The attribute is thumbnailPhoto.

We had no luck getting them to read from Active Directory (LDAP or what ever). What we had to do instead was setup IIS with a virtual directory that points to a directory with the sAMAccountName as the pictures file name. We then went into the LDAP mapping on CUPS and entered the url.

Under Application --> Cisco Unified Personal Communicator --> Settings for photo we put in http:///pics/%%sAMAccountName%%.jpg

Hello Nathan,

Is this for version 8 or 7?

In this instance 8 - works great.