使用Python和Twilio通过短信通知主持视频办公时间。

简介: 使用Python和Twilio通过短信通知主持视频办公时间。


如果您在Windows环境中工作,请改为运行以下命令:

python -m venv venv

venv\Scripts\activate

对于该项目,您将使用以下Python包:

在您的终端中运行以下命令,在您的虚拟环境中安装这些软件包:

pip install flask python-dotenv twilio tinydb

将您的Twilio凭据保存为环境变量


接下来,您需要收集您的Twilio凭证并设置它们,以便它们可以在您的应用程序中使用。

创建名为的新文件_。包封/包围(动词envelop的简写)并在代码编辑器中打开它。这个文件是您保存配置变量的地方,比如您的Twilio帐户凭证,它将作为环境变量导入到Flask应用程序中。打开。包封/包围(动词envelop的简写)_文件,并添加以下变量:

TWILIO_ACCOUNT_SID=XXXXXXXXXXXXXXX

TWILIO_API_KEY_SID=XXXXXXXXXXXXXXX

TWILIO_API_KEY_SECRET=XXXXXXXXXXXXXXX

TWILIO_PHONE_NUMBER=XXXXXXXXXXXXXXX

您需要用实际的Twilio凭据替换上面的占位符文本,您可以在Twilio控制台中找到这些凭据。登录Twilio控制台,找到您的帐户SID :

复制并粘贴的值帐户SID替换的占位符文本TWILIO_ACCOUNT_SID .

然后,导航到控制台的API密钥部分并生成新的API密钥。复制API键的值(同suddenionosphericdisturbance)电离层的突然骚扰秘密替换的占位符文本TWILIO_API_KEY_SIDTWILIO_API_KEY_SECRET .

接下来,如果你还没有带短信功能的aTwilio电话号码,你需要买一个。在此了解如何购买Twilio电话号码。如果你已经有一个Twilio电话号码,它会显示在帐户信息部分,如上面的截图所示。复制此值,并使用它来替换的占位符文本TWILIO_PHONE_NUMBER .

非常重要的是确保这些私有凭据的安全并且不受版本控制,所以如果您正在使用Git,请创建一个_。被增加_文件放在项目的根目录下。您可以在这里列出希望git忽略的文件和目录,以免被跟踪或提交。打开。被增加_在代码编辑器中,将。包封/包围(动词envelop的简写)_文件,如下所示:

.env

现在您已经准备好开始构建您的Flask应用程序了。

构建Flask服务器


创建并打开一个名为_app.py_。这是包含所有Python代码的文件。要设置这个项目,您需要创建一个新的Flask应用程序实例、一个Twilio客户机实例和一个新的TinyDB数据库。

由于这是一个小的教程项目,我们将把数据存储在TinyDB JSON文件中。但是,如果您决定进一步开发这个项目,您可能希望为您部署到生产环境的版本选择不同的数据库。

里面的_app.py_,粘贴以下代码:

import os
from dotenv import load_dotenv
from flask import Flask, render_template, request, abort
from twilio.rest import Client
from tinydb import TinyDB, Query
load_dotenv()
TWILIO_ACCOUNT_SID = os.environ.get(‘TWILIO_ACCOUNT_SID’)
TWILIO_API_KEY_SID = os.environ.get(‘TWILIO_API_KEY_SID’)
TWILIO_API_KEY_SECRET = os.environ.get(‘TWILIO_API_KEY_SECRET’)
TWILIO_PHONE_NUMBER = os.environ.get(‘TWILIO_PHONE_NUMBER’)
client = Client(TWILIO_API_KEY_SID, TWILIO_API_KEY_SECRET, TWILIO_ACCOUNT_SID)
db = TinyDB(‘office_hours.json’)
app = Flask(__name__)
@app.route(‘/’)
def index():
return render_template(‘index.html’)

使用这段代码,您已经创建了一个新的Flask应用程序,其中包含必要的导入、您在上一步中设置的环境变量、一个新的Twilio客户端实例和一个新的数据库。您现在还有一条路线(使用app.route()decorator ),它将呈现一个名为_index.html_,它将包含应用程序的HTML。因为您还没有该文件,所以创建新的_index.html_文件在_模板_目录现在。打开文件并粘贴以下HTML代码:

Office Hours

Name

Phone

Room Name

Create Office Hours Chat

{% if status and status.video_room %}

Success! Office hours room: {{status.video_room.name}} ✅

{% endif %}

这个应用程序的UI并不复杂。它包括一个表单,允许用户输入他们的姓名、电话号码和他们希望接待人们的办公时间视频室的名称。它还有一个显示状态消息的部分,让用户知道房间是否创建成功。在这个HTML文件中,您还引用了一个_样式. css_文件—让我们现在创建它。

创造_static/styles.css_并粘贴以下CSS样式:

