Отправка данных в веб-сервис ASP из GSM с помощью AT-команд — где я ошибаюсь?

gsm web-service

Я использую Arduino Uno с GSM-модулем SIM900. Пытаюсь подключить Arduino к своему сайту (ASP MVC). Я написал API, который успешно протестировал с помощью Postman. Команда GET работает отлично, но с отправкой данных POSTING пока не получилось. Используя Arduino для вывода данных через последовательный порт, я сделал следующее...

Итак, некоторые команды настройки

    AT+CGATT?
    AT+SAPBR=3,1,"CONTYPE","GPRS"
    AT+SAPBR=3,1,"APN","internet"    (vodafone UK parameters
    AT+SAPBR=3,1,"USER","web"
    AT+SAPBR=3,1,"PWD","web"
    AT+SAPBR=1,1
    AT+SAPBR=2,1     (confirms i have an IP address)

Затем я делаю следующее...

    AT+HTTPINIT
    AT+HTTPPARA="CID",1
    AT+HTTPPARA="PROIP","212.183.137.12"   (vodafone uk proxy settings)
    AT+HTTPPARA="PROPORT","8799"
    AT+HTTPPARA="CONTENT","application/json"
    AT+HTTPPARA="URL","http://mywebsite.co.uk/api/obs"
    AT+HTTPDATA=83, 10000    (gives the download command).
    {"SensorName": "TestSensor", "ObsValue": 31, "ObsDateTime": "2017-10-01T03:30:00"}
    AT+HTTPACTION=1

и я получаю в ответ только «ОК», никакого ответа httpaction и никаких данных, сохраненных в базе данных.

Есть ли что-то, что я делаю явно неправильно? HTTPACTION идёт перед данными?

Есть ли команды, которые я могу использовать для проверки состояния моего http-сеанса на плате GSM? Чтобы убедиться, что мои настройки верны?

Наконец-то я продолжаю получать сообщения вроде

    +CREG: 1,"002A","0F48"

Всегда 1 (предположительно, CID, который я использую) и всегда 002A, но последняя часть меняется.

Любая помощь будет очень кстати. Спасибо.

, 👍0

Обсуждение

Проверьте журналы веб-сервера и проверьте сетевой трафик на порте 83, используя любые инструменты, подходящие для вашей операционной системы. Вставьте SIM-карту в телефон и попробуйте зайти в интернет — возможно, сначала потребуется активация, и Vodaphone перенаправляет трафик на свою страницу активации., @Majenko

Мне ещё ни разу не приходилось использовать прокси с GSM-доступом на Vodaphone. Попробуй без него., @Majenko

Это сим-карта, которую я взял с iPad, и она работала отлично. До того, как я установил прокси-сервер, я получал ошибку DNS 602 при выполнении команды GET, но я могу попробовать :) Мой сайт размещён на коммерческом хостинге (1and1), поэтому я не уверен, что прослушивание трафика — подходящий вариант, но большое спасибо за советы., @John Futcher

Итак, я удалил настройки прокси-сервера — и все заработало! один раз — но все равно это происходит чаще, чем раньше., @John Futcher


1 ответ


1
+CREG: 1,"002A","0F48"

Это статус регистрации. «1» означает «Зарегистрировано в вашей домашней сети», «002A» — ваш код зоны (LAC), а «0F48» — идентификатор соты (CI).

,

То есть, это просто сообщения о смене обслуживающей ячейки? Оставив монитор последовательного порта включенным на некоторое время, я вижу повторяющиеся цифры — спасибо за информацию., @John Futcher