Skip to content
This repository was archived by the owner on Jun 21, 2024. It is now read-only.
/ wacpy Public archive

WhatsApp Cloud API Wrapper

License

Notifications You must be signed in to change notification settings

Natanel-Shitrit/wacpy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

8620834 Β· Nov 6, 2022
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wacpy

Unofficial WhatsApp Cloud API Wrapper
(WIP)

Downloads Supported Versions License Version

πŸ“š About

wacpy aims to be a complete python wrapper for the WhatsApp Cloud API.

βš™ Usage

Currently, wacpy is only providing WhatsApp Cloud API objects.

The 2 main objects are:

πŸ“ƒ Message: (wacpy.types.message.Message)

The Message object is used to craft messages.

πŸ”” Notification: (wacpy.types.notification.Notification)

The Notification object is the object that gets sent to your webhook.

All other sub-objects exist under this 2 types.

πŸ–₯ Examples

  • A simple message:
from wacpy.types.message import Message, message # You can also import `message` from `wacpy.types`

Message(
    to='{{WHATSAPP_PHONE_NUMBER}}',
    text=message.Text(
        body="This is a simple message!"
    )
)

image

  • An Image:
from wacpy.types import Message, message # You can also import `message` from `wacpy.types`

Message(
    to='{{WHATSAPP_PHONE_NUMBER}}',
    type='image',
    image=message.Media(
        link='https://i.imgur.com/Zf5eagv.png',
        caption='Some cute cats'
    )
)

image

  • Interactive Button List
from wacpy.types import Message, message # You can also import `message` from `wacpy.types`

Message(
    to='{{WHATSAPP_PHONE_NUMBER}}',
    type='interactive',
    interactive=message.Interactive(
        type='list',
        action=message.interactive.Action(
            button='List',
            sections=[
                message.interactive.action.Section(
                    title='First Section',
                    rows=[
                        message.interactive.action.section.Row(
                            id='first_row',
                            title='First Row',
                            description='This is the first row description',
                        ),
                        message.interactive.action.section.Row(
                            id='second_row',
                            title='Second Row',
                            description='This is the second row description',
                        )
                    ]
                ),
                message.interactive.action.Section(
                    title='Second Section',
                    rows=[
                        message.interactive.action.section.Row(
                            id='first_row',
                            title='First Row',
                            description='This is the first row description',
                        ),
                        message.interactive.action.section.Row(
                            id='second_row',
                            title='Second Row',
                            description='This is the second row description',
                        )
                    ]
                )
            ]
        ),
        body=message.interactive.Body('This is the body text')
    )
)

image