.container {
margin-top: 20px;
font-family: sans-serif;
}
h1 {
text-align: center;
}
form {
text-align: center;
}
.data-field {
margin-bottom: 0.5em;
}
input {
padding: 0.6em;
border: 2px solid rgb(177, 189, 233);
border-radius: 5px;
vertical-align: middle;
font-size: 14px;
}
input:focus {
outline: 0;
border-color: #0e364d;
}
label {
text-align: right;
display: inline-block;
width: 6em;
margin: 0 1em 0 0;
}
button {
padding: 0.75em 1em;
border: none;
background-color: rgb(27, 111, 189);
border-radius: 4px;
font-size: 100%;
color: rgb(255, 255, 255);
margin: 0.5em auto;
}
button:focus,
button:hover {
background-color: rgb(88, 166, 240);
}
button:active {
background-color: rgb(177, 189, 233);
}
#status {
margin: 0.5em auto;
text-align: center;
color: rgb(13, 73, 32);
}

现在你的应用看起来更有趣了。

是时候运行你的服务器了。但是,在此之前,在项目的根目录下创建一个名为_。flaskenv_。这是为烧瓶配置添加环境变量的地方。打开_。flaskenv_并添加以下几行:

FLASK_APP=app.py

FLASK_ENV=development

然后,在您的终端中,通过运行以下命令启动服务器:

flask run

一旦服务器启动,您将看到如下日志:

(venv) [office-hours] flask run

* Serving Flask app ‘app.py’ (lazy loading)

* Environment: development

* Debug mode: on

* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

* Restarting with stat

* Debugger is active!

* Debugger PIN: 290-231-040

最后

不知道你们用的什么环境,我一般都是用的Python3.6环境和pycharm解释器,没有软件,或者没有资料,没人解答问题,都可以免费领取(包括今天的代码),过几天我还会做个视频教程出来,有需要也可以领取~

给大家准备的学习资料包括但不限于:

Python 环境、pycharm编辑器/永久激活/翻译插件

python 零基础视频教程

Python 界面开发实战教程

Python 爬虫实战教程

Python 数据分析实战教程

python 游戏开发实战教程

Python 电子书100本

Python 学习路线规划



相关文章
|
3月前
|
编解码 数据安全/隐私保护 Python
抖音批量发布视频工具,自动上传视频作品笔记,python发布软件
这个抖音批量发布工具包含三个主要模块:主上传程序、配置文件和视频预处理工具。主程序
|
3月前
|
存储 API 数据库
自动发短信的软件,批量自动群发短信,手机号电话号生成器【python框架】
这个短信群发系统包含以下核心功能: 随机手机号生成器(支持中国号码) 批量短信发送功能(使用Twilio API)
|
3月前
|
API 数据安全/隐私保护 Python
批量发短信的软件,自动群发短信批量工具,手机号电话生成脚本插件【python】
该工具包含三个核心模块:短信发送核心功能、配置管理系统和命令行界面。使用时需先配置API密钥和短信模板
|
4月前
|
数据采集 机器学习/深度学习 编解码
从零复现Google Veo 3:从数据预处理到视频生成的完整Python代码实现指南
本文详细介绍了一个简化版 Veo 3 文本到视频生成模型的构建过程。首先进行了数据预处理,涵盖了去重、不安全内容过滤、质量合规性检查以及数据标注等环节。
282 5
从零复现Google Veo 3:从数据预处理到视频生成的完整Python代码实现指南
|
3月前
|
API 数据安全/隐私保护 Python
小红书批量发布协议, 抖音自动批量发布软件脚本,笔记作品视频自动发布工具【python】
这个工具框架包含了小红书和抖音的批量发布功能,支持图片和视频处理、定时发布等功能
|
3月前
|
Web App开发 数据安全/隐私保护 Python
快手批量发布作品工具,自动上传视频发布软件,python实现自动脚本
这个脚本实现了快手批量上传视频的功能,包含登录、上传视频、添加描述和发布等完整流程
|
3月前
|
数据安全/隐私保护 Python
快手自动上传视频脚本,图文视频批量发布工具,快手批量发布作品软件【python】
快手批量上传工具提供了完整的视频和图文上传功能,包含登录验证、文件上传、标题设置
|
3月前
|
Web App开发 数据安全/隐私保护 Python
抖音快手小红书哔哩哔哩,批量发布作品笔记视频工具,自动发布作品上传笔记视频【python】
这个工具实现了四大平台的视频批量上传功能,包含完整的异常处理和日志记录。使用时需要配置
|
3月前
|
JSON API 数据安全/隐私保护
批量上传发布视频的软件,小红书抖音快手哔哩哔哩,自动发布上传作品工具【python】
这个项目包含完整的视频批量上传功能,支持多个平台,包含视频处理、配置管理和错误处理等功能
|
7月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的反诈视频宣传管理系统源码+运行步骤
基于Python+Vue开发的反诈视频宣传管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的反诈宣传管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
89 6

推荐镜像

更多