2013-09-27 5 views
0

Я пытаюсь найти библиотеку, которая может звонить с мобильного телефона и получать статус ответа (ответ, занят, пропущен и т. Д.). Мобильный телефон будет Nokia 6300 или любой другой, который будет более оптимальным для этой цели. Телефон будет подключен через USB. Идеальное решение - это кросс-платформенная библиотека (но платформа распространения - Windows). Я рад получить любые предложения, как решить мою задачу, включая отправку AT-команд. Спасибо!Отправка команд на мобильный телефон

ответ

0

Предполагаю, вы говорите о голосовых вызовах, верно? Для базовой функциональности вы можете посмотреть ответ от ATD и использовать atinout, например.

C:\>echo ATD123456890; | atinout - COM14 - 
OK 
C:\> 

для успешного отвеченного вызова, и с BUSY вместо OK для занятого вызова, и не ответили я думаю, что буду возвращать NO CARRIER.

Теперь я не тестировал atnout с модемом на окнах, поэтому я не знаю, насколько это хорошо работает, но я знаю, что он компилируется отлично с помощью cygwin и mingw, но скомпилированный двоичный файл cygwin, похоже, не способен правильно откройте ком-порт, поэтому попробуйте сначала скомпилировать с помощью mingw. Во что бы то ни стало сообщите об этом успех/неудачу.

Для получения дополнительной информации о ходе вызова, я думаю, что есть некоторая новая команда, указанная в последних версии 27.007 для этого, которые вряд ли, поддерживаемых телефонов, но AT+CIND, вероятно, поддерживаются и вы могли бы также получить полезную информацию от AT+COLP и аналогичные команды.

+0

ATD; команда возвращает мне OK и через несколько секунд NO CARRIER, даже если пользователь ответил на вызов. И я не понимаю, как я могу применить команду AR + CIND, потому что в документации говорится, что команды используют для установки значения индикаторов устройства. – toohtik

0

Попробуйте сыграть с at+clcc. В настоящее время это только команда, которую я могу найти, чтобы определить, был ли инициирован вызов. Он возвращает сложную строку: «1,0,2, .....», поэтому вы должны запустить задачу таймера и отслеживать третью цифру: 2 - инициировать вызов, 0 - сбросить вызов, 3 - получить сигнал ожидания (звонок) ,

проверить эту помощь http://www.activexperts.com/serial-port-component/tutorials/gsmdial/

Смежные вопросы