Skip to main content

This library helps you easily create a Python application with MAX API.

Project description

max-api-client-python

Поддержка

Support Support Support

Руководства и новости

Guides News News

max-api-client-python - библиотека для интеграции с мессенджером MAX через API сервиса green-api.com. Чтобы воспользоваться библиотекой, нужно получить регистрационный токен и ID аккаунта в личном кабинете. Есть бесплатный тариф аккаунта разработчика.

API

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

Авторизация

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

Установка

python -m pip install max-api-client-python

Импорт

from max_api_client_python import API

Примеры

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

greenAPI = API.GreenAPI(
    "3100000001", "d75b3a66374942c5b3c019c698abc2067e151558acbd412345"
)

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

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

response = greenAPI.sending.sendMessage("10000000", "Message text")

print(response.data)

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

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

response = greenAPI.sending.sendFileByUrl(
    "10000000",
    "https://download.samplelib.com/png/sample-clouds2-400x300.png",
    "sample-clouds2-400x300.png",
    "Sample PNG"
)

print(response.data)

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

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

response = greenAPI.sending.sendFileByUpload(
    "10000000",
    "data/rates.png",
    "rates.png",
    "Available rates"
)

print(response.data)

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

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

create_group_response = greenAPI.groups.createGroup(
    "Group Name", ["10000000"]
)
if create_group_response.code == 200:
    send_message_response = greenAPI.sending.sendMessage(
        create_group_response.data["chatId"], "Message text"
    )

Получение входящих уведомлений через HTTP API

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

Общая концепция получения данных в GREEN API описана здесь. Для старта получения уведомлений через HTTP API требуется выполнить метод библиотеки:

greenAPI.webhooks.startReceivingNotifications(onEvent)

onEvent - ваша функция, которая должен содержать параметры:

Параметр Описание
typeWebhook тип полученного уведомления (str)
body тело уведомления (dict)

Типы и форматы тел уведомлений находятся здесь.

Эта функция будет вызываться при получении входящего уведомления. Далее обрабатываете уведомления согласно бизнес-логике вашей системы.

Список примеров

Описание Модуль
Пример отправки текста sendTextMessage.py
Пример отправки картинки по URL sendPictureByLink.py
Пример отправки картинки загрузкой с диска sendPictureByUpload.py
Пример создание группы и отправка сообщения в группу createGroupAndSendMessage.py
Пример получения входящих уведомлений receiveNotification.py
Пример создания инстанса createInstance.py

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

