今天一起来学习使用合宙低功耗4G模组Air780E发送SMS短消息:

一、SMS简介

SMS(短消息服务,ShortMessageService)功能主要用于在蜂窝网络中传输短消息。

在4G网络中,短信可以在数据传输的同时进行,不会因数据业务占用网络资源而被延迟或阻塞。

在Air780E模块中,当收到新短信后,MAIN_RI变为低电平,持续120ms,再变为高电平。可根据这个引脚来判断是否有新短信。

移动,联通卡不需开通VOLTE可以支持短信功能。

二、准备硬件环境

2.1 Air780E开发板一套,包括天线、USB数据

2.2 数据通信线

typec接口USB数据线即可。

2.3 开通短信功能的SIM卡

Air780E不支持电信卡的短信功能!

如果是联通卡或者移动卡,均可收取短信,但实名制的卡才能发送短信。

如果是专网卡,请参考专网卡配置指南:(暂时相关文章还没出,后续补充)

三、准备软件环境

3.1 基本的下载调试工具

下载Luatools

四、sms功能软硬件资料

本文通过demo演示来说明本章节内容的基本用法。

4.1 源码和工具

  • Air780E模块使用固件:SDK&Demo-合宙文档中心,本demo使用的固件版本是:LuatOS-SoC_V1112_EC618_FULL.soc

  • 本教程使用的demo:
    https://gitee.com/openLuat/LuatOS-Air780E/tree/master/demo/sms

  • 将固件和脚本烧录到模块中,使用说明参考:Luatools下载和详细使用

  • 源码和固件已打包,如下所示:点我,下载完整压缩文件包

4.2 本demo使用api简介

sms.send(phone,msg,auto_phone_fix)

作用:发送短信

参数:

传入值类型 解释

string

电话号码,必填

string

短信内容,必填

bool

是否自动处理电话号号码的格式,
默认是按短信内容和号码格式进行自动判断,
设置为false可禁用

返回值:

返回值类型 解释

bool/nil

成功返回true,否则返回false或nil

sms.setNewSmsCb(func)

作用:设置新SMS的回调函数

参数:

传入值类型 解释

function

回调函数,3个参数,num,txt,metas

返回值:

返回值类型 解释

nil

传入是函数就能成功,无返回值

五、代码示例介绍

5.1 发送短信

5.1.1 demo介绍

只需要调用sms.send()函数,填入对方手机号和消息内容即可。

通过设置回调函数。或者订阅发送完成的系统消息,来进行发送完成的处理。

本demo的效果是给服务商发短信消息,查询话费信息。

5.1.2 将程序烧录到开发板

参考:将固件和脚本烧录到模块中:Luatools下载和使用教程-合宙模组资料中心。

六、功能验证

成功发送短信。

七、常见问题

7.1 物联网卡支持短信功能吗?

一般来说,物联网卡是不支持短信功能的,具体需要咨询物联网卡供应商。

7.2 支持移动、电信,联通卡的短信功能吗?

Air780E不支持电信卡的短信功能!!

如果是联通卡或者移动卡,均可收取短信,但实名制的卡才能发送短信。

7.3 是否支持彩信功能

不支持。

