Gnokii, Xgnokii (časť 1)

10.12.2004 23:28 | Články | Michal Fecko
Prvá časť seriálu o komunikačnom balíku gnokii, ktorý je určený pre komunikáciu mobilných telefónov (Nokie) s PC (a Linuxom samozrejme ;).
Všetko sa to začalo...
    ...keď som sa asi pred štyrmi rokmi, vtedy ešte so starým mobilom (Nokia 5110), dostal k datovému káblu určenému na prepojenie počítača (cez sériový port) a mobilného telefónu.  Keďže v tej dobe som "bežal" ešte na dvoch OS (hádajte ktorý bol ten druhý ;), mal som problém s komunikáciou vyriešený nejakými tými sharewarovými programíkmi. Prešiel istý čas a ja som presedlal vtedy ešte na "čierneho koňa" operačných systémov. No na tomto poli to už s komunikačným programom nebolo až také ružové, no stále som však pátral po programe, ktorý mi umožní pohodlne posielať smsky, upravovať telefónny zoznam, zálohovať ho a pod. Začalo sa veľké pátranie a vonku už bol rok 2002 ;). Hovorí sa "kto hľadá nájde" a mne do cesty prišiel balíček gnokii, bez ktorého (a hlavne jeho GUI nadstavby  - xgnokii) si už svoju komunikáciu som svojím mobilom neviem ani predstaviť...

Ale začnime inštaláciou...
    V projekte gnokii (www.gnokii.org) je zainteresovaných mnoho vývojárov. Za všetkých spomeniem aspoň piatich... Pawel Kot (gnokii), Borbely Zoltan (gnokiid), Jan Derfinak, Markus Plail (xgnokii). V súčasnej dobe projekt gnokii podporuje tieto typy mobilných telefónov...
  • Nokia 6110 | 6130 | 6150 | 6190 | 5110 | 5130 | 5190 | 3210 | 3310 | 3330 | 3360  | 3390  | 3410   | 8210 | 8250 | 8290 | RPM-1
  • Nokia 7110 | 6210 | 6250 | 7190
  • Nokia 6510 | 6310 | 8310 | 6310i | 6360 | 6610 | 6100 | 5100 | 3510 | 3510i
  • Nokia 3110 | 3810 | 8110 | 8110i
  • Nokia 5160 | 6160 | 6185
  • AT kompatibilné MT (menovite Nokia 62X0, Nokia 7110, Nokia 8210, Nokia 6310, Nokia 6510, Ericsson T39, Sony-Ericsson T68i, Siemens S25/SL45i/C55/M55/S55, Motorola Timeport P7389i (L seria), C350, Bosch 908/909
Na domovskej stránke taktiež nájdete okrem mnohých užitočných informácii aj množstvo mirrorov, na ktorých sa nachádzajú zdrojové kódy gnokii (aktuálna a mnou aj v čase písania článku používana je verzia 0.6.1)... Stačí stiahnuť, rozbaliť, skonfigurovať (./configure), buildnuť (make) a cez rootovské konto nainštalovať (make install).

A pomaly rozbalíme vrece...
    Čo všetko sme po úspešnej inštalácii dostali? Takže pre milovníkov konzoly je to program gnokii, pre skôr graficky založených je tu jeho GUI prostredie xgnokii (na www domovských stránkach projektu som našiel aj novú formu GUI prostredia s názvom gnocky, no zatiaľ som ju netestoval, preto privítam vaše ohlasy na túto nadstavbu...;). No a hor sa do konfigurácie...

/etc/gnokiirc
    ...presne v tomto súbore sú defaultne programom gnokii hľadané nastavenia pre inicializáciu mobilu. Daný súbor je možné nájsť v balíku spolu zo zdrojovým súborom (v adresári ../Docs/sample/gnokiirc).  Stručne o čo v ňom ide.. Je treba zadefinovať mobilný telefón + spôsob komunikácie s PC (IrDA, seriový kábel a pod.). Pomaly si tento konfiguračný súbor (k môjmu terajšiemu mobilu - nokia 6210) spolu prejdime (môže sa zdať že je to zbytočný, bezvýznamný či zdržujúci krok, ale omyl, priatelia, bez dobre nadefinovaného "konfiguráku" nebude prebiehať korektne komunikácia PC < - > mobil a ďalšie kroky sú potom nemožné...).
Takže poďme na to...

[global]

# Nadefinovanie portu, ku ktorému je fyzicky pripojené zariadnie .
# V mojom prípade to je sériový port.
# Napr. pre bluetooth to možme spraviť takto
# port = aa:bb:cc:dd:ee:ff
port = /dev/ttyS0 

# Nastavenie typu telefónu 
model = 6210

# Nastavenie dĺžky kódu posielaného mobilnému telefónu pri inicializácii komunikácie
initlength = default

# Typ spojenia, pre infračervené je treba nastaviť infrared alebo irda.
# Pre 6210/6250/7110 telefóny a dau9p káble je treba použiť 'dau9p'
# hodnotu pre rýchlejšiu inicializáciu.
# Pri seriových stačí použiť hodnotu serial
connection = dau9p

# Nastavenie cesty pre binárky gnokii
bindir = /usr/local/sbin/

#Kontrola zamknutia (predchádza sa tým problémom v prípade, že daný hardware je využívaný
# iným komunikačným balíčkom)
use_locking = no

# Baudrate použitý pri komunikácii (rýchlosť prenosu)
serial_baudrate = 19200

# Ďalej je možné nadefinovať pripájacie/odpájacie skripty
#connect_script = /absolute/path/to/gnokii/Docs/sample/cimd-connect
#disconnect_script =

# Čakanie na potvrdenie prijatia smsky od SMS centra
smsc_timeout = 10

... ďalej už idú len debuggovacie nastavenia, ktoré sú zaujímavé hlavne pre testerov či vývojárov nie však pre bežných užívateľov...


Záverom
    Dnes sme sa prehrýzli asi tým najťažším a možno pre niekoho aj najnudnejším, no prepotrebným orieškom na ceste ku komunikácii so svojim anténkovým miláčikom ;) ... V ďalšej časti sa pozrieme na zúbok terminálovému programu gnokii a neskôr potom príde na rad GUI nadstavba xgnokii...

Michal "f3c0" Fecko