Класс С# для работы с AT-командами?

Есть ли класс для связи AT с устройствами? Например, класс, который инкапсулирует AT-команды в интерфейс .NET?

Он также должен иметь возможность анализировать ответы AT, такие как списки сетей.

Пример: +COPS=? возвращает список операторов связи, и для его фактического анализа потребуется довольно сложное регулярное выражение. Вместо того, чтобы писать свою собственную библиотеку, я хочу использовать готовую.

Команды AT Я имею в виду следующие: http://en.wikipedia.org/wiki/Hayes_command_set


person Kristina Brooks    schedule 03.05.2010    source источник
comment
Можете ли вы дать ссылку на какие AT-команды вы имеете в виду?   -  person C. Ross    schedule 03.05.2010
comment
@С. Росс, я думаю, он имеет в виду en.wikipedia.org/wiki/Hayes_command_set.   -  person Chris W. Rea    schedule 03.05.2010


Ответы (2)


Попробуйте это: GSM-коммуникационная библиотека. Помимо встроенных команд, он позволяет вам отправлять любую команду, которая вам нужна.

person Giorgi    schedule 03.05.2010
comment
Но не могу найти источник :( - person Kristina Brooks; 03.05.2010
comment
Вам нужен сам исходный код? Почему бы просто не добавить dll в качестве ссылки и не начать использовать ее? - person Giorgi; 03.05.2010
comment
@Nick - Вы спросили разработчика, доступен ли исходный код? - person Mike Chess; 03.05.2010

Я надеюсь, что это также поможет вам. Это код С# для отправки AT-команд на ваше устройство com-порта (мобильный телефон и т. д.). Его можно использовать для отправки смс и т. д.

//Send SMS
SerialPort serialPort = new SerialPort();
serialPort.BaudRate = 56700;
serialPort.PortName = "COM3";
serialPort.Open();
serialPort.WriteLine("AT+CMGF=1" + Environment.NewLine);//Set Message Format
serialPort.WriteLine("AT+CMGS=" + PhoneNumber + (char)(26));
serialPort.WriteLine(MyMessage + System.Environment.NewLine);
serialPort.Close();
person Prasanna    schedule 24.11.2011
comment
Нет нет нет! Пожалуйста, не обрабатывайте AT-команды таким образом. Вы ДОЛЖНЫ дождаться окончательного кода результата (например, OK, ERROR, ...) перед отправкой следующей команды. И специально для AT+CMGS вы ДОЛЖНЫ дождаться, пока модем отправит \n\r›, прежде чем вы должны начать отправлять MyMessage. См. этот ответ для получения более подробной информации, stackoverflow.com/a/15591673/23118. - person hlovdal; 25.03.2013