资料介绍
描述
几年前我学习了 python,但我找不到任何与之相关的东西。有趣吧?你可以用 python 做很多事情,但我特别关注硬件中的 python,而且我身边没有树莓派电脑(它们的价格最近一直在上涨)。然后我发现了 micropython,它允许我为 Espressif ESP8266 和 ESP32 等低内存设备编写 python 代码(它们是我最喜欢的板子,在评论部分留下你最喜欢的板子,以便我查看它们)。然后砰!我的 micropython 之旅开始了,在磨练了我的 python 技能几个月之后,我决定通过为我经常使用的 Onesignal 服务构建一个库来测试它。像我这样的菜鸟,我拼命寻找 Arduino 框架的 OneSignal 库,但找不到,所以我不得不学习用Arduino发出请求,这给了我很多发出请求的经验,python相对容易编写所以我决定为micropython创建库作为回馈嵌入式社区的一种方式。我计划在不久的将来为 Arduino 编写一个。
安装库
我计划稍后通过upip安装成为可能,但现在,您可以从我的 GitHub存储库下载它。该库还运行在常规的大蟒蛇上。
将 OneSignal 库添加到文件系统
我正在使用 Thonny ide,所以我将使用 Thonny 进行解释。
在 Thonny 中打开 onesignal.py 文件,转到文件并单击“另存为”
然后单击“micropython device”并输入库名称“Onesignal.py”并单击“保存”。
发送推送通知
首先,我们必须从库中导入 Notifier 对象
`从 Onesignal 导入通知程序`
然后用类创建一个对象
notifier= Notifier("APP ID","API KEY","en")
OneSignal 有一个叫做细分的东西,它允许您将订阅者分组到不同的类别;从而允许您向特定人群发送通知。
要向所有订阅者发送“你好”消息,代码如下所示。
notifier.notify_segment("Subscribed Users","hello") # send to a particular segment
要阅读有关 Onesignal 细分市场的更多信息,请单击此处。
假设你为你的家建立了一个面部识别设备,当有人在门口时通知你家里的每个人,但你希望只有你在你的女朋友在门口时得到通知,这可以使用 OneSignal 来完成“玩家 ID” ”。
OneSignal 为您的每个订阅者分配一个特定的“玩家 ID”,该 ID 对每个订阅者都是唯一的,可用于向特定订阅者发送通知。
notifier.notify_user("your player id", "hi Pius, Jessica is at the door")# send to a specific user
发送短信
在发送短信之前,您必须创建一个 Onesignal 短信应用程序,我不会在本文中讨论它,但这里有一个 [链接]( https://documentation.onesignal.com/docs/sms-quickstart )关于如何设置。
创建应用程序后,您需要找到您的应用程序 ID 和 API 密钥,您可以通过单击设置,然后单击密钥和 ID,在您的消息传递应用程序中找到它们
发送短信
首先,我们需要从库中导入 SMS_Messenger 类
from Onesignal import SMS_Messenger
使用您的 App ID、API 密钥、Twilio 电话号码、发件人姓名和语言创建该类的对象。
messenger =SMS_Messenger (
"Zbe1d80b-1234-5678-91f2-f27cc107e112",
"ABCDEFGHIJKLMNOpqrstuvwxyzbjtenarsjcdutavdkats",
["Twilio phone number"],
"sender's name",
"en"
)
要发送短信,请使用以下代码行
messenger.send_text("Hello",["recipient phone number"]) # make sure phone number is added to your onesignal subscribers
发送邮件
首先,我们导入邮件程序类
from Onesignal import Mailer
使用您的 App ID、API 密钥和语言创建 Mailer 类的对象
mailer=Mailer(
"Zbe1d80b-1234-5678-91f2-f27cc107e112",
"ABCDEFGHIJKLMNOpqrstuvwxyzbjtenarsjcdutavdkats",
"en")
创建变量来保存邮件的主题和正文
subject= "cat facts"
body= """<html>
<head>Welcome to Cat Factshead>
<body>
<h1>Welcome to Cat Facts<h1>
<h4>Learn more about everyone's favorite furry companions!h4>
<hr/>
<p>Hi Nick,p>
<p>Thanks for subscribing to Cat Facts! We can't wait to surprise you with funny details about your favorite animal.p>
<h5>Today's Cat Fact (March 27)h5>
<p>In tigers and tabbies, the middle of the tongue is covered in backward-pointing spines, used for breaking off and gripping meat.p>
<a href='https://catfac.ts/welcome'>Show me more Cat Factsa>
<hr/><p><small>(c) 2018 Cat Facts, incsmall>p><p><small><a href='[unsubscribe_url]'>Unsubscribea>small>p>body>
html>"""
然后我们使用 Mailer 类中的“send”函数发送一封电子邮件
要使用玩家 ID 发送电子邮件,请使用这行代码
mailer.send_mail(body,subject,"6392d41a-b776-4c7b-as20-cd58t32y3a96")
要通过他们的电子邮件地址向订阅者发送电子邮件,这行代码
mailer.send_mail(body,subject,emails=["janedoe@gmail.com"])
感谢您阅读我的文章。如果您对 Onesignal 库的 Arduino 版本感兴趣,请关注我,以便在我发布时收到通知。如果您发现代码中有任何可以改进的地方,我还建议您在 GitHub 低内存上创建问题和拉取请求。再次感谢。
- LABVIEW NPOI库文件下载 192次下载
- 带有RT-Thread的更好的SD库
- 用ESP8266模块搭载microPython 1次下载
- 简单的MicroPython闹钟
- pycom-micropython ESP32的MicroPython
- 使用MicroPython开发ESP32(06):WebServer功能实现简单说明
- 使用MicroPython开发ESP32(01):快速入门
- ESP32刷入MicroPython以及连接WiFi
- 带有显示时间的自动车码表避障程序下载 0次下载
- micropython中文教程第二版电子书免费下载 0次下载
- MicroPython的嵌入式中文教程免费下载 3次下载
- MicroPython开发板的电路原理图免费下载 51次下载
- 能跑micropython的TPYBoard到底能做什么
- micropython的详细中文教程资料免费下载 366次下载
- AN1246中文手册之如何在Microchip图形库中创建控件
- 博途用户自定义库的使用-库的编辑及管理 715次阅读
- 博途用户自定义库的使用 639次阅读
- Maxim USB库 581次阅读
- Linux中的静态库和共享库 850次阅读
- ESP8266上的MicroPython入门-3 1049次阅读
- 什么是数据库 1192次阅读
- Linux下的静态链接库和动态链接库的区别是什么? 1058次阅读
- 常见的数据库管理 1918次阅读
- STM32 HAL库与标准库的区别 1.4w次阅读
- 基于微控制器的MicroPython模块运行 2001次阅读
- 云数据库和自建数据库的区别及应用 4413次阅读
- 一文看懂数据库原理与应用 11.7w次阅读
- 数据库引擎是什么 1.1w次阅读
- 目前流行的数据库_构建数据库系统的流程 7076次阅读
- STM32标准库改为HAL库的程序实现 3.4w次阅读
下载排行
本周
- 1PCB板EMC/EMI的设计技巧
- 0.20 MB | 3次下载 | 免费
- 22024PMIC市场洞察
- 2.23 MB | 2次下载 | 免费
- 3UC3842工作原理及开关电源电路
- 0.08 MB | 1次下载 | 免费
- 4JFG-AS02微量程扭矩传感器数据表
- 0.32 MB | 1次下载 | 免费
- 5JFG-3D02三维力传感器数据表
- 0.58 MB | 1次下载 | 免费
- 6LTH7充电电路和锂电池升压5V输出电路原理图
- 0.04 MB | 1次下载 | 免费
- 7TMR技术在电流传感器中的应用
- 616.47 KB | 1次下载 | 免费
- 8LM5157-Q1反激式转换器评估模块
- 3.18MB | 次下载 | 免费
本月
- 1XL4015+LM358恒压恒流电路图
- 0.38 MB | 148次下载 | 1 积分
- 2新概念模拟电路第四册信号处理电路电子书免费下载
- 10.69 MB | 65次下载 | 免费
- 3PCB布线和布局电路设计规则
- 0.40 MB | 30次下载 | 免费
- 4智能门锁原理图
- 0.39 MB | 13次下载 | 免费
- 5GB/T4706.1-2024 家用和类似用途电器的安全第1部分:通用要求
- 7.43 MB | 11次下载 | 1 积分
- 6JESD79-5C_v1.30-2024 内存技术规范
- 2.71 MB | 10次下载 | 免费
- 7elmo直线电机驱动调试细则
- 4.76 MB | 9次下载 | 6 积分
- 8PC1013三合一快充数据线充电芯片介绍
- 1.03 MB | 7次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935115次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420061次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233084次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191367次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183330次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81581次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73806次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65985次下载 | 10 积分
评论
查看更多