NB-IdO. Livraison de données non IP ou simplement NIDD. Essais avec le service commercial MTS

Bon après-midi et bonne humeur !

Il s'agit d'un petit tutoriel sur la configuration de NIDD (Non-IP Data Delivery) dans le service cloud MTS avec le nom explicite "M2M Manager". L'essence de NIDD est l'échange économe en énergie de petits paquets de données sur le réseau NB-IoT entre les appareils et le serveur. Si les appareils GSM antérieurs communiquaient avec le serveur en échangeant des paquets TCP / UDP, une méthode de communication supplémentaire devenait disponible pour les appareils NB-IoT - NIDD. Dans ce cas, le serveur interagit avec le réseau de l'opérateur à l'aide de requêtes POST/GET unifiées. J'écris pour moi (pour ne pas oublier) et pour tous ceux qui le trouvent utile.

Vous pouvez lire sur NB-IoT :

NB-IoT, Internet des objets à bande étroite. Informations générales, caractéristiques technologiques
NB-IoT, Internet des objets à bande étroite. Modes d'économie d'énergie et commandes de contrôle

Théorie NIDD de MTS

Documentation pour le module NB-IoT qui a été utilisé dans le processus de test :
Néoway N21.

Service MTS pour la gestion des appareils M2M.

Pour ressentir NIDD, nous avons besoin de :

  • Carte SIM NB-IoT MTS
  • Dispositif NB-IoT compatible NIDD
  • mot de passe et login de M2M-manager MTS

Comme appareil, j'ai utilisé une planche DÉMO N21, et le mot de passe et le login pour accéder au gestionnaire M2M m'ont été gracieusement fournis par les employés de MTS. Pour cela, ainsi que pour les aides diverses et les nombreuses consultations, un grand merci à eux.

Alors, rendez-vous dans le gestionnaire M2M et vérifiez que :

  • dans l'élément de menu "SIM Manager", il y a "NB-IoT Control Center" ;
  • notre carte NB-IoT est apparue dans le NB-IoT Control Center, ainsi que les rubriques :
    NIDDAPN
    Comptes NIDD
    Sécurité NIDD
  • tout en bas se trouve un élément de menu "API M2M" avec le "NIDD Developer's Guide"

L'ensemble de l'économie devrait ressembler à ceci :

NB-IdO. Livraison de données non IP ou simplement NIDD. Essais avec le service commercial MTS

S'il manque quelque chose dans le gestionnaire M2M, n'hésitez pas à envoyer une demande à votre gestionnaire chez MTS avec une description détaillée de vos souhaits.

Si les éléments nécessaires du centre de contrôle NB-IoT sont en place, vous pouvez commencer à les remplir. De plus, l'élément « Comptes NIDD » est la dernière chose : il aura besoin des données des sections voisines.

  1. NIDDAPN : nous trouvons et remplissons le nom de notre APN et le "Application ID".
  2. Sécurité NIDD : nous spécifions ici l'adresse IP de notre serveur d'application, qui communiquera avec les appareils NB-IoT via le service MTS (serveur).
  3. Comptes NIDD : Remplissez simplement tous les champs et cliquez sur "Enregistrer".

Dès que tous les points sont renseignés, vous pouvez commencer à traiter les demandes que notre serveur devrait former. Nous allons dans "API M2M" et lisons le "Guide du développeur NIDD". Pour que l'appareil puisse s'enregistrer dans le réseau NB-IoT, vous devez créer une configuration SCS AS :

NB-IdO. Livraison de données non IP ou simplement NIDD. Essais avec le service commercial MTS

Le manuel contient une description des paramètres de requête individuels, je ne donnerai que quelques petits commentaires :

  1. lien pour envoyer des requêtes : m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations, où scsAsId est l'"ID d'application" de l'élément de menu "NIDD APN" ;
  2. méthode d'autorisation de base avec un identifiant et un mot de passe - utilisez l'identifiant et le mot de passe que vous avez créés lors du remplissage de l'élément de menu "Comptes NIDD" ;
  3. notificationDestination est l'adresse de votre serveur. À partir de là, vous enverrez des messages non IP aux appareils, et le serveur MTS lui enverra des notifications sur l'envoi et la réception de messages non IP.

Lorsque la configuration SCS AS est créée et que l'appareil s'est enregistré avec succès en mode NIDD dans le réseau NB-IoT de l'opérateur, vous pouvez essayer d'échanger les premiers messages non IP entre le serveur et l'appareil.

Pour envoyer un message du serveur à l'appareil, étudiez la section "2.2 Envoi d'un message" du manuel :

NB-IdO. Livraison de données non IP ou simplement NIDD. Essais avec le service commercial MTS

{ID de configuration} dans le lien de requête, une valeur de type "hex-abracadabra" obtenue à l'étape de création de la configuration. Ressemble à : b00e2485ed27c0011f0a0200.

données — contenu du message en encodage Base64.

Configuration d'un appareil NB-IoT pour qu'il fonctionne dans NIDD

Bien sûr, afin d'échanger des données avec le serveur, notre appareil doit non seulement pouvoir fonctionner dans le réseau NB-IoT, mais également prendre en charge le mode NIDD (non-ip). Dans le cas de la carte de développement N21 DEMO ou d'un autre appareil basé sur Module NB-IoT N21 la séquence d'actions pour l'envoi de messages non IP est décrite ci-dessous.

Nous activons la configuration avec l'APN, que nous avons trouvé en remplissant la rubrique "NIDD APN" du gestionnaire M2M (ici - EFOnidd) :

AT+CFGDFTPDN=5,"EFOnidd"

et demandez à l'appareil de se réinscrire sur le réseau :

AT+CFUN=0

AT+CFUN=1

puis lancez la commande

AT+CGACT=1,1

et envoyez le message "test":

AT+NIPDATA=1, "tester"

A réception d'un message non-ip sur l'UART du module N21, un message non sollicité de la forme est émis :

+NIPDONNEES :1,10,3132333435 // reçu le message non IP '12345'

1 - CID, contexte pdp
10 - nombre d'octets de données après la virgule

Le message arrive au serveur en encodage Base64 (dans une requête POST).

PS Pour simuler le transfert de données depuis le serveur, il est pratique d'utiliser le programme Facteur. Vous pouvez utiliser n'importe quel script imitant un serveur HTTP pour recevoir des messages.

J'espère que c'est utile à quelqu'un.
Merci.

Source: habr.com

Ajouter un commentaire