Привет всем!
Предыстория:
В конце августа установил Cyanogenmod-10.2 на Galaxy S (I9000). И появилась проблема: SMS в любых кодировках приходили нормально, а отправить ни одной SMS не мог. В принципе, весь сентябрь проходил не отправляя SMS, а только перезванивая. Сегодня обновился до последнего Cyanogenmod. И опять SMS не отправляются. Меня это достало и решил разобраться, почему SMS не отправляются.
История:
Оказалось, что вместо нормального номера в SMSC (это номер оператора связи для отправки SMS) у меня прописан «00». Нашёл правильный номер для своего оператора Байкалвестком (он же bwc, ныне Ростелеком) +79025110010
. Как пишут в интернетах, зашёл в настройки, набрав *#*#4636#*#*
. Набираю «+79025110010» номер в поле SMSC, жму «обновить». Думаете, тут пришёл успех, а вот фигушки — «update error».
В результате двухчасового гугления по русским и нерусским интернетам каким-то случайным образом понял, что есть такой формат PDU
для кодирования SMS и как раз он-то мне и нужен. Нашёл вот этот сайт
http://www.smartposition.nl/resources/sms_pdu.html
Там внизу ввёл номер своего SMS центра и мне показали длинный ответ. Первая часть которого как раз и была закодированным в PDU номером SMS центра. Ввёл этот номер в поле SMSC. И всё заработало как надо, SMS отправляются и русские и нерусские.
Вопрос:
Какими инструментами в linux можно сконвертировать любой номер в формат PDU?
Дано (digital): +79025110010
Нужно (PDU): 07919720150110f0
P.S. Русификация конкретно этого пункта в настройках Cyanogenmod выполнена шедеврально:
Как оно есть сейчас:
SMSC: ______ [Обновить] [Обновление]
Хотя по смыслу должно быть:
SMSC: ______ [Запомнить] [Показать]
Eng:
SMSC: ______ [Update] [Refresh]