Air780E如何发送SMS?一文详解!的更多相关文章

  1. 一文详解 Linux 系统常用监控工一文详解 Linux 系统常用监控工具(top,htop,iotop,iftop)具(top,htop,iotop,iftop)

    一文详解 Linux 系统常用监控工具(top,htop,iotop,iftop)     概 述 本文主要记录一下 Linux 系统上一些常用的系统监控工具,非常好用.正所谓磨刀不误砍柴工,花点时间 ...

  2. 一文详解Hexo+Github小白建站

    作者:玩世不恭的Coder时间:2020-03-08说明:本文为原创文章,未经允许不可转载,转载前请联系作者 一文详解Hexo+Github小白建站 前言 GitHub是一个面向开源及私有软件项目的托 ...

  3. 一文详解 WebSocket 网络协议

    WebSocket 协议运行在TCP协议之上,与Http协议同属于应用层网络数据传输协议.WebSocket相比于Http协议最大的特点是:允许服务端主动向客户端推送数据(从而解决Http 1.1协议 ...

  4. 一文详解 OpenGL ES 3.x 渲染管线

    OpenGL ES 构建的三维空间,其中的三维实体由许多的三角形拼接构成.如下图左侧所示的三维实体圆锥,其由许多三角形按照一定规律拼接构成.而组成圆锥的每一个三角形,其任意一个顶点由三维空间中 x.y ...

  5. 1.3w字,一文详解死锁!

    死锁(Dead Lock)指的是两个或两个以上的运算单元(进程.线程或协程),都在等待对方停止执行,以取得系统资源,但是没有一方提前退出,就称为死锁. 1.死锁演示 死锁的形成分为两个方面,一个是使用 ...

  6. 一文详解Redis键过期策略

    摘要:Redis采用的过期策略:惰性删除+定期删除. 本文分享自华为云社区<Redis键过期策略详解>,作者:JavaEdge. 1 设置带过期时间的 key # 时间复杂度:O(1),最 ...

  7. 一文详解 Linux Crontab 调度任务

    最近接到这样一个任务: 定期(每天.每月)向"特定服务器"传输"软件服务"的运营数据,因此这里涉及到一个定时任务,计划使用Python语言添加Crontab依赖 ...

  8. 一文详解如何在基于webpack5的react项目中使用svg

    本文主要讨论基于webpack5+TypeScript的React项目(cra.craco底层本质都是使用webpack,所以同理)在2023年的今天是如何在项目中使用svg资源的. 首先,假定您已经 ...

  9. 一步一步从原理跟我学邮件收取及发送 8.EHLO 命令详解

    我们在上一篇中解决了接收一行命令的问题后,就可以来具体的分析邮件发送过程中涉及到的 SMTP 协议内容了. 首先来看通讯过程中的第一个内容:服务器在客户端连接上来后会主动发送一个问好的信息,所以这第一 ...

  10. 一文详解 ARP 协议

    我把自己以往的文章汇总成为了 Github ,欢迎各位大佬 star https://github.com/crisxuan/bestJavaer 公众号连载计算机网络文章如下 ARP,这个隐匿在计网 ...

随机推荐

  1. 异常处理,内置方法(__new__,__init__,__del__析构方法,单例模式,item系列)

    __new__ 创建一个对象 class A: def __init__(self): print('in init') def __new__(cls): print('in new') self= ...

  2. 简单理解.net 依赖注入的三种方式

    前言 :.NET5.0 于2020年11月10日正式发布,它是3.1之后的 .NET Core 的下一个主要版本.微软将这个新版本命名为 .NET 5.0 而不是 .NET Core 4.0,其原因有 ...

  3. One-for-All:上交大提出视觉推理的符号化与逻辑推理分离的新范式 | ECCV 2024

    通过对多样化基准的严格评估,论文展示了现有特定方法在实现跨领域推理以及其偏向于数据偏差拟合方面的缺陷.从两阶段的视角重新审视视觉推理:(1)符号化和(2)基于符号或其表示的逻辑推理,发现推理阶段比符号 ...

  4. Linux 网络设备命名规则

    在 Linux 系统中,网络接口的命名规则已经经历了几次重要变化,特别是从传统的以 eth 和 wlan 开头的名称,转变到更现代.更具描述性的命名方式.以下是这些变化的概述: 1. 传统命名约定 在 ...

  5. 【解决方案】项目重构之如何使用 MySQL 替换原来的 MongoDB

    目录 前言 一.痛点所在 二.选型分析 2.1特点对比 2.2场景对比 三.核心思路 四.demo 示例 4.1实体映射 4.1.1MongoDB 实体 4.1.2MySQL 实体 4.2查询代码 4 ...

  6. ASP.NET Core – Custom Input formatters For Partial Update and Handle Under-posting

    前言 之前的文章有谈过关于 ASP.NET Core 处理 under-posting 的方式. 它会使用 class default value. 许多时候这可能不是我们期望的. 比如当我们想要 p ...

  7. Azure 入门系列 (第四篇 Key Vault)

    本系列 这个系列会介绍从 0 到 1 搭建一个 Web Application 的 Server. 间中还会带上一些真实开发常用的功能. 一共 6 篇 1. Virtual Machine (VM) ...

  8. java 线程、进程及相关知识点 《笔记一》

    一.线程.进程 线程,就是是进程的一个单位,程序最小执行单位. 进程,就是一个执行中的应用程序:由此可见,进程是由很多线程组成的: 线程生命周期,就是管杀也管埋的过程,生老病死: 线程的5个状态: 新 ...

  9. 3.1 gradio的基本使用详解

    ·gr.Text:用于文本输入,适用于自然语言处理任务的模型. gr.Image:用于图像上传,适用于图像处理或计算机视觉模型. ·gr.Audio:用于音频输入,适用于语音识别或音频处理模型. im ...

  10. 阿里邮箱网页正常登陆,outlook报错

    事件起因: 某客户使用阿里邮箱办公,然又使用outlook绑定阿里邮箱:在网页端可以登录阿里邮箱,但是在outlook的登录的时候,服务器.端口均设置无误,但是就是登录不上去,死活都等登录不上去,总是 ...