Rus: Доброго времени суток всем! Я так понимаю что могу обратиться на руссоком ;-)
Я использую сервер jabber.ru и через него пытаюсь выйти в IRC. Так как прямого выхода нет, я использую irc.jabber.snc.ru. Теперь собственно о кодировке.
По-умолчанию irc модуль сервера ejabberd использует кодировку koi8-r. В настройках IRC канала можно указать кодировку, но IRC сервера (в частности irc.nov.ru) не понимают строку "koi8-r", они понимают только "koi", а по-умолчанию используют "win". Соотвественно получается что если ничего не указывать в кодировке то в IRC видны буквы в неправильной кодировке. Если указывать "koi", то вообще никакие русские буквы не видны. Я подозреваю, что это связано с тем, что irc-модуль сервера не понимает что такое "koi", ему нужна строка "koi8-r". Можно ли как-то решить эту проблему? Мне кажется что если сделать более мягкие условия выбора кодировки или добавить в конфигурацию сервера соответствующие настройки, то можно добиться работоспособности IRC-модуля с русскими IRC-серверами.
С уважением,
Глеб "GLoom" Лебедев.
mod_irc не посылает
mod_irc не посылает введенную кодировку на сервер. Он просто использует ее для перекодировки в/из UTF-8. Так что, полагаю, достаточно указать кодировку "cp1251".
Хм... Когда я ука
Хм... Когда я указываю в параметрах irc у себя следующую строку -
[{"irc.nov.ru","koi"}]
то она явно отправляется на сервер, так как если напиать
[{"irc.nov.ru","koi8-r"}]
то IRC сервер ругается на koi8-r и говорит что не может понять что это за фигня, что ему нужно одно из следующих - koi, win, translit..
Значит, я неправ
Значит, я неправильно понимаю, как работает mod_irc.
может я не по
может я не по теме... но из прочитанного я так и не понял что мне прописать, дабы заработал IRC внутри локалки.
обьясняю.
есть локалка порядка 1000 компов.
в сети имена распределяются вида vova.homnet.lan, masha.homnet.lan и так далее...
сервер с ejabberd на винде 2003, на компе rol.homnet.lan (на этом же компе сервер IRC с портом 6667 и кодировкой 1251)
для не резкого перехода на новый клиент нужно организовать "связь"...
в конфиге написал (если неправ то поправьте)
* * *
{mod_private, []},
{mod_irc, [{"rol.homnet.lan","cp1251"}]},
{mod_muc, [{access, muc},
{access_create, muc},
{access_admin, muc_admin}]},
* * *
в жаббербраузере появляется пункт с названием irc.rol.homnet.lan
при попытке создать комнату или войти ругается и выдаёт
ERROR!
Chat@irc.rol.homnet.lan/rol
код ошибки:400
Сообщение об ошибке:Bad Request
помогите пожалста разобраться в проблеме :(
У меня с кодировкой работает так
{mod_irc, [
%{host,"irc.domain.im"},
{default_encoding, "cp1251"}
]}
Спорить не о чем
Спорить не о чем, mod_irc и пытается выставить заданную кодировку на irc сервере и использует её для последующей перекодировки в utf-8:
<pre>
..
io_lib:format("CODEPAGE ~s\r\n", [StateData#state.encoding])),
..
</pre>
Раз на irc.nov.ru по умолчанию используется win, то сообщение об ошибке от irc сервера уже не имеет значения — действительно достаточно лишь задать cp1251 (aka windows-1251).
и, кстати, некоторые синонимы назва
и, кстати, некоторые синонимы названий кодировок irc.nov.ru всё-таки понимает: