GNOKII Version 0.6.5. Телефон - Ericsson T39m. Соединяются через инфракрасный порт посредством Tekram 410u. Gnokii использует неправильную кодировку при чтении записей телефонной записной книжки. Из протокола обмена: - узнаёт текущую кодировку: write: [AT+CSCS?<cr>] read : [AT+CSCS?<cr><cr><lf>+CSCS: "GSM"<cr><lf><cr><lf>OK<cr><lf>] Текущая кодировка - GSM. - узнаёт, какие кодировки телефон поддерживает: write: [AT+CSCS=?<cr>] read : [AT+CSCS=?<cr><cr><lf>+CSCS: ("GSM","IRA","8859-1","ERICSSON","UTF-8")<cr><lf><cr><lf>OK<cr><lf>] Подерживаются GSM, IRA, 8859-1, ERICSSON, UTF-8. - выставляет желаемую кодировку: write: [AT+CSCS="HEX"<cr>] read : [^@d+CSCS="HEX"<cr><cr><lf>+CME ERROR: 100<cr><lf>] С какого, простите, бодуна тут HEX? разумеется, в ответ error. Впрочем, гнокии её игнорирует. ... выбор хранилища пропустим... - читает запись телефонной книги: write: [AT+CPBR=199<cr>] read : [AT+CPBR=199<cr><cr><lf>+CPBR: 199,"<какой-то-номер>",129,"???? ????????/M"<cr><lf><cr><lf>OK<cr><lf>] Видим, что имя нечитаемое. В то же время, при ручной работе через minicom: > AT+CSCS=? +CSCS: ("GSM","IRA","8859-1","ERICSSON","UTF-8") > AT+CSCS="UTF-8" OK > AT+CPBR=199 +CPBR: 199,"<какой-то-номер>",129,"п║п╟я┬п╟ п п╬я─п╪п╣п╫п╬п╨/M" ну а `echo п║п╟я┬п╟ п п╬я─п╪п╣п╫п╬п╨ |iconv -f utf-8 -t koi8-r` даёт уже вполне осмысленное "Саша Корменок".
Уфф... я не пользуюсь сейчас этим пакетом, если хотите -- проверьте, не исправилось ли в текущей версии и если хотите -- можете взять пакет под опёку.
(In reply to comment #1) Нет, в текущей версии (0.6.7) не исправили. Я в принципе нашёл место, где там кодировка выбирается (процедура AT_SetCharset в файле common/phones/atgen.c), но грязным хаком там дело не решилось, потому как через неправильную кодировку ломается вообще весь обмен с телефоном, возможно, надо будет написать еще пару процедурок типа char_utf8_decode и char_utf8_decode. На это я уже вряд ли замахнусь, хотя покопаться еще попробую. Под опеку пакет взять не рискну - не чувствую в себе достаточной экспы. Кстати, там еще проблемка с разбором pdu для исходящих СМСок... вешать на это багу или бесполезно?
(In reply to comment #2) > Под опеку пакет взять не рискну - не чувствую в себе достаточной экспы. Да не бойтесь, сломаете -- коллеги расскажут. Это всё равно не будет хуже текущего состояния ;-) Я-то его собрал (или подобрал?) скорее посмотреть, вскоре перебрался на gammu и тут и сижу. > Кстати, там еще проблемка с разбором pdu для исходящих СМСок... вешать на это > багу или бесполезно? Полезно, раз уж нашли. Но лучше сразу иметь в виду, что лучший майнтейнер -- это заинтересованный в работоспособности.
Так возьмётесь?
(In reply to comment #4) > Так возьмётесь? Нет, мне сейчас трёх работ хватает. Продался буржуям, пытаюсь донести линукс до народных масс. :)
Created attachment 1448 [details] Патчи для гнокии, позволяющие понимать UTF-8 в телефоне. Методами грязного хака сотворил пару патчей (для 0.6.5 и 0.6.11), позволяющих понимать кодировку UTF-8 в телефоне. Все закидоны ЕрикаТ39 это не вылечит, но вытянуть из него телефонную книгу с русскими записями поможет. Так же, патчики могут быть полезны с какими-нибудь другими телефонами, юзающими UTF-8.
Пф. Ну так если патчить есть интерес -- то делов-то пакет собрать ;-) Пока же дарю это дело raorn@, собравшему 0.6.11-alt1.
Автору о проблеме сообщили, патчи тоже передали. Я думаю пока не прикладывать и подождать 0.6.13. Тем более что Михаил сказал что ему "не горит".
Автор ничего не говорил? :)
Давно перебрался на gammu, чего и другим пользователям gnokii желаю.