спасение телефонной книги (вслепую с Samsung SGH-E250 )


bliznezz аватар

bliznezz - Posted on 26 Апрель 2009

не относится к Linux (т.к. было под windows), но околокомпьютерное, про низкоуровневым общением между компьютером и телефоном.
Преамбула. у жены умер телефон (Samsung SGH-E250), красненький =)))

у него умер шлейф. надо подключиться к его памяти и слить с него телефонную книжку.

и так первое что понадобится - это драйвера.
сайт nodevice.ru хочет за подобное - порядка 20грн, имхо дорого =)
официальный сайт http://www.samsungmobile.ru/ хоть и ведет на китайские веб-файлсервера, которые многие имеют проблемы c IIS, но справились со своей задачей. драйвера получены, установлены, и распознали хорошо девайс.

далее - для общения с телефоном выбрал putty. (нужна новая версия putty, которая умеет цепляться к COM-порту)

опроверим работоспособность:

AT+CGMI
SAMSUNG
 
OK
AT+CGSN
357451 01 xxxxxx 0


отлично, вставил сим-карту на которой не надо вводить пин.

смотрим записные книжки которые есть на телефоне:

AT+CPBS=?
+CPBS: ("DC","EN","FD","MC","ON","RC","SM","ME")
 
OK

хмм.... согласно доке должны быть:

  • «SM»: ADN (телефонная книга SIM)
  • «LD»: FDN (фиксированный набор SIM, запрещенная телефонная книга)
  • «MC»: MSISDN (SIM собственный номера)
  • «ON»: EN (экстренные номера SIM)
  • «ME»: LND (комбинированная книга ME и SIM)
  • «RC»: MSD (список пропущенных звонков)
  • «MT»: MT (телефонная книга мобильного устройства)
  • «SN»: SDN (служба набора номера)

От 4 до 8 или 16 цифр согласно значению.... китайцы блин...

ну собственно переключаюсь в каждую из ("DC","EN","FD","MC","ON","RC","SM","ME") и проверяю что в ней есть:

AT+CPBS="DC"
+CPBS: DC,0,30

0 записей из 30.

AT+CPBS="EN"
+CPBS: "EN",3,8

3 экстренные номера.

AT+CPBS="FD"
+CPBS: "FD",0,10
AT+CPBS="MC"
+CPBS: MC,0,30
AT+CPBS="ON"
+CPBS: "ON",1,1

хмм... 1 номер: посмотрим на него

AT+CPBR=1
+CPBR: 0,"80xxxxxxx",129,"xxxx"
+CPBR: 1,"",129,""

какойто номер...
но немного не то. поехали дальше.

AT+CPBS="RC"
+CPBS: RC,0,30
AT+CPBS="SM"
+CPBS: "SM",22,250

это симкарта. поехали дальше.

AT+CPBS="ME"
+CPBS: "ME",112,1000

bingo!

AT+CPBR=1,112
 
+CPBR: 1,"8098xxxyyzz",4,"Имя","фамилия","",6,"",7,"",2,"",5,"","","",0,65535,255,255,65535,"",""
+CPBR: 2,"8097xxxyyzz",4,"","Родственник","",6,"",7,"",2,"",5,"","","День Рождения -2 апреля",1,65535,255,255,65535,"",""
+CPBR: 3,"8063xxxyyzz",4,"","еще один человек","",6,"",7,"",2,"",5,"","","День Рождения-15 сентября",2,65535,255,255,43,"","фотка.jpg"
и так далее..

как оказалось правильная кодировка для работы с кириллицей - UTF-8 =))))

Можно смело относить и к Линуксовой тематике. В консоли делаем так (предположив, что мобила на шнурке является устройством /dev/ttyUSB0):

echo "AT+CGMI" >/dev/ttyUSB0
echo "AT+CGSN" >/dev/ttyUSB0
...

и далее по примеру. Можно еще номер набрать для проверки, или счет проверить (телефончик только на правильный заменяем):

echo "ATDT*123#" >/dev/ttyUSB0

Наверное можно и покультурнее - minicom'ом - не знаю, лично не проверял.

интерактивнее бы, а то просто заслать это просто, а вот вывод получить

эээ, а что, софтины для работы с телефонной книгой нет?
обязательно с консоли?

особо не искал, да и боялся что может не отработать или спросить какоенить подтверждение на экране телефона, который я не вижу

WBR Bliznezz