Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
PyWa is a Fast, Simple, Modern and easy-to-use asynchronous Python framework for building WhatsApp bots using the WhatsApp Cloud API.
Get Started • WhatsApp Client • Handlers • Listeners • Filters • Updates • Flows • Examples
See Getting Started for more information.
from pywa import WhatsApp
wa = WhatsApp(
phone_id="100458559237541",
token="EAAEZC6hUxkTIB"
)
wa.send_message(
to="9876543210",
text="Hello from PyWa!"
)
WhatsApp
client, pass a web server app (FastAPI in this example) and register callbacks:See Handlers for more information.
# wa.py
from pywa import WhatsApp, filters, types
from fastapi import FastAPI
fastapi_app = FastAPI()
wa = WhatsApp(
phone_id="1234567890",
token="xxxxxxx",
server=fastapi_app,
callback_url="https://yourdomain.com/",
verify_token="xyz123",
app_id=123456,
app_secret="yyyyyy"
)
@wa.on_message(filters.matches("Hello", "Hi"))
def hello(client: WhatsApp, msg: types.Message):
msg.react("👋")
msg.reply_text(
text=f"Hello {msg.from_user.name}!",
buttons=[
types.Button(
title="Click me!",
callback_data="id:123"
)
]
)
@wa.on_callback_button(filters.startswith("id"))
def click_me(client: WhatsApp, clb: types.CallbackButton):
clb.reply_text("You clicked me!")
pip install "fastapi[standard]"
):fastapi dev wa.py # see uvicorn docs for more options (port, host, reload, etc.)
💫 Async Usage
pywa
to pywa_async
and use async
/await
:# wa.py
import fastapi
from pywa_async import WhatsApp, types
fastapi_app = fastapi.FastAPI()
wa = WhatsApp(..., server=fastapi_app)
async def main():
await wa.send_message(...)
@wa.on_message()
async def hello(_: WhatsApp, msg: types.Message):
await msg.react("👋")
await msg.reply(...)
fastapi dev wa.py
pip3 install -U pywa
pip3 install -U git+https://github.com/david-lev/pywa.git
pip3 install -U "pywa[fastapi]"
pip3 install -U "pywa[flask]"
pip3 install -U "pywa[cryptography]"
See the Documentation for detailed instructions
account_alerts
, phone_number_quality_updates
, template_category_updates
, etc.)Feel free to open an issue if you have any suggestions. or even better - submit a PR!
This project is licensed under the MIT License - see the LICENSE file for details
Contributions are welcome! Please see the Contributing Guide for more information.
FAQs
Python wrapper for the WhatsApp Cloud API
We found that pywa demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.