Security News
The Push to Ban Ransom Payments Is Gaining Momentum
Ransomware costs victims an estimated $30 billion per year and has gotten so out of control that global support for banning payments is gaining momentum.
android-sms-gateway
A client library for sending and managing SMS messages via the Android SMS Gateway API
Readme
This is a Python client library for interfacing with the Android SMS Gateway API.
pip install android_sms_gateway
You can also install with preferred http client:
pip install android_sms_gateway[requests]
pip install android_sms_gateway[aiohttp]
pip install android_sms_gateway[httpx]
Here's an example of using the client:
import asyncio
import os
from android_sms_gateway import client, domain
login = os.getenv("ANDROID_SMS_GATEWAY_LOGIN")
password = os.getenv("ANDROID_SMS_GATEWAY_PASSWORD")
message = domain.Message(
"Your message text here.",
["+1234567890"],
)
def sync_client():
with client.APIClient(login, password) as c:
state = c.send(message)
print(state)
state = c.get_state(state.id)
print(state)
async def async_client():
async with client.AsyncAPIClient(login, password) as c:
state = await c.send(message)
print(state)
state = await c.get_state(state.id)
print(state)
print("Sync client")
sync_client()
print("\nAsync client")
asyncio.run(async_client())
There are two client classes: APIClient
and AsyncAPIClient
. The
APIClient
is synchronous and the AsyncAPIClient
is asynchronous. Both
implement the same interface and can be used as context managers.
There are two methods:
send(message: domain.Message) -> domain.MessageState
: Send a new SMS message.get_state(_id: str) -> domain.MessageState
: Retrieve the state of a previously sent message by its ID.The API clients abstract away the HTTP client used to make requests. The library includes support for some popular HTTP clients and trys to discover them automatically:
Also you can implement your own HTTP client that conforms to the http.HttpClient
or ahttp.HttpClient
protocol.
Contributions are welcome! Please submit a pull request or create an issue for anything you'd like to add or change.
This library is open-sourced software licensed under the Apache-2.0 license.
FAQs
A client library for sending and managing SMS messages via the Android SMS Gateway API
We found that android-sms-gateway 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
Ransomware costs victims an estimated $30 billion per year and has gotten so out of control that global support for banning payments is gaining momentum.
Application Security
New SEC disclosure rules aim to enforce timely cyber incident reporting, but fear of job loss and inadequate resources lead to significant underreporting.
Security News
The Python Software Foundation has secured a 5-year sponsorship from Fastly that supports PSF's activities and events, most notably the security and reliability of the Python Package Index (PyPI).