Драйвер для работы с модулем GPRS Shield.
Позволяет отправлять команды и обрабатывать события модуля через последовательный порт UART.
Инициализируется функцией connect.
Возвращает новый объект Sim900r для работы с модулем через порт последовательный порт. Для модуля Iskra JS — это порт Serial3
Необязательный параметр opts задаёт характеристики соединения с модулем. Ожидается объект со свойствами:
serialPort — объект последовательного порта. По умолчанию — Serial3.serialSpeed — скорость взаимодействия по последовательному порту. По умолчанию — 9600.powerPin — контакт для включения и выключения модуля. По умолчанию — P2.statusPin — контакт для определения готовности модуля. По умолчанию — P3.var sim = require('@amperka/Sim900r').connect();
Класс для управления GPRS-модулем, работы со звонками и SMS, USSD, а так же для прямого доступа к AT-командам.
Обратите внимание, на выполнение команды модулю требуется время. Поэтому для обработки результата команды используются функции обратного вызова callback, в которые и передаются параметры ответа. Так же модуль сообщает о различных событиях: готовности к работе, входящих звонках, СМС и прочих. При возникновении события event вызывается соответствующая ему функция обратного вызова.
Включает модуль. Не выполняется, если модуль уже включен. Включение модуля занимает порядка одной секунды, по этому необходимо слушать событие powerOn, для точного определения, когда можно с ним взаимодействовать.
Выключает модуль. Не будет выполнена, если модуль уже отключен.
Проверяет модуль на готовность к работе — взаимодействию с контроллером по последовательному порту. Функцию не следует использовать для проверки регистрации модуля в сети сотового оператора. При готовности модуля функция возвращает true, если модуль не готов или выключен — false.
Возникает после инициализации при включении модуля.
Возникает при выключении модуля.
Возникает в момент обнаружения SIM-карты.
Возникает при отсутствии SIM-карты.
code — код ошибки, отданный модулем.Возникает в момент регистрации модуля с SIM-картой в сети оператора.
Возникает в момент входящего звонка. При входящем звонке событие возникает приблизительно раз в три секунды, пока вы не ответите или не разорвете соединение, или это не сделает вызывающая сторона. Параметры функции обратного вызова:
phone — телефон вызывающего абонента (если он определен) или undefined;cnt — количество вызовов события ring с начала попытки дозвона.Возникает в момент разъединения соединения другим лицом. Если соединение разрываете вы — событие не возникает.
Возникает в момент приема SMS-сообщения. Параметры функции обратного вызова:
phone — телефон отправителя;time — дата и время отправления;text — текст сообщения.Возникает событие инициированное модулем, но оно отличается от вышеперечисленных. Параметры функции обратного вызова:
event — событие генерируемое модулем;data — строка с данными по этому событию.
Отправляет команду command модему и возвращает в функции обратного вызова полученный результат. При получении ответа, вызывает функцию callback вида function(error, data) { … } с параметрами:
data — массив, где каждый элемент — строка отданная модулем в рамках обработки команды.
Вызывает попытку дозвона до абонента с номером phone, переданным в виде строки. Вызывает callback.
В качестве callback ожидается функция вида function(error) { … } с параметрами:
error — undefined, если запрос успешен, или одну из следующих ошибок:NO DIALTONE — нет сигнала;NO CARRIER — звонок отклонен;NO ANSWER — нет ответа;BUSY — занято.
Разрывает текущее соединение. Вызывает callback при исполнении.
В качестве callback ожидается функция вида function(error) { … } с параметрами:
Ответ на входящий звонок. Вызывает callback при исполнении.
В качестве callback ожидается функция вида function(error) { … } с параметрами:
Отправляет SMS-сообщение. По результату, вызывает функцию callback вида function(error) { … } с параметрами:
var sim = require('@amperka/Sim900r').connect(); sim.powerOn(); sim.smsSend("+79160001122", "hello", function(error){ console.log(error); });
Читает список SMS-сообщений, сохраненных на SIM-карте. По результату, вызывает функцию callback вида function(error, data) { … } с параметрами:
data — массив объектов, описывающих СМС, со свойствами:index — индекс сообщения в памяти SIM-карты;phone — номер телефона отправителя;date — объект типа Date, с информацией о дате и времени отправки;text — текст сообщения;
Читает SMS-сообщение с индексом index, сохраненное на SIM-карте. По результату, вызывает функцию callback вида function(error, data) { … } с параметрами:
data — объект, описывающих СМС, со свойствами:index — индекс сообщения в памяти SIM-карты;phone — номер телефона отправителя;date — объект типа Date, с информацией о дате и времени отправки;text — текст сообщения;
Удаляет SMS-сообщение с индексом index, сохраненное на SIM-карте. В качестве значения параметра index можно указать all, что приведет к удалению всех сообщений. По результату, вызывает функцию callback вида function(error) { … } с параметрами:
Запрашивает название оператора SIM-карты. Вызывает callback для передачи результата.
В качестве callback ожидается функция вида function(error, provider) { … } с параметрами:
provider — название оператора сим-карты в виде строки string.
Запрашивает информацию о регистрации в сети. Вызывает callback для передачи результата.
В качестве callback ожидается функция вида function(error, status) { … } с параметрами:
status — статус регистрации в виде строки и имеющее одно из следующих значений:"search" — идёт поиск сети;"home" — модуль зарегистрирован в домашней сети;"roaming" — модуль зарегистрирован в роуминговой сети;"error" — регистрация не удалась;"unknown" — другая ошибка.
Запрашивает информацию о качестве приема. Вызывает callback для передачи результата.
В качестве callback ожидается функция вида function(error, quality) { … } с параметрами:
quality — качество приема в виде целого числа от 0 до 10.
Запрашивает информацию об операторе связи, в сети которого зарегистрирован модуль. Вызывает callback для передачи результата.
В качестве callback ожидается функция вида function(error, provider) { … } с параметрами:
provider — название оператора сотовой сети.
Получает IMEI модуля. Вызывает callback для передачи результата.
В качестве callback ожидается функция вида function(error, imei) { … } с параметрами:
undefined, если запрос успешен; Error — если произошла ошибка;string.
Получает информацию о ревизии модуля. Вызывает callback для передачи результата.
В качестве callback ожидается функция вида function(error, firmware) { … } с параметрами:
undefined, если запрос успешен; Error — если произошла ошибка;string.
Получает дату и время на устройстве. Вызывает callback для передачи результата.
В качестве callback ожидается функция вида function(error, datetime) { … } с параметрами:
Получение информации о включении автоматического определителя номера. Вызывает callback для передачи результата.
В качестве callback ожидается функция вида function(error, enable) { … } с параметрами:
undefined, если запрос успешен; Error — если произошла ошибка;boolean).
Устанавливает дату и время из параметра datetime, переданного в виде объекта Date.
В качестве callback ожидается функция вида function(error) { … } с параметрами:
undefined, если запрос успешен; Error — если произошла ошибка.
Включение и отключение определителя номера. Параметр enable имеет булевый тип. Вызывает callback по окончанию.
В качестве callback ожидается функция вида function(error) { … } с параметрами:
undefined, если запрос успешен; Error — если произошла ошибка.