Gsmd/ru
From Openmoko
Contents |
Использование
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
libgsmd это библиотека, написанная на C, предоставляющая API для приложений. Программы, использующие данную библиотеку могут использовать функции телефона устройства, например, совершение исходящих вызовов, принятие входящих вызовов, регистрация в сети и т.п.
libgsmd-tool
libgsmd-tool это небольшое тестовое приложение, которое демонстрирует использование libgsmd API.
Использование
libgsmd-tool имеет несколько режимов работы.
Использование в режиме shell
Режим шелла предоставляет простой командный интерфейс для совершения голосовых вызовов.
Режим шелла может быть включен, используя следующую команду
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
Режим пересылки 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")'
На данный момент не работает
(добавляйте, пожалуйста, функции, которые не работают)
- Функции телефона
- режим самолета / gsmd stop (это будет сделано вне gsmd, используя уровни запуска)
- получение производителя/модели/ревизии/IMEI
- Сетевые функции
- получение списка доступных операторов
- выбор оператора из списка
- получение списка названий операторов
- запрос уровня сигнала (rather than just events)
- Функции SMS
- отправка SMS
- получение SMS
- получение IMSI
- доступ с SMS, записанных на SIM
- Функции SIM
- чтение телефонной книги
- запись в телефонную книгу
- Функции GPRS
- настройка соединения GPRS, использую для этого отдельный DLC от TS07.10 multiplex
- Внутренняя структура gsmd
- fine-grained event subscriptions (rather than wildcard-subscribe)
- возможность установки уровня детализации логирования через командную строку
- переоткрытие лог файлов по сигналам SIGUSR1 или SIGHUP (logrotate)
- управление разрешениями
- интерфейс d-bus