Связь со службой подготовки устройств Azure с модемом Telit ME910C1

Я пытаюсь подключиться к Azure DPS с модемом Telit ME910C1-AU. Изначально я использовал HTTP-команды (т.е. HTTPSND и HTTPRCV) для успешной отправки данных на postman-echo.com. Однако при отправке в Azure мне нужно добавить симметричный ключ. К сожалению, HTTPSND Команда позволяет добавлять в заголовок только содержимое с максимальной длиной 100 (которая не может быть изменена), а длина ключа превышает 100 символов, что означает, что я не могу использовать HTTP-команды для этого.

Telit посоветовал мне самому открыть сокет с помощью команд SSL (SSLD, SSLEN, и т.д.). Опять же, отправка данных на postman-echo.com была успешной, но отправка их в Azure возвращает (по-видимому) искаженный заголовок. Это команды / ответы, которые я отправляю / получаю (ответы выделены для большей ясности):

at#sgact=1,1
    #SGACT: 10.37.xxx.xxx
    OK
at#sslen=1,1
    OK
at#ssld=1,443,"global.azure-devices-provisioning.net",0,0
    CONNECT
PUT /<redacted1>/registrations/test-something/register?api-version=2018-11-01 HTTP/1.1\r\nauthorization: SharedAccessSignature sr=<redacted2>\r\nContent-Type: application/json\r\nHost: global.azure-devices-provisioning.net\r\nContent-Length: 35\r\n\r\n{"registrationId":"test-something"}\r\n\r\n
    HTTP/1.1 202 Accepted
    Date: Wed, 07 Oct 2020 23:17:53 GMT
    Content-Type: application/json; charset=utf-8
    Transfer-Encoding: chunked
    Location: https://global.azure-devices-provisioning.net/<redacted1>/registrations/test-something/register
    x-ms-request-id: <redacted3>
    Strict-Transport-Security: max-age=31536000; includeSubDomains
    st
    Connection: close
    Date: Wed, 07 Oct 2020 23:17:53 GMT
    Content-Length: 0


    NO CARRIER  

Если я использую Postman, вместо этого я получаю следующий ответ.

HTTP/1.1 202 Accepted
Date: Wed, 07 Oct 2020 23:09:20 GMT
Content-Type: application/json; charset=utf-8
Transfer-Encoding: chunked
Location: https://global.azure-devices-provisioning.net/<redacted1>/registrations/test-something/register
x-ms-request-id: <redacted3>
Strict-Transport-Security: max-age=31536000; includeSubDomains
{"operationId":"<redacted5>","status":"assigning"}

это именно то, что я хочу видеть, потому что он возвращает идентификатор операции, который мне нужен для DPS.

Заголовки, отправляемые почтальоном и модемом, абсолютно одинаковы, поэтому я не вижу причин, по которым они возвращают разные вещи. У них также отключена проверка сертификата SSL.

0 ответов

Другие вопросы по тегам