Usage exampleΒΆ
The following example can be found on the GitHub repository. Even if it is a little bit different, its principle is the same.
import asyncio
from sys import exit
import aiohttp
from pysmsboxnet import exceptions
from pysmsboxnet.api import Client
async def main():
async with aiohttp.ClientSession() as session:
# After initializing a AIOHTTP client session, we initialize a Client object
sms = Client(session, "api.smsbox.pro", API_KEY)
try:
# Before sending a message, we display remaining credits
credits = await sms.get_credits()
print(f"Remaining credits before: {credits}")
# To send a message
# we define the strategy in the dict passed as last parameter
# In this dict, we also ask the API to return the ID of message sent
# With the parameter id set to 1
# If we don't set id, the send function will return 0
# In case of failure an exception will be thrown
msgID = await sms.send(
SMS_RECIPIENT, "Test message.", "expert", {"strategy": "2", "id": "1"}
)
# We display the message is sent and the ID
print(f"SMS sent, ID : {msgID}")
# We get remaining credits
credits = await sms.get_credits()
print(f"Remaining credits after: {credits}")
if credits > 0:
print("There are remaining credits")
else:
print("No remaining credit")
except exceptions.SMSBoxException as e:
print(f"Exception: {e}")
await session.close()
# Specify the API key
API_KEY = "xxx"
SMS_RECIPIENT = "9990001" # a sandbox number for a succeffull 0.5 credit SMS
asyncio.run(main())
This example shows all actual possibilities of this libraries. If you want to add more, go to the next section.