Метод API Описание Ссылка на документацию
account.getSettings Метод предназначен для получения текущих настроек аккаунта GetSettings
account.getAccountSettings Метод предназначен для получения информации о аккаунте MAX GetAccountSettings
account.setSettings Метод предназначен для установки настроек аккаунта SetSettings
account.getStateInstance Метод предназначен для получения состояния аккаунта GetStateInstance
account.getStatusInstance Метод предназначен для получения состояния сокета соединения инстанса аккаунта с MAX GetStatusInstance
account.reboot Метод предназначен для перезапуска аккаунта Reboot
account.logout Метод предназначен для разлогинивания аккаунта Logout
account.qr Метод предназначен для получения QR кода для авторизации QR
account.setProfilePicture Метод предназначен для установки аватара аккаунта SetProfilePicture
groups.createGroup Метод предназначен для создания группового чата CreateGroup
groups.updateGroupName Метод изменяет наименование группового чата UpdateGroupName
groups.getGroupData Метод получает данные группового чата GetGroupData
groups.addGroupParticipant Метод добавляет участника в групповой чат AddGroupParticipant
groups.removeGroupParticipant Метод удаляет участника из группового чата RemoveGroupParticipant
groups.setGroupAdmin Метод назначает участника группового чата администратором SetGroupAdmin
groups.removeAdmin Метод лишает участника прав администрирования группового чата RemoveAdmin
groups.setGroupPicture Метод устанавливает аватар группы SetGroupPicture
groups.leaveGroup Метод производит выход пользователя текущего аккаунта из группового чата LeaveGroup
journals.getChatHistory Метод возвращает историю сообщений чата GetChatHistory
journals.getMessage Метод возвращает сообщение чата GetMessage
journals.lastIncomingMessages Метод возвращает крайние входящие сообщения аккаунта LastIncomingMessages
journals.lastOutgoingMessages Метод возвращает крайние отправленные сообщения аккаунта LastOutgoingMessages
journals.getChats Метод возвращает список чатов аккаунта GetChats
queues.showMessagesQueue Метод предназначен для получения списка сообщений, находящихся в очереди на отправку ShowMessagesQueue
queues.clearMessagesQueue Метод предназначен для очистки очереди сообщений на отправку ClearMessagesQueue
marking.readChat Метод предназначен для отметки сообщений в чате прочитанными ReadChat
receiving.receiveNotification Метод предназначен для получения одного входящего уведомления из очереди уведомлений ReceiveNotification
receiving.deleteNotification Метод предназначен для удаления входящего уведомления из очереди уведомлений DeleteNotification
receiving.downloadFile Метод предназначен для скачивания принятых и отправленных файлов DownloadFile
sending.sendMessage Метод предназначен для отправки текстового сообщения в личный или групповой чат SendMessage
sending.sendFileByUpload Метод предназначен для отправки файла, загружаемого через форму (form-data) SendFileByUpload
sending.sendFileByUrl Метод предназначен для отправки файла, загружаемого по ссылке SendFileByUrl
sending.uploadFile Метод предназначен для загрузки файла в облачное хранилище, который можно отправить методом sendFileByUrl UploadFile
serviceMethods.checkAccount Метод проверяет наличие аккаунта MAX на номере телефона CheckAccount
serviceMethods.getAvatar Метод возвращает аватар корреспондента или группового чата GetAvatar
serviceMethods.getContacts Метод предназначен для получения списка контактов текущего аккаунта GetContacts
serviceMethods.getContactInfo Метод предназначен для получения информации о контакте GetContactInfo
webhooks.startReceivingNotifications Метод предназначен для старта получения новых уведомлений
webhooks.stopReceivingNotifications Метод предназначен для остановки получения новых уведомлений
partner.GetInstances Метод предназначен для получения всех инстансов аккаунтов созданных партнёром. GetInstances
partner.CreateInstance Метод предназначен для создания инстанса от имени партнёра. CreateInstance
partner.DeleteInstanceAccount Метод предназначен для удаления инстанса аккаунта партнёра. DeleteInstanceAccount

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

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

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

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

Лицензия

Лицензировано на условиях Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0) . 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

max_api_client_python-1.0.1.tar.gz (23.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

max_api_client_python-1.0.1-py3-none-any.whl (22.9 kB view details)

Uploaded Python 3

File details

Details for the file max_api_client_python-1.0.1.tar.gz.

File metadata

  • Download URL: max_api_client_python-1.0.1.tar.gz
  • Upload date:
  • Size: 23.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.5

File hashes

Hashes for max_api_client_python-1.0.1.tar.gz
Algorithm Hash digest
SHA256 1878dc7a7569bf95dbc83e5b52117274722a4271674f78dcdd10e142d53bfe82
MD5 ad18750fbb289942743d6cf578546dd1
BLAKE2b-256 ebe330c8eb45b87138bead40d2c459bebb180bf5b501c6fd9a8ff63cff3ca509

See more details on using hashes here.

File details

Details for the file max_api_client_python-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for max_api_client_python-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e69a58f8a613c36992e6f4e10005bc46f520ca8fb48cb82514bde5f80b6924e2
MD5 01a52ea4fd8664a3e9be554a281e5d70
BLAKE2b-256 a87768cf6e5cac6a287fab73059bcf7499924a9fa823f0cb416437fdee23d963

See more details on using hashes here.

Supported by

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