预计时间: 15分钟先决条件: Twilio帐户Cloudinary accountinged.io帐户ThingRaspberry Pi RPi相机本教程将帮助您创建一个thinged.io部件,该部件可以用您的Raspberry Pi拍照,上传到cloudinary并使用Twilio通过彩信发送。
很好地指导你创建你的第一个thinged部分,以及如何考虑构建它们,这样你就可以构建你自己的扩展Thinged.io平台。0: 用Thinged设置你的树莓派。
请使用tiliowrap将照片上传到CloudinarySend使用tiliowrap创建所需的帐户并获取所有API密钥和令牌一旦您创建了tilio和Cloudinary帐户,您可以从其各自的仪表板获取您的帐户id和访问令牌: 2。 使用Python先决条件设置树莓派: 现在您已经创建了帐户,我们必须在树莓派上安装与Cloudinary和Twilio通信的要求。 sudo apt-python3-pippip3安装获取安装-用户cloudinaryp3安装-用户tiliodone。
2. 配置您的Raspberry Pi相机通过raspi-config:sudo raspi-configSelect接口选项启用Raspberry Pis相机模块,然后使用相机并启用它。重新启动您的Raspberry Pi。
测试您的相机: raspistill-v-o Test.Jpg3。 在Raspberry PiWeve上测试脚本创建了一个github gist,您可以使用它来拍摄这些照片。
将此脚本下载到Raspberry Pi并编辑以下变量: script脚本本身非常简单,由几个小函数组成: 默认情况下,使用安装在Raspbian中的raspistill库从raspberry pi拍摄照片的take_photo (photo_file_name) 上传带有给定名称的照片。发送彩信 (收件人,消息,media_url),使用Twilio发送您的照片。
4. 创造东西。 io part正如python脚本是围绕Cloudinary和Twilio的细包装一样,Thinged是围绕shell命令的细包装。
事物由部分组成,这些部分只是可以通过命令行命令获取和设置的状态。 命令的返回的文本构成了get部件的基础,占位符用于介入set命令中的参数。 我们正在创建的部分看起来如下: 那里有很多不同的键,但不用担心-它实际上很简单。
Ive分解了以下参数: humanName人类友好名称,您可以使用它来标识part.description人类友好描述,以便您可以弄清楚它是如何工作的并添加任何其他详细信息。 partId随机生成的字符串thinged。
io用来标识零件,你在API中使用它来设置值。键入input,output或inputOutput定义零件是用来从你的东西获取状态,在你的东西上设置状态,还是两者的组合 (你可以设置它,但它可能会在其他地方改变,应该阅读)。 输入需要getCommand,输出需要setCommand。
setCommand设置值时将启动的命令。 这里它只是指向我们的python脚本。 当您通过API设置命令时,此值的添加值将在任何地方被零件值替换。
python脚本将不得不通过其他方式加载到raspberry pi中。valueType这可以是数字,字符串或状态。 如前所述,Thinged本质上是命令行命令的精简包装器,因此所有内容都可以在命令行上转换为字符串。
valueType对于任何想要展示零件状态细节的GUI都很重要。 在这里,valueType是状态,这意味着状态的数量是离散的,并且可以将它们枚举为值。 这使GUI可以为2个状态部分提供一个漂亮的按钮,并为3个或更多状态部分提供一个下拉菜单。
状态每个状态代表不同的离散可能性。 由于Thinged.io仅在值更改时才触发集合,因此离散状态彼此重复,但具有不同的值。
regexes对于input或inputOutput部分很有用,您希望对命令的响应进行预处理。通过web门户或API创建此部分。 从那里您可以将零件添加到您的东西中,现在您完成了!
总结: 如果您创建了零件,那么现在应该在GUI上看起来像这样: 如果您已将脚本加载到pi中,并且thinged。 io服务正在运行,一切都已完成。 现在要付出代价: 按下按钮!
在本教程中,我们使用thinged.io输出部件创建了一个带有raspberry pi,cloudinary和twilio帐户以及42行python的间谍相机。 敬请关注更多关于thinged的教程。
io。