gsmd это GSM демон, работающий в фоне на GTA01 телефоне, управляющий действительно 'телефонной' частью телефона :)
gsmd обычно запускается в виде демона в фоновом режиме, но для отладки он может быть запущен и в обычном режиме.
Приложение поддерживает следующие опции:
> src/gsmd/gsmd --help gsmd - (C) 2006 by Harald Welte <laforge@gnumonks.org> This program is FREE SOFTWARE under the terms of GNU GPL Испоьзование: -v --version Показать версию программы -d --daemon Запустить в режиме демона -h --help Отобразить эту справку по использованию -p dev --device dev Указать последовательное устройство для подключения -s spd --speed spd Указать скорость в бит/секунду (9600,38400,115200,...) -F --hwflow Аппаратное управление потоком (RTS/CTS) -L --leak-report Отчет об утечках памяти -l file --logfile file Указать лог файл для вывода сообщений
Если Ваш GSM модем подключен к ttySAC0 (как в Neo1973), вы можете запустить приложение так:
gsmd -p /dev/ttySAC0 -s 115200 -F
libgsmd это библиотека, написанная на C, предоставляющая API для приложений. Программы, использующие данную библиотеку могут использовать функции телефона устройства, например, совершение исходящих вызовов, принятие входящих вызовов, регистрация в сети и т.п.
libgsmd-tool это небольшое тестовое приложение, которое демонстрирует использование libgsmd API.
libgsmd-tool имеет несколько режимов работы.
Режим шелла предоставляет простой командный интерфейс для совершения голосовых вызовов.
Режим шелла может быть включен, используя следующую команду
libgsmd-tool -m shell
Она может быть использована, как в данном примере:
> src/util/libgsmd-tool -m shell libgsm-tool - (C) 2006 by Harald Welte This program is Free Software and has ABSOLUTELY NO WARRANTY ? # A Ответить на входящий вызов D Совершить исходящий вызов H Поднять трубку O Включить o Выключить R Зарегистрироваться в сети 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'
Режим пересылки atcmd. Режим пересылки означает использование команд GSM 07.07, передавая из через демона в телефон, и получая обратно ответ. Очень полезно при отладке.
Режим atcmd включается командой
libgsmd-tool -m atcmd
Она может быть использована, как в данном примере:
> 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")'
Operator selection functions were implemented and merged into SVN head[1]:
The new commands in libgsmd-util are as followings:
R - Register to given operator (R=number) P - Print current operator L - Detect available operators Q - Read signal quality
This is implemented by the functions with "_opers_" naming.
(добавляйте, пожалуйста, функции, которые не работают)
gsmd needs to do apropriate state tracking of the underlying GSM hardware. For many of the state transition we only get events from the GSM Modem, but don't have apropriate query commands. Thus, assuming gsmd runs all the time, applications can come and go, but still have an idea about the current state of the modem, even if they missed the initial state transitions.
Also, gsmd state tracking allows us to allow for safer interoperability of multiple applications. If i.e. one applications has just started an outgoing call, gsmd can detect another application who intends to interfere with that and deny access
It must also configure the modem so that it can on appropriate events wake the system from sleep.
Sources of gsmd are kept in Openmoko svn in src/target/gsm directory.
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à |