Skip to main content

a set of methods for working with PushOver

Project description

async_pushover_client

Проект представляет собой набор синхронных и асинхронных методов для работы с API PushOver

Установка

pip install async_pushover_client

Использование

Создайте .env файл, и поместите туда переменные

PUSHOVER_DEVICE_ID=ВАШ ИД устройства, если его нет зарегистрируется автоматически
PUSHOVER_EMAIL_USERNAME=email аккаунта
PUSHOVER_PASSWORD=пароль аккаунта

Или создайте файл auth_data.json и положите его в корень проекта.

{"email": "example@example.com", 
  "password": "password", 
  "secret": "secret", "device_id": "device_id"}

После первого успешного запуска worker файл создастся автоматически, вы так же можете вызвать метод

from async_pushover_client.main import OpenAPI
from async_pushover_client.settings import DEVICE_ID, PASSWORD, EMAIL_USERNAME

api = OpenAPI(email=EMAIL_USERNAME,
              password=PASSWORD,
              device_id=DEVICE_ID)
api.launch_preparation() 
# ИЛИ его асинхронное представление a_launch_preparation()

Для того, что бы запустить асинхронный worker достаточно переопределить метод receiver_messages, или метод on_message, если вы хотите работать с сырыми данными.

from async_pushover_client.worker import WSClientPushOver
from async_websocket_client.apps import AsyncWebSocketApp


class MyTestCase(WSClientPushOver):
    async def receiver_messages(self, message: dict):
        print(self.messages)
        print(message)


client = AsyncWebSocketApp('wss://client.pushover.net/push', MyTestCase())
client.asyncio_run()

Метод получает message, у которого есть все данные представляемые API PushOver. Далее примените фантазию, и решите что вы сделаете c message, который будет хранить в себе одно сообщение, или self.messages, хранящий в себе не полученные сообщения на момент, пока worker не работал.

Вы так же можете поработать с методами получения и удаления сообщений, без использования WebSocket. Для этого достаточно импортировать класс OpenAPI

from async_pushover_client.main import OpenAPI
from async_pushover_client.settings import DEVICE_ID, PASSWORD, EMAIL_USERNAME

api = OpenAPI(email=EMAIL_USERNAME,
              password=PASSWORD,
              device_id=DEVICE_ID)
messages = api.receiving_notifications()
print(messages)

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

async_pushover_client-0.1.0.tar.gz (17.0 kB view hashes)

Uploaded Source

Built Distribution

async_pushover_client-0.1.0-py3-none-any.whl (18.2 kB view hashes)

Uploaded Python 3

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