在移动办公和自动化需求日益增长的今天,Apple的“快捷指令”(Shortcuts)应用已成为iOS和macOS用户提升效率的利器。近期,不少技术爱好者发现了一个实用场景:如何通过快捷指令接收JSON格式的数据,并自动触发短信发送功能。本文将详解这一操作的核心步骤、应用场景及注意事项,帮助用户轻松实现“数据到短信”的自动化闭环。
为何需要JSON驱动短信发送?
传统手动发送短信效率低下,尤其当需要批量通知或与外部系统(如Web服务、数据库或IoT设备)联动时,JSON(JavaScript Object Notation)作为轻量级数据交换格式,能够结构化地携带收件人、短信内容、发送时间等参数。通过快捷指令解析JSON并调用iOS原生短信接口,可实现:
- 自动化提醒:从API获取待办事项通知,自动发送短信给相关人员。
- 智能家居告警:智能传感器触发Webhook,返回JSON包含异常信息,快捷指令解析后向户主发短信。
- 工作流衔接:表单提交后生成JSON,无缝触发群发确认短信。
实现步骤详解
第一步:准备JSON输入格式
JSON数据通常来自“从剪贴板获取”“从URL获取内容”或“接收共享内容”。一个典型输入示例:
{
"phone": "+8613800138000",
"message": "您的订单已发货,快递单号:SF1234567890"
}
注意需包含两个键:phone(收件人号码,含国际区号)和message(短信正文)。
第二步:创建快捷指令
- 打开“快捷指令”应用,点击“+”新建。
- 添加“文本”操作——将JSON字符串粘贴进去;或使用“从剪贴板获取”操作。
- 添加“字典”操作,并选择“从输入中获取字典”——这一步将JSON文本转为可操作字典对象。
- 使用“从字典中获取值”操作,分别提取
phone和message的值。注意:需指定键名,如"phone"。 - 添加“发送信息”操作,将收件人设置为上一步提取的
phone变量,信息正文设置为message变量。 - (可选)添加“显示提醒”或“记录日志”,确认发送状态。
第三步:测试与运行
点击右下角播放按钮,或通过“共享表单”“Siri语音”等方式触发。首次运行会要求授权“发送信息”权限,需允许。建议先用自己两个号码测试,确保号码格式正确。
进阶技巧:动态JSON与多重接收
若JSON包含多个收件人(数组形式),如:
{
"recipients": [
{"phone": "13800001111", "message": "通知A"},
{"phone": "13900002222", "message": "通知B"}
]
}
则需要添加“重复”操作,遍历每个收件人并逐一发送。具体:获取字典中recipients数组后,使用“重复每个项目”操作,内部再次提取phone和message。
常见问题与注意事项
- 号码格式:中国大陆手机号需加+86前缀,如
+8613800138000,否则可能发送失败或识别为海外号码。 - 隐私与权限:快捷指令无法读取系统短信列表,只能发送新短信;且每次运行都会弹出确认窗口,除非在“快捷指令设置”中关闭“发送信息前询问”。
- API兼容性:若JSON来自Webhook,建议使用“获取URL内容”操作并设置HTTP方法为POST/GET,再提取返回数据。
- 限速问题:iOS对频繁发送短信有一定限制(每分钟约10条),批量操作需注意间隔。
应用场景展望
这一技巧尤其适合中小型企业的轻量级自动化:例如,客服系统提交工单后,通过Shortcuts自动向客户发送确认短信;或者电商卖家批量生成订单通知。与HomeKit、IFTTT等平台结合,还能实现更复杂的跨设备联动。
总之,Apple快捷指令与JSON的结合,让非程序员也能搭建自己的“数据-短信”管道。随着iOS 18进一步开放自动化能力,这类创意应用将越来越丰富。立即动手尝试,你会发现自己缺少的只是一个合理的JSON结构!