Pořídil
jsem si nový telefon Siemens M65, který v sobě má
integrovaný fotoaparát s kamerou, tak by bylo škoda
to nevyužít. Když jsem byl u Siemensu kupovat USB kabel, tak
jsem se ptal, jestli nemají zkušenosti, jak tento
telefon komunikuje s Linuxem.
7.6.2005 06:00 | Jiří Simon | přečteno 17956×
Bylo mi odpovězeno, že s Linuxem mi to fungovat nebude. Ale i přesto jsem to zkusil a ejhle, ono to funguje a to mnohem lépe než ve Windows XP. Po prvním připojení k Linuxu jsem se až divil, co mi to vše vypsalo. Jedna z informací byla, že se telefon připojil jako zařízeni /dev/ttyUSB0. Což bylo příjemné a dá se říct, že i velice pozitivní, proti tomu co mi řekli u prodejce. Další věcí bylo najít správný program pro komunikaci. Vybral jsem si scmxx
Scmxx je konzolový program, jehož domovská stránka je http://www.hendrik-sattler.de/scmxx/ a aktuální verze 0.7.5. Tento program byl napsán pro Siemens S35i, ale dnes už podporuje snad všechny typy mobilních telefonů značky Siemens. Jeho základní funkce zahrnují detekování připojeného telefonu, psaní a čtení SMS zpráv, archivace telefonních seznamů a manipulace s multimediálními soubory, jako jsou loga a melodie.
Základnímy parametry jsou --device, --baud, --out, --info, --mem-info, --lock-info, --toggle-lock,--mem, --slot, --pbook, --sms, --binary.
--device (-d) je zařízení, na kterém se telefon
nachází, standardně je nastaveno /dev/ttyS0.
Pokud se váš telefon nachází jinde, jako
třeba ten můj, na /dev/ttyUSB0 stačí zadat scmxx
--device=/dev/USB0
. Aby se tato hodnota nemusela stále
zadávat do konzole, můžeme si tento parametr uložit ve svém
HOME co ./.scmxx/config
(který si musíme vytvořit) a do
něj přidáme řádek device = /dev/ttyUSBO
.
--baud (-b) je parametr, který určuje rychlost připojeného zařízení(9600, 19200, 38400, 57600 a nebo 115200. Opět si můžete toto nastavení uložit do souboru config ve tvaru baud = rychlost.
--out(-o)
určuje, kam bude směrován výstup. Pro vypsání
dat na standardní výstup je to --out=-
jinak
přesměrování do souborů je --out=/soubor
.
--info vypíše všechny informace o telefonu, jako jsou výrobce, model, IMEI, stav baterie. Dále vypíše informace o SIM kartě a o operátorovi, který je používán, sílu signálu, jméno operátora, telefonní číslo, třída GPRS a další. Na konci seznamu je výčet pamětových míst a zámků v telefonu.
--mem-info vypíše podrobněji obsazení paměťových míst vašeho telefonu, například takto nebo takto.
--lock-info zobrazí aktuální nastavení některých funkcí jako je zamknutí klávesnice, zda je ativován PIN a další.
--toggle-lock
tento parametr může změnit stav zámků v telefonu, na
některé je však potřeba zadat PIN, který předáme
parametrem --pin=pin kód
--set-time nastaví datum a čas podle aktuálního stavu v systému. Nelze mu zadat žádnou hodnotu, takže je ideální si nejprve srovnat přes nějaké ntp čas systému a potom v telefonu.
--pbook (-P) přepne se do módu pro práci s telefonními seznamy.
--sms (-S) přepne se do módu pro práci se SMS.
--binary (-N) přepne se do módu pro práci s binárními soubory (bmp, mid, jpg,..).
--mem upřesňuje paměťové místo ve vybraném módu.
--slot
vybere přímo požadovaný záznam v paměti, používá
se většinou s --mem
, jako hodnotu mu buď předáte
číslo slotu, nebo některé ze speciálních
stringů "all", "read", "unread", "sent"
a "unsent" pro SMS zprávy nebo "all" a
"last". Bohužel tyto stringy se nadají kombinovat,
musí se zadávat vždy jenom jeden. Některé z
těchto slov nelze použít s --send
.
informace o telefonu:
pokud jste si však vytvořili soubor config stačí:
Výpis paměťových míst:
Výpis zámků:
Zamkne nebo odemkne klávesnici:
Zapne nebo vypne ochranu kodem PIN SIM karty:
Nastavení času v telefonu ze systému
Tak a teď se můžeme pustit do ovládání sms zpráv, telefonního seznamu atd.
Práce s telefonnímy seznamy:
Telefonních seznamů je v telefonu několik. Základní je seznam telefonních
čísel na SIM kartě, dále pak adresář a seznamy
volaných, zmeškaných nebo přijatých čísel
a ještě mnohé další. Seznam čísel
na SIM kartě je v telefonu označen SM, adresář VCF, tyto
informace zjistíte --mem-info
pokud je budete chtít
vypsat na obrazovku nebo do souboru stačí zadat:
Kdybyste chtěli vypsat jenom určitý řádek tak se přidá parametr
--slot=číslo
. Pokud byste chtěli přidat záznam, tak stačí:
a tento záznam se uloží na první volné místo v seznamu. Pokud byste chtěli nějaký záznam změnit, tak si zjistíte jeho číslo a potom:
Posílání nové zprávy
kde --srr
umožní, aby vám zpět přišla doručenka a --direct
zamezí uložení zprávy do
telefonu.
Čtení nepřečtených zpráv:
Čtení jednotlivých SMS:
zobrazí zprávu uloženou na patnáctém místě. Pokud
bychom chtěli zprávy jenom z telefonu nebo ze SIM karty ta za
--slot=
dáme ME nebo SM.
Při práci s binárnímy daty je potřeba upřesnit, s
čím chcete pracovat a to přes --mem=
kde je možnost si vybrat
z "bmp,mid a dalších voleb závislých na typu telefonu" poslání obrázku do
telefonu provedeme takto:
pokud chcete opak, tak:
stejně to funguje u ostatních formátů. Pouze u --slot="dir"
dostanete místo obsahu adresářů
v telefonu jenom jejich seznam.
Gscmxx je grafická nadstavba nad scmxx s domovskou stránkou http://gscmxx.sourceforge.net/ , ale je napsána pro scmxx 0.6.X a s novou verzí má problémy, protože se změnil formát přepínačů.
Pokud chcete manipulovat s daty v telefonu, tak to scmxx bohužel neumí, ale existuje tu
jiná možnost. A to, že si telefon prakticky přimountnete jako
disk. Budete na to potřebovat dvě věci. V první řadě podporu
filesystému, který je na telefonu což je siefs.
Najdete ho na http://chaos.allsiemens.com/siefs/.
Musíte si ho překompilovat pomocí trojkombinace
configure, make, make install
. A dále potřebujete modul fuse
do svého jádra, který je na
http://fuse.sourceforge.net/.
Např. debian ho má jako balíček, který si stáhnete a pomocí module-assistant překompilujete. Potom stačí už jenom si vytvořit někde na disku adresář a připojit si telefon na určené místo.
Samozřejmě si hned můžete přidat řádek do /etc/fstab, abyste nemuseli tolik psát.
Všechny zde popsané kousky jsem zkoušel na čtyřech telefonech Siemens a to na ME45,C55,M55 a M65. Byly mezi nimi nějaké odchylky (hlavně mezi řadou 45 a ostatními), ale nebyly velké.