God ettermiddag og godt humør!
Dette er en kort veiledning om hvordan du konfigurerer NIDD (Non-IP Data Delivery) i MTS-skytjenesten med det talende navnet «M2M Manager». Essensen av NIDD ligger i energieffektiv utveksling av små datapakker over NB-IoT-nettverket mellom enheter og serveren. Hvis tidligere GSM-enheter kommuniserte med serveren ved å utveksle TCP/UDP-pakker, ble en ekstra kommunikasjonsmetode tilgjengelig for NB-IoT-enheter – NIDD. I dette tilfellet samhandler serveren med operatørens nettverk ved hjelp av enhetlige POST/GET-forespørsler. Jeg skriver for meg selv (for ikke å glemme) og alle som vil finne dette nyttig.
Du kan lese om NB-IoT:
Dokumentasjon for NB-IoT-modulen som ble brukt under testing:
.
.
For å føle NIDD trenger vi:
- SIM-kort NB-IoT MTS
- NB-IoT-enhet med NIDD-støtte
- passord og pålogging fra M2M-manager MTS
Jeg brukte et brett som en enhet N21 DEMO, og passordet og påloggingsinformasjonen for tilgang til M2M-manageren ble vennligst gitt til meg av MTS-ansatte. For dette, samt for diverse assistanse og en rekke konsultasjoner, en stor takk til dem.
Så går vi til M2M-behandleren og sjekker at:
- i menyvalget «SIM-administrator» finnes «NB-IoT-kontrollsenter»;
- Vårt NB-IoT-kort har dukket opp i «NB-IoT-kontrollsenteret», samt i følgende seksjoner:
NIDDAPN
NIDD-kontoer
NIDD-sikkerhet - Helt nederst er det et menyelement «API M2M» med «NIDD Developer's Guide»
Det hele skal se omtrent slik ut:

Hvis noe mangler i M2M-behandleren, kan du gjerne sende en forespørsel til din leder hos MTS med en detaljert beskrivelse av dine ønsker.
Hvis de nødvendige elementene for NB-IoT-kontrollsenteret er på plass, kan du begynne å fylle dem ut. Og elementet «NIDD-kontoer» er det siste: det vil kreve data fra de tilstøtende seksjonene.
- NIDD APN: Vi kommer opp med og fyller ut navnet på APN-en vår og «Applikasjons-ID».
- NIDD-sikkerhet: Her spesifiserer vi IP-adressen til applikasjonsserveren vår, som skal kommunisere med NB-IoT-enheter via MTS-tjenesten (serveren).
- NIDD-kontoer: Bare fyll ut alle feltene og klikk på «Lagre».
Når alle elementene er utfylt, kan vi begynne å håndtere forespørslene som serveren vår skal generere. Gå til «M2M API» og les «NIDD Developer's Guide». For at enheten skal kunne registreres i NB-IoT-nettverket, må du opprette en SCS AS-konfigurasjon:

Manualen inneholder en beskrivelse av individuelle spørreparametere. Jeg vil bare gi et par korte kommentarer:
- lenke for å sende forespørsler: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations, der scsAsId er «Applikasjons-ID-en» fra menyelementet «NIDD APN»;
- grunnleggende autorisasjonsmetode med brukernavn og passord - bruk brukernavnet og passordet du opprettet da du fylte ut menyelementet "NIDD-kontoer";
- notificationDestination — adressen til serveren din. Fra den sender du ikke-IP-meldinger til enheter, og MTS-serveren sender varsler om sending og mottak av ikke-IP-meldinger til den.
Når SCS AS-konfigurasjonen er opprettet og enheten er registrert i NIDD-modus i operatørens NB-IoT-nettverk, kan du prøve å utveksle de første ikke-IP-meldingene mellom serveren og enheten.
For å sende en melding fra serveren til enheten, les avsnittet «2.2 Sende en melding» i håndboken:

{konfigurasjons-ID} i forespørselslenken – en verdi av typen «hex-abracadabra», innhentet under opprettelsen av konfigurasjonen. Den ser slik ut: b00e2485ed27c0011f0a0200.
dato — meldingsinnhold i Base64-koding.
Sette opp en NB-IoT-enhet for å fungere i NIDD
For å kunne utveksle data med serveren må enheten vår selvsagt ikke bare kunne fungere i NB-IoT-nettverket, men også støtte NIDD-modus (ikke-IP). Når det gjelder N21 DEMO-feilsøkingskortet eller en annen enhet basert på Handlingssekvensen for overføring av ikke-IP-meldinger er beskrevet nedenfor.
Vi aktiverer konfigurasjonen med APN-en vi kom opp med da vi fylte ut «NIDD APN»-elementet i M2M-manageren (her — EFOnidd):
AT+CFGDFTPDN=5,«EFOnidd»
og be enheten om å registrere seg på nettverket på nytt:
AT+CFUN=0
AT+CFUN=1
etter det gir vi kommandoen
AT+CGACT=1,1
og vi sender meldingen «test»:
AT+NIPDATA=1, "test"
Når en ikke-IP-melding mottas på UART-en til N21-modulen, sendes en uoppfordret melding av følgende type:
+NIPDATA:1,10,3132333435 // ikke-IP-melding '12345' mottatt
der
1 — CID, pdp-kontekst
10 - antall databyte etter desimaltegnet
Meldingen sendes til serveren i Base64-koding (i en POST-forespørsel).
PS For å simulere dataoverføring fra serveren er det praktisk å bruke programmet For å motta meldinger kan du bruke et hvilket som helst skript som simulerer en HTTP-server.
Jeg håper dette vil være nyttig for noen.
Takk.
Kilde: www.habr.com
