When the user has been rejected by the server with 404 we know at least these:
- the login credentials are correct (would get 401 otherwise)
- the SIP URI is either wrong
[ - or the user isn't allowed to use OCS. Extremely rare case, why would he try to use SIPE then?]
Currently every 404 creates a new thread in the support forum. Instead Sipe should help the user to at least to try to fix the problem himself. The necessary information can be retrieved via LDAP from the users AD server.
Known information provided by user
First LDAP operation: request root base:
$ ldapsearch -LLL -h DOMAIN.COMPANY.COM -b "" -s base defaultNamingContext
-> defaultNamingContext: DC=XXX,DC=COMPANY,DC=COM (example)
Second LDAP operation: bind with users' credentials and retrieve information from account:
$ ldapsearch -LLL -h DOMAIN.COMPANY.COM -D "ACCOUNT@DOMAIN.COMANY.COM" -W -b "<defaultNamingContext>" -s sub "(&(ObjectClass=user)(samaccountname=ACCOUNT))" msRTCSIP-PrimaryUserAddress mail givenName sn
If LDAP succeeds (and ONLY THEN!!!) present to the user
- if msRTCSIP-PrimaryUserAddress exists: "your sign-in name is xxx"
- otherwise "can't determine your sign-in name. Please try one of these:
givenName . sn + @COMPANY.COM