Tell me please, who used the module mod_shared_roster_ldap. Is it possible to configure the module so that the user's contact list show only those groups in which the user is a member, but not all groups that exist.
Ejabberd screwed to the latest version of mod_shared_roster_ldap. Configured according to the official leadership. Everything works, but users have the all the groups, which in principle exist, and not just those in which the user is a member.
Users are in ou=Users,ou=jabbers,dc= est,dc=ru
Example user:
dn: cn=user1,ou=Users,ou=jabbers,dc=test,dc=ru
displayName: Vasya_Pupkin
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
userPassword: XXXXXXX
cn: user1
sn: user1
Groups are in ou=jabber-groups,ou=abbers,dc=test,dc=ru
An example of one of the groups:
dn: cn=test,ou=jabber-groups,ou=jabbers,dc=test,dc=ru
ou: jabber-groups
objectClass: top
objectClass: groupOfUniqueNames
description: Test Group
uniqueMember: cn=user1,ou=Users,ou=jabbers,dc=test,dc=ru
uniqueMember: cn=user2,ou=Users,ou=jabbers,dc=test,dc=ru
cn: test
Part of the package ejabberd.conf
(Mod_shared_roster_ldap, [
(Ldap_base, "ou=jabbers,dc=test,dc=ru"),
(Ldap_rfilter, "(objectClass=groupOfUniqueNames)"),
(Ldap_filter, ""),
(Ldap_gfilter, "(&(objectClass=groupOfUniqueNames)(cn=%g ))"},
(Ldap_groupdesc, "description"),
(Ldap_memberattr, "uniqueMember"),
(Ldap_memberattr_format, "cn =%u,ou=Users,ou=jabbers,dc=test,dc=ru"),
(Ldap_ufilter, "(&(objectClass=inetOrgPerson)(cn=%u))"},
(Ldap_userdesc, "displayName")
])
The third day of agony, thinking has to leave the module mod_shared_roster :-)
Thanks in advance!