×

使用Twilio的短信按钮

消耗积分:0 | 格式:zip | 大小:0.12 MB | 2022-12-30

吴藩

分享资料个

描述

本教程是与Twilio团队一起为 2019 年圆周率日制作的!我们正在为PyLadies SF 活动举办一个研讨会:Pi Day + RasPi + Python + 真正的可食用馅饼……有什么不值得爱的?

项目名称不言自明,让我们开始吧!

设置您的 Twilio 帐户

如果您还没有这样做,请前往Twilio并创建一个新帐户。您将获得一些用于连接电话号码的免费信用额度——您甚至可以搜索您想要的电话号码!

现在是从帐户仪表板(主页图标)获取您的帐户 SID 和授权令牌的好时机。保护他们的安全!

 
pYYBAGOuN5GACmNfAALa7xq_lqQ397.png
Twilio 仪表板欢迎屏幕
 

通过串口线连接你的树莓派(可选)

如果您没有备用显示器、键盘和鼠标,您可以通过 USB 串行电缆通过 SSH 连接到您的 Pi,这就是我们将在研讨会上进行的操作。这可能需要您在 Raspberry Pi 的首选项中启用 UART,我们已经设置好了。

您可能还需要在本地计算机上下载并安装驱动程序(如果遇到问题,请尝试同时下载 Prolific 和 SiLabs 驱动程序……向软件之神挥拳

通过其“PWR IN”微型 USB 端口(靠近边缘的端口)为 Pi 供电。如果您已经将 Pi 设置为通过 SSH 无头运行,则可以改为这样做。

否则,假设您已经在您的 Pi 上安装了操作系统,拿起您的串行电缆按照这些说明将您的 Pi 连接到您的计算机并通过 SSH 连接到它(您可以忽略页面上的先前说明)。

 
pYYBAGOuN5SACyxQAAG79FVVQGw294.png
TTL 串行 USB 电缆连接
 

该过程的简要总结,通过命令行:

  • 列出您的 USB 设备以查找 Pi 所在的端口:ls /dev/tty*
  • 找到看起来像/dev/tty.usbserial的那个——后面可能有一些数字
  • 将其插入此命令,然后运行:screen /dev/tty.usbserial 115200
  • 一旦系统提示您登录,请使用默认登录名 pi和密码raspberry (稍后您可能想要更改这些)。您现在已登录到您的 Pi!

使用 ssh 连接在你的 Pi 上设置 wifi,使用内置的 Raspberry Pi 配置工具:

$ sudo raspi-config

完成后,您可以通过 ping Google 测试连接:

$ ping google.com

您应该看到连接定期发生;按 Ctrl+c 停止。

在 RasPi 上使用 Twilio 设置 Python 并测试

按照这些官方说明在您的 Pi 上创建您的第一个 Python 程序并从中发送短信。您需要从此链接安装帮助程序库(如果你正在参加我们的 PyLadies 研讨会,它应该已经安装在你的 MicroSD 卡上。)在 Pi Zero W 上安装 Twilio 库可能需要一段时间,所以现在是向下滚动到构建部分并放置的好时机一切都在一起。

您还可以从主计算机测试 API 代码。我发现这超级友好!请务必将您的*帐户* SID 放在适当的字段中,而不是电话号码的 SID。

 
poYBAGOuN5eAUTfdAAIw9Z_0Qmo144.jpg
Alex 手机的屏幕截图,显示“PyLadies Rock!” 来自她的 Twilio 试用帐户的通知
 

身体素质

按钮的妙处在于,哪根线是哪根线都没有关系!该按钮在按下时仅连接两根电线,因此无论以何种方式插入,它都可以工作。

将母对母跨接导线切成两半,剥去切割端,并用焊料镀锡。将一根电线末端焊接到按钮的每个端子上——如果您使用的电线有两条以上的腿,请使用万用表检查以找到按下按钮时将连接的一对。(当然也可以用面包板代替,如下图。)

将母头连接到 Pi,在引脚 18 和 GND 上。这是一个很棒的引脚参考您还可以向下滚动以查看设置的 Fritzing 图。

……大功告成!

 
 
 
 
pYYBAGOuN5mAQQfUAAFnNfLfbyo073.jpg
 
1 / 2按钮通过焊接母跳线连接到 Pi
 

 

 
pYYBAGOuN52AQWAnAAR8y6Ea-R8289.jpg
以下是连接某些类型的街机按钮的方法(因为街机按钮是最好的)。
 

添加按钮代码

现在,使用该项目底部的代码作为参考,了解如何通过按下按钮触发短信。此代码是 Twilio 的 SMS 代码和Inderpreet Singh 的按钮演示的混搭

要调整此脚本,请在 Pi 上运行:

$ nano sms-button.py

...在具有该文件名的新文档上打开 Nano 编辑器。然后,粘贴代码。最后,替换所有个性化字段:您的帐户 SID、授权令牌、Twilio 号码和个人电话号码。按 Ctrl+o,然后输入,然后按 Ctrl+x,保存并退出。(首先在您的个人计算机上以纯文本文件进行这些编辑,然后通过 SSH 粘贴它可能更容易。)

运行脚本

将代码保存为sms-button.py并运行:

$ python sms-button.py

按下按钮并检查您的手机!

按 Ctrl+c 终止脚本。

 

故障排除

我在运行脚本时遇到了这个错误——“ RuntimeError: Failed to add edge detection ”。这篇文章建议降级到以前版本的 RPi.GPIO,他们的说明对我也很有效。

如果遇到 OpenSSL 错误,请尝试在 Pi 上运行:

pip uninstall pyOpenSSL

...然后再试一次。

延迟:Pi Zero 似乎需要一分钟来启动此脚本,因此如果第一次按下按钮需要一段时间才能响应,这并不罕见。它应该会在一段时间后加速。

 


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !