NB-IoT. Icke-IP-dataleverans eller bara NIDD. Testning med MTS kommersiell tjänst

God eftermiddag och gott humör!

Det här är en liten handledning om att ställa in NIDD (Non-IP Data Delivery) i MTS molntjänst med det självförklarande namnet "M2M Manager". Kärnan i NIDD är det energieffektiva utbytet av små datapaket över NB-IoT-nätverket mellan enheter och servern. Om tidigare GSM-enheter kommunicerade med servern genom att utbyta TCP/UDP-paket, har en ytterligare kommunikationsmetod blivit tillgänglig för NB-IoT-enheter - NIDD. I det här fallet interagerar servern med operatörens nätverk med hjälp av enhetliga POST/GET-förfrågningar. Jag skriver för mig själv (för att inte glömma) och alla som har nytta av det.

Du kan läsa om NB-IoT:

NB-IoT, Narrow Band Internet of Things. Allmän information, tekniska funktioner
NB-IoT, Narrow Band Internet of Things. Energisparlägen och kontrollkommandon

NIDD teori från MTS

Dokumentation för NB-IoT-modulen som användes under testning:
Neoway N21.

MTS-tjänst för hantering av M2M-enheter.

För att få en känsla för NIDD behöver vi:

  • SIM-kort NB-IoT MTS
  • NB-IoT-enhet med NIDD-stöd
  • lösenord och inloggning från M2M manager MTS

Jag använde en bräda som en enhet N21 DEMO, och lösenordet och inloggningen för att komma åt M2M-chefen fick mig vänligen av MTS-anställda. För detta, såväl som för den olika hjälpen och de många konsultationerna, tackar vi dem mycket.

Så, gå till M2M-hanteraren och kontrollera att:

  • i menyalternativet "SIM Manager" finns "NB-IoT Control Center";
  • Vårt NB-IoT-kort har dykt upp i NB-IoT Control Center, såväl som i följande avsnitt:
    NIDD APN
    NIDD-konton
    NIDD Säkerhet
  • Längst ner finns ett menyalternativ "API M2M" med "NIDD Developer Guide"

Det hela borde se ut ungefär så här:

NB-IoT. Icke-IP-dataleverans eller bara NIDD. Testning med MTS kommersiell tjänst

Om det saknas något i M2M-hanteraren, skicka gärna en förfrågan till din chef på MTS med en utförlig beskrivning av dina önskemål.

Om de nödvändiga NB-IoT Control Center-artiklarna finns på plats kan du börja fylla i dem. Dessutom kommer posten "NIDD-konton" sist: den kommer att kräva data från angränsande sektioner.

  1. NIDD APN: Vi kommer på och fyller i namnet på vår APN och "Application ID".
  2. NIDD Säkerhet: här anger vi IP-adressen för vår applikationsserver, som kommer att kommunicera med NB-IoT-enheter via MTS-tjänsten (servern).
  3. NIDD-konton: Fyll bara i alla fält och klicka på "Spara".

När alla objekt är klara kan du börja hantera de förfrågningar som vår server ska generera. Gå till M2M API och läs NIDD Developer's Guide. För att enheten ska registreras i NB-IoT-nätverket måste du skapa en SCS AS-konfiguration:

NB-IoT. Icke-IP-dataleverans eller bara NIDD. Testning med MTS kommersiell tjänst

Manualen innehåller en beskrivning av individuella begärandeparametrar, jag kommer bara att ge ett par små kommentarer:

  1. länk för att skicka förfrågningar: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations, där scsAsId är "Application ID" från menyalternativet "NIDD APN";
  2. grundläggande auktoriseringsmetod med inloggning och lösenord - använd inloggningen och lösenordet du skapade när du fyllde i menyalternativet "NIDD Accounts";
  3. notificationDestination - din serveradress. Från den kommer du att skicka icke-ip-meddelanden till enheter, och MTS-servern kommer att skicka meddelanden om att skicka och ta emot icke-ip-meddelanden till den.

När SCS AS-konfigurationen har skapats och enheten framgångsrikt har registrerats i NIDD-läge i operatörens NB-IoT-nätverk, kan du försöka utbyta de första icke-ip-meddelandena mellan servern och enheten.

För att överföra ett meddelande från servern till enheten, studera avsnittet "2.2 Skicka ett meddelande" i manualen:

NB-IoT. Icke-IP-dataleverans eller bara NIDD. Testning med MTS kommersiell tjänst

{configurationId} i förfrågningslänken - ett värde av typen "hex-abracadabra", erhållet vid konfigurationsskedet. Ser ut som: b00e2485ed27c0011f0a0200.

datum — meddelandeinnehåll i Base64-kodning.

Konfigurera en NB-IoT-enhet för att fungera i NIDD

Naturligtvis, för att utbyta data med servern, måste vår enhet inte bara kunna fungera i NB-IoT-nätverket, utan även stödja NIDD (icke-ip)-läge. I fallet med N21 DEMO-utvecklingskortet eller annan enhet baserad på NB-IoT-modul N21 Sekvensen av åtgärder för att överföra icke-IP-meddelanden beskrivs nedan.

Vi aktiverar konfigurationen med APN som vi kom fram till när vi fyllde i "NIDD APN"-objektet i M2M-hanteraren (här - EFOnidd):

AT+CFGDFTPDN=5,"EFOnidd"

och be enheten att omregistrera sig på nätverket:

AT+CFUN=0

AT+CFUN=1

efter det utfärdar vi kommandot

AT+CGACT=1,1

och skicka meddelandet "test":

AT+NIPDATA=1, "test"

När ett icke-ip-meddelande tas emot på N21-modulens UART, skickas ett oönskat meddelande av formuläret:

+NIPDATA:1,10,3132333435 // fick icke-ip-meddelande '12345'
där
1 - CID, pdp-kontext
10 - antal databyte efter decimalkomma

Meddelandet kommer till servern i Base64-kodning (i en POST-begäran).

PS För att simulera dataöverföring från en server är det bekvämt att använda programmet Postman. För att ta emot meddelanden kan du använda vilket skript som helst som simulerar en HTTP-server.

Jag hoppas att det är användbart för någon.
Tack.

Källa: will.com

Lägg en kommentar