Skip to main content

This library helps you easily create a python ' 'application to connect the WhatsApp API using service green-api.com

Project description

whatsapp-api-client-python

Python application Upload Python Package

Python библиотека для интеграции с мессенджером WhatsAPP через API сервиса green-api.com. Чтобы воспользоваться библиотекой нужно получить регистрационный токен и id аккаунта в личном кабинете. Есть бесплатный тариф аккаунта разработчика.

API

Документация к REST API находится по ссылке. Библиотека является оберткой к REST API, поэтому документация по ссылке выше применима и к самой библиотеке.

Установка

pip install whatsapp-api-client-python

Import

from whatsapp_api_client_python import API

Авторизация

Чтобы отправить сообщение или выполнить другой метод Green-API, аккаунт WhatsApp в приложении телефона должен быть в авторизованном состоянии. Для авторизации аккаунта перейдите в личный кабинет и сканируйте QR-код с использованием приложения WhatsApp.

Примеры

Как инициализировать объект

restApi = API.RestApi('https://api.green-api.com', 
                        ID_INSTANCE, 
                        API_TOKEN_INSTANCE)

Отправка текстового сообщения на номер WhatsApp

result = restApi.sending.sendMessage('79001234567@g.us', 'Message text')

Ссылка на пример: sendText.py

Обратите внимание, что ключи можно получать из переменных среды:

from os import environ

ID_INSTANCE = environ['ID_INSTANCE']
API_TOKEN_INSTANCE = environ['API_TOKEN_INSTANCE']

Отправка картинки по URL

result = restApi.sending.sendFileByUrl('120363025955348359@g.us', 
        'https://www.google.ru/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png', 
        'googlelogo_color_272x92dp.png', 'Google logo')

Ссылка на пример: sendPictureByLink.py

Отправка картинки загрузкой с диска

result = restApi.sending.sendFileByUpload('120363025955348359@g.us', 
        'C:\Games\PicFromDisk.png', 
        'PicFromDisk.png', 'Picture from disk')

Ссылка на пример: sendPictureByUpload.py

Создание группы и отправка сообщения в эту группу

chatIds = [
    "79001234567@c.us"
]
resultCreate = restApi.groups.createGroup('GroupName', 
    chatIds)

if resultCreate.code == 200:
    resultSend = restApi.sending.sendMessage(resultCreate.data['chatId'], 
        'Message text')

Ссылка на пример: createGroupAndSendMessage.py

Получить входящие уведомления

resultReceive = restApi.receiving.receiveNotification()

Ссылка на пример: receiveNotification.py

Полный список методов библиотеки

Метод Описание Документация
account.getSettings Метод предназначен для получения текущих настроек аккаунта GetSettings.md
account.getStateInstance Метод предназначен для получения состояния аккаунта GetStateInstance.md
account.getStatusInstance Метод предназначен для получения состояния сокета соединения инстанса аккаунта с WhatsApp GetStatusInstance.md
account.logout Метод предназначен для разлогинивания аккаунта Logout.md
account.qr Метод предназначен для получения QR-кода QR.md
account.reboot Метод предназначен для перезапуска аккаунта Reboot.md
account.setProfilePicture Метод предназначен для установки аватара аккаунта SetProfilePicture.md
account.setSettings Метод предназначен для установки настроек аккаунта SetSettings.md
account.setSystemProxy Метод предназначен для установки системного прокси. Нужно используйте метод, когда требуется сбросить пользовательские настройки прокси на системные SetSystemProxy.md
groups.addGroupParticipant Метод добавляет участника в групповой чат AddGroupParticipant.md
groups.createGroup Метод добавляет участника в групповой чат CreateGroup.md
groups.getGroupData Метод получает данные группового чата GetGroupData.md
groups.leaveGroup Метод производит выход пользователя текущего аккаунта из группового чата LeaveGroup.md
groups.removeAdmin Метод лишает участника прав администрирования группового чата RemoveAdmin.md
groups.removeGroupParticipant Метод удаляет участника из группового чата RemoveGroupParticipant.md
groups.setGroupAdmin Метод назначает участника группового чата администратором SetGroupAdmin.md
groups.setGroupPicture Метод устанавливает аватар группы SetGroupPicture.md
groups.updateGroupName Метод изменяет наименование группового чата UpdateGroupName.md
journals.getChatHistory Метод возвращает историю сообщений чата GetChatHistory.md
journals.lastIncomingMessages Метод возвращает крайние входящие сообщения аккаунта. По умолчанию возвращаются последние сообщения за 24 часа GetChatHistory.md
journals.lastOutgoingMessages Метод возвращает крайние отправленные сообщения аккаунта. По умолчанию возвращаются последние сообщения за 24 часа LastOutgoingMessages.md
marking.readChat Метод предназначен для отметки сообщений в чате прочитанными. Могут быть отмечены прочитанными все сообщения в чате или только одно заданное сообщение ReadChat.md
device.getDeviceInfo Метод предназначен для получения информации об устройстве (телефоне), на котором запущено приложение WhatsApp Business GetDeviceInfo.md
queues.clearMessagesQueue Метод предназначен для очистки очереди сообщений на отправку ClearMessagesQueue.md
queues.showMessagesQueue Метод предназначен для получения списка сообщений, находящихся в очереди на отправку ShowMessagesQueue.md
receiving.deleteNotification Метод предназначен для удаления входящего уведомления из очереди уведомлений DeleteNotification.md
receiving.receiveNotification Метод предназначен для получения одного входящего уведомления из очереди уведомлений ReceiveNotification.md
sending.sendButtons Метод предназначен для отправки сообщения с кнопками в личный или групповой чат SendButtons.md
sending.sendContact Метод предназначен для отправки сообщения с контактом SendContact.md
sending.sendFileByUpload Метод предназначен для отправки файла, загружаемого через форму SendFileByUpload.md
sending.sendFileByUrl Метод предназначен для отправки файла, загружаемого по ссылке SendFileByUrl.md
sending.sendLink Метод предназначен для отправки сообщения со ссылкой, по которой будут добавлены превью изображения, заголовок и описание SendLink.md
sending.sendListMessage Метод предназначен для отправки сообщения с кнопкой выбора из списка значений в личный или групповой чат SendListMessage.md
sending.sendLocation Метод предназначен для отправки сообщения геолокации SendLocation.md
sending.sendMessage Метод предназначен для отправки текстового сообщения в личный или групповой чат SendMessage.md
sending.sendTemplateButtons Метод предназначен для отправки сообщения с интерактивными кнопками из перечня шаблонов в личный или групповой чат SendTemplateButtons.md
serviceMethods.checkWhatsapp Метод проверяет наличие аккаунта WhatsApp на номере телефона CheckWhatsapp.md
serviceMethods.getAvatar Метод возвращает аватар корреспондента или группового чата GetAvatar.md
serviceMethods.getContactInfo Метод предназначен для получения информации о контакте GetContactInfo.md
serviceMethods.getContacts Метод предназначен для получения списка контактов текущего аккаунта GetContacts.md
serviceMethods.setDisappearingChat Метод предназначен для изменения настроек исчезающих сообщений в чатах. Нужно использовать стандартные настройки приложения: 0 (выключено), 86400 (24 часа), 604800 (7 дней), 7776000 (90 дней) SetDisappearingChat.md
serviceMethods.archiveChat Метод архивирует чат. Архивировать можно чаты, в которых есть хотя бы одно входящее сообщение ArchiveChat.md
serviceMethods.deleteMessage Метод удаляет сообщение из чата DeleteMessage.md
serviceMethods.unarchiveChat Метод разархивирует чат UnarchiveChat.md

Документация по методам сервиса

https://github.com/green-api/docs

Сторонние продукты

  • requests - для http запросов

Лицензия

Лицензировано на условиях MIT. Смотрите файл LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

whatsapp-api-client-python-0.0.16a0.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file whatsapp-api-client-python-0.0.16a0.tar.gz.

File metadata

File hashes

Hashes for whatsapp-api-client-python-0.0.16a0.tar.gz
Algorithm Hash digest
SHA256 187581d5c1b4fa5a90ee87f608c5c85e9fd3c9bc7f3a5cc2701a704a67270c34
MD5 f1dca6b1d8cb50b390d43105f5fc89e4
BLAKE2b-256 7565981b8192412ca7ee27e4ffdde6043c4812386d19796ea5c53e206aedb1da

See more details on using hashes here.

File details

Details for the file whatsapp_api_client_python-0.0.16a0-py3-none-any.whl.

File metadata

File hashes

Hashes for whatsapp_api_client_python-0.0.16a0-py3-none-any.whl
Algorithm Hash digest
SHA256 f586b29916d304b17b63457e8d96e29d9483e3b11ce1bbf3f628d162b4415f86
MD5 3501ea0e10d9ef867e58477e399cd564
BLAKE2b-256 1d9e1c0231089a08957eedfcc5b9550c91278e0cff6b256de94cb2b79375399e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page