gsmd è il demone GSM che gira in background sul telefono GTA01, gestendo la parte realmente "telefonistica" del cellulare :)
gmsd viene solitamente avviato come un demone in background, ma può anche essere eseguito in foreground per il debug.
Per ottenere tutte le informazioni sull'utilizzo:
> src/gsmd/gsmd --help gsmd - (C) 2006 by Harald Welte <laforge@gnumonks.org> This program is FREE SOFTWARE under the terms of GNU GPL Usage: -v --version Display program version -d --daemon Deamonize -h --help Display this help message -p dev --device dev Specify serial device to be used -s spd --speed spd Specify speed in bps (9600,38400,115200,...) -F --hwflow Hardware Flow Control (RTS/CTS) -L --leak-report Leak Report of talloc memory allocator -l file --logfile file Specify a logfile to log to
Se il modem GSM è collegato via ttySACO (come in Neo1973), è possibile usare:
gsmd -p /dev/ttySAC0 -s 115200 -F
libgsmd è una libreria per applicazioni con API per il linguaggio C. I programmi che usano questa libreria possono gestire il cellulare: realizzare chiamate, ricevere chiamate, registrarsi alla rete, ecc... .
libgsmd-tool è una piccola demo da usare per una dimostrazione dell'utilizzo dell'API libgsmd.
libgsmd-tool dispone di diverse modalità.
Questa modalità fornisce una semplice interfaccia comandi testuale per eseguire chiamate vocali.
Per avviare la modalità shell, digitare:
libgsmd-tool -m shell
Può essere usata come nel seguente esempio:
> src/util/libgsmd-tool -m shell libgsm-tool - (C) 2006 by Harald Welte This program is Free Software and has ABSOLUTELY NO WARRANTY ? # A Answer incoming call D Dial outgoing number H Hangup call O Power On o Power Off R Register Netowrk O # EVENT: PIN request (type=1) Please enter PIN: 6582 R # EVENT: Netreg searching for network EVENT: Netreg registered (home network) D03024033902 # Dial 03024033902 EVENT: Call Progress: UNKNOWN EVENT: Call Progress: PROCEED EVENT: Call Progress: SYNC EVENT: Call Progress: ALERT H # Hangup EVENT: Call Progress: DISCONNECT EVENT: Call Progress: RELEASE EVENT: Incoming call type=2! EVENT: Incoming call clip=`"03024033902"' EVENT: Incoming call type=2! A # Answer RSTR=`OK' H # Hangup RSTR=`OK'
La modalità atcmd è una modalità "di passaggio". Passaggio significa che accetta comandi GSM 07.07, li passa al demone del cellulare, e ritorna le risposte. Questa modalità è molto utile per il debug.
Per avviare la modalità atcmd, digitare:
libgsmd-tool -m atcmd
L'utilizzo è mostrato in quest'esempio:
> src/util/libgsmd-tool -m atcmd libgsm-tool - (C) 2006 by Harald Welte This program is Free Software and has ABSOLUTELY NO WARRANTY AT+CPAS STR=`AT+CPAS' RSTR=`+CPAS: 0' AT+COPS=? STR=`AT+COPS=?' RSTR=`+COPS: (2,"E-Plus","E-Plus","26203"),(3,"o2 - de","o2 - de","26207"),(3,"Vodafone.de","Vodafone","26202"),(3,"T-Mobile D","TMO D","26201")'
(aggiungere elementi alla lista se mancano altre funzioni)
gsmd ha bisogno di fare un tracciamento appropriato degli stati dell'hardware GSM sottostante. Per molti transizioni di stato riceviamo semplicemente eventi dal modem GSM, ma non abbiamo alcuni comandi di query appropriati. Quindi, presumendo che gsmd sia sempre attivo, le applicazioni possono andare e venire, ma avendo comunque un'idea dello stato corrente del modem, anche se non erano presenti alle iniziali transizioni di stato.
Inoltre, il tracciamento di gsmd degli stati di permette di condurre una sicura interoperabilità fra diverse applicazioni. Se ad esempio un'applicazione ha appena iniziato una chiamata, gsmd può rilevare un'altra applicazione che ha intenzione di interferire con la prima e negare l'accesso.
I sorgenti di gsmd si trovano nell'svn di OpenMoko nella directory src/target/gsm.
Languages: |
English • العربية • Български • Česky • Dansk • Deutsch • Esperanto • Eesti • Español • فارسی • Suomi • Français • עברית • Magyar • Italiano • 한국어 • Nederlands • Norsk (bokmål) • Polski • Português • Română • Русский • Svenska • Slovenčina • Українська • 中文(中国大陆) • 中文(台灣) • Euskara • Català |