Возможно проблемы в кодировке при обращении к LDAP

Здравствуйте.

Ejabberd развёрнут под Ubuntu Server. Ldap - AD Win2008Srv. Авторизация работает. Не могу разобраться с mod_shared_roster_ldap.

В AD есть группы jabber-it, jabber-sales, jabber-marketing и т.д. в которые добавлены пользователи. У групп есть кириллическое описание (поле description) aka название одела: IT отдел, Отдел продаж, Отдел маркетинга. Я хочу сделать общий список контактов, в который вывести все названия отделов на русском и в них всех сотрудников отделов (членов соответствующих групп). Пользователи разложены по различным OU в соответствии с отделами и географической принадлежностью.

По примеру Deep DIT http://ejabberd-msrl.alioth.debian.org/doc/0.5.2/msrl.html#htoc18 я построил вот такой конфиг:

{mod_roster,   []},

{mod_shared_roster_ldap, [
    {ldap_servers, ["192.168.0.14"]},
    {ldap_base, "dc=profit,dc=local"},
    {ldap_rfilter, "(&(objectClass=group)(cn=jabber-*))"},
    {ldap_filter, ""},
    {ldap_gfilter, "(&(objectClass=group)(cn=jabber-*)(cn=%g))"},
    {ldap_groupdesc, "description"},
    {ldap_memberattr, "member"},
    {ldap_ufilter, "(&(objectClass=user)(cn=%u))"},
    {ldap_userdesc, "displayName"}
]},

Ростер не строится, но после включения mod_shared_roster_ldap появилась группа "Общие".

В логах ошибки:

=ERROR REPORT==== 2014-09-29 13:05:56 ===
E(<0.360.0>:eldap_utils:166) : failed to parse LDAP filter:
** Filter: []
** Reason: {error,["syntax error before: ",[]]}

Она уходит если убрать {ldap_filter, ""}.

В ответах от Ldap-сервера есть невонятные вещи, вот к примеру запрос пользователей группы jabber-1c:

=INFO REPORT==== 2014-09-29 13:05:59 ===
D(<0.365.0>:eldap:696) : {searchRequest,
                          {'SearchRequest',"dc=profit,dc=local",wholeSubtree,
                           neverDerefAliases,0,5,false,
                           {'and',
                            [{equalityMatch,
                              {'AttributeValueAssertion',"objectClass",
                               "group"}},
                             {substrings,
                              {'SubstringFilter',"cn",
                               {'SubstringFilter_substrings',
                                [{initial,"jabber-"}]}}},
                             {equalityMatch,
                              {'AttributeValueAssertion',"cn","jabber-1c"}}]},
                           ["cn","description","member"]}}

=INFO REPORT==== 2014-09-29 13:05:59 ===
D(<0.365.0>:eldap:767) : {searchResEntry,
                             {'SearchResultEntry',
                                 "CN=jabber-1c,OU=Jabber,OU=Groups,DC=profit,DC=local",
                                 [{'PartialAttributeList_SEQOF',"cn",
                                      ["jabber-1c"]},
                                  {'PartialAttributeList_SEQOF',
                                      "description",
                                      [[49,208,161,32,208,191,209,128,208,190,
                                        208,179,209,128,208,176,208,188,208,
                                        188,208,184,209,129,209,130,209,139]]},
                                  {'PartialAttributeList_SEQOF',"member",
                                      [[67,78,61,208,149,208,178,208,179,208,
                                        181,208,189,208,184,208,185,32,208,
                                        162,208,186,208,176,209,135,44,79,85,
                                        61,49,67,44,79,85,61,80,114,111,102,
                                        105,116,85,115,101,114,115,44,68,67,
                                        61,112,114,111,102,105,116,44,68,67,
                                        61,108,111,99,97,108]]}]}}

Если вместо description запросить другое поле, в латинице - оно придёт в читабельном виде.

Также в группах, в которых много пользователей массив

[67,78,61,208,149,208,178,208,179,208,
181,208,189,208,184,208,185,32,208,
162,208,186,208,176,209,135,44,79,85,
61,49,67,44,79,85,61,80,114,111,102,
105,116,85,115,101,114,115,44,68,67,
61,112,114,111,102,105,116,44,68,67,
61,108,111,99,97,108]

повторяется по колличеству пользователей.

Мне кажется что проблема или в кодировке или в самом модуле. Ни разу не отрицаю что я и сам мог накосячить.

Подскажите пожалуйста в чём может быть проблема.

Syndicate content