Vonage Messages Package
This package contains the code to use Vonage's Messages API in Python.
Usage
It is recommended to use this as part of the main vonage package. The examples below assume you've created an instance of the vonage.Vonage class called vonage_client.
How to Construct a Message
In order to send a message, you must construct a message object of the correct type.
from vonage_messages import Sms
message = Sms(
from_='Vonage APIs',
to='1234567890',
text='This is a test message sent from the Vonage Python SDK',
)
This message can now be sent with
vonage_client.messages.send(message)
All possible message types from every message channel have their own message model. They are named following this rule: {Channel}{MessageType}, e.g. Sms, MmsImage, RcsFile, MessengerAudio, WhatsappSticker, ViberVideo, etc.
The different message models are listed at the bottom of the page.
Some message types have submodels with additional fields. In this case, import the submodels as well and use them to construct the overall options.
e.g.
from vonage_messages import MessengerImage, MessengerOptions, MessengerResource
messenger = MessengerImage(
to='1234567890',
from_='1234567890',
image=MessengerResource(url='https://example.com/image.jpg'),
messenger=MessengerOptions(category='message_tag', tag='invalid_tag'),
)
Send a message
To send a message, access the Messages.send method via the main Vonage object, passing in an instance of a subclass of BaseMessage like this:
from vonage import Auth, Vonage
from vonage_messages import Sms
vonage_client = Vonage(Auth(application_id='my-application-id', private_key='my-private-key'))
message = Sms(
from_='Vonage APIs',
to='1234567890',
text='This is a test message sent from the Vonage Python SDK',
)
vonage_client.messages.send(message)
Mark a WhatsApp Message as Read
Note: to use this method, update the api_host attribute of the vonage_http_client.HttpClientOptions object to the API endpoint corresponding to the region where the WhatsApp number is hosted.
For example, to use the EU API endpoint, set the api_host attribute to 'api-eu.vonage.com'.
from vonage import Vonage, Auth, HttpClientOptions
auth = Auth(application_id='MY-APP-ID', private_key='MY-PRIVATE-KEY')
options = HttpClientOptions(api_host='api-eu.vonage.com')
vonage_client = Vonage(auth, options)
vonage_client.messages.mark_whatsapp_message_read('MESSAGE_UUID')
Revoke an RCS Message
Note: as above, to use this method you need to update the api_host attribute of the vonage_http_client.HttpClientOptions object to the API endpoint corresponding to the region where the WhatsApp number is hosted.
For example, to use the EU API endpoint, set the api_host attribute to 'api-eu.vonage.com'.
from vonage import Vonage, Auth, HttpClientOptions
auth = Auth(application_id='MY-APP-ID', private_key='MY-PRIVATE-KEY')
options = HttpClientOptions(api_host='api-eu.vonage.com')
vonage_client = Vonage(auth, options)
vonage_client.messages.revoke_rcs_message('MESSAGE_UUID')
Message Models
To send a message, instantiate a message model of the correct type as described above. This is a list of message models that can be used:
Sms
MmsImage, MmsVcard, MmsAudio, MmsVideo
RcsText, RcsImage, RcsVideo, RcsFile, RcsCustom
WhatsappText, WhatsappImage, WhatsappAudio, WhatsappVideo, WhatsappFile, WhatsappTemplate, WhatsappSticker, WhatsappCustom
MessengerText, MessengerImage, MessengerAudio, MessengerVideo, MessengerFile
ViberText, ViberImage, ViberVideo, ViberFile
Metadata
Release files for vonage-messages 1.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| vonage_messages-1.8.0.tar.gz | 14.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vonage_messages-1.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 33.6 kB
Release files / vonage_messages-1.8.0.tar.gz
| Download URL | vonage_messages-1.8.0.tar.gz |
|---|---|
| Size | 14.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
062c053af4e82ae161706d630b3c70fb3bc7f5c640aefb2a84848e27e3b9eb36
|
|
BLAKE2b-256 checksum How to use checksums |
897ee94a606334a44bb1630e6917be2187cdb7ae3df5589e27b83a8f3685bfa2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.12.3
|
Release files / vonage_messages-1.8.0-py3-none-any.whl
| Download URL | vonage_messages-1.8.0-py3-none-any.whl |
|---|---|
| Size | 18.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bf21629fbc5a9f62c5ec4c119dbd948d0b77c53b7f303b8b7ce1da28bc952e73
|
|
BLAKE2b-256 checksum How to use checksums |
56821c7651ac425bed407bdb6b1a840df05f624da10c67f87a91f3c2eaa9b394
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.12.3
|