下午好,心情好!
这是一个关于在 MTS 云服务中设置 NIDD(非 IP 数据传输)的小教程,其名称不言自明“M2M Manager”。 NIDD 的本质是通过 NB-IoT 网络在设备和服务器之间高效地交换小数据包。 如果以前 GSM 设备通过交换 TCP/UDP 数据包与服务器进行通信,那么 NB-IoT 设备可以使用另一种通信方法 - NIDD。 在这种情况下,服务器使用统一的 POST/GET 请求与运营商网络进行交互。 我是为自己(以免忘记)和所有认为它有用的人而写的。
您可以阅读有关 NB-IoT 的信息:
测试期间使用的 NB-IoT 模块的文档:
为了了解 NIDD,我们需要:
- SIM卡 NB-IoT MTS
- 支持 NIDD 的 NB-IoT 设备
- M2M 管理器 MTS 的密码和登录信息
我用一块板作为设备 N21 演示,并且 MTS 员工向我提供了访问 M2M 管理器的密码和登录名。 为此,以及他们提供的各种帮助和多次咨询,我们非常感谢他们。
因此,请转到 M2M 管理器并检查:
- 在“SIM管理器”菜单项中有“NB-IoT控制中心”;
- 我们的NB-IoT卡已经出现在NB-IoT控制中心,以及以下部分:
NIDD 接入点
NIDD 账户
NIDD 安全 - 最底部有一个菜单项“API M2M”和“NIDD Developer Guide”
整个事情应该看起来像这样:
如果 M2M 管理器中缺少某些内容,请随时向 MTS 的经理发送请求,并详细描述您的愿望。
如果所需的 NB-IoT 控制中心项目已就位,您可以开始填写。 此外,“NIDD 帐户”项目排在最后:它将需要来自相邻部分的数据。
- NIDD 接入点: 我们提出并填写我们的 APN 名称和“应用程序 ID”。
- NIDD 安全: 这里我们表示我们的应用服务器的IP地址,它将通过MTS服务(服务器)与NB-IoT设备进行通信。
- NIDD 帐户: 只需填写所有字段并单击“保存”即可。
一旦完成所有项目,您就可以开始处理我们的服务器应生成的请求。 转至 M2M API 并阅读 NIDD 开发人员指南。 为了使设备在 NB-IoT 网络中注册,您需要创建 SCS AS 配置:
该手册包含各个请求参数的描述,我仅给出一些小评论:
- 发送请求的链接:m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations,其中 scsAsId 是“NIDD APN”菜单项中的“应用程序 ID”;
- 使用登录名和密码的基本授权方法 - 使用您在填写“NIDD 帐户”菜单项时创建的登录名和密码;
- notificationDestination - 您的服务器地址。 您将通过它向设备发送非 IP 消息,MTS 服务器将向其发送有关发送和接收非 IP 消息的通知。
创建 SCS AS 配置并且设备已在运营商的 NB-IoT 网络中以 NIDD 模式成功注册后,您可以尝试在服务器和设备之间交换第一个非 IP 消息。
要将消息从服务器传输到设备,请研究手册的“2.2 发送消息”部分:
{配置ID} 在请求链接中 - “hex-abracadabra”类型的值,在创建配置阶段获得。 看起来像:b00e2485ed27c0011f0a0200。
data — Base64 编码的消息内容。
配置 NB-IoT 设备以在 NIDD 中工作
当然,要与服务器交换数据,我们的设备不仅要能够工作在NB-IoT网络中,还要支持NIDD(非ip)模式。 对于N21 DEMO开发板或其他基于的设备
我们使用在 M2M 管理器中填写“NIDD APN”项(此处为 EFOnidd)时提出的 APN 来激活配置:
AT+CFGDFTPDN=5,"EFOnidd"
并要求设备在网络上重新注册:
AT+CFUN=0
AT+CFUN=1
之后我们发出命令
AT+CGACT=1,1
并发送消息“测试”:
AT+NIPDATA=1,“测试”
当 N21 模块的 UART 上收到非 IP 消息时,会发出以下形式的未经请求的消息:
+NIPDATA:1,10,3132333435 // 收到非ip消息'12345'
哪里
1 - CID、pdp 上下文
10 - 小数点后的数据字节数
消息以 Base64 编码(在 POST 请求中)到达服务器。
PS 要模拟从服务器传输数据,使用该程序很方便
我希望它对某人有用。
谢谢。
来源: habr.com