Skip to main content

Simple module for Crypto API

Project description

cryptoapi

Модуль для работы с Crypto API | Официальное приложение

Установка и импорт

Для установки необходимо прописать в консоль (cmd) следующую команду:

pip install apicrypto

Для импорта модуля в проект использовать:

from cryptoapi import CryptoAPI

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

Перед началом необходимо создать экземпляр класса CryptoAPI, который принимает 2 аргумента:

Аргумент Тип Описание
user_id int ID Пользователя VK, который получил токен
token str Токен, полученный в самом приложении Crypto
from cryptoapi import CryptoAPI
crypto = CryptoAPI(user_id=ваш_ID, token="Ваш_Токен")

getUserCoins()

Возвращает баланс указанного пользователя.

Аргумент Тип Описание
user_id int ID Пользователя VK, баланс которого необходимо получить

Если не указывать user_id, то подставится ID из созданного экземпляра

crypto.getUserCoins(user_id=498475943)
>>> 1139888

getTransfers()

Возвращает список всех переводов

crypto.getTransfers()
>>> [{'name': 'Алекса...}]

transfer()

Отправляет перевод.

Аргумент Тип Описание
toId int ID пользователя, кому отправляем перевод
amount int Сумма перевода
crypto.transfer(toId=498475943, amount=100)
>>> {"response": {"recipient_id": 498475943, "amount": 100}}

connectServer()

Настраивает отправку callback уведомлений на Ваш сервер / сайт.

Аргумент Тип Описание
url str Адрес сервера / сайта, куда буду приходить уведомления
crypto.connectServer(url="https://mysite.mydomain")
>>> {"response": {"url": "https://mysite.mydomain", "user_id": 498475943}}

Обратите внимание, что ссылка обязательно должна начинаться с https:// или http://

После получения перевода, callback возвращает JSON Объект события следующего вида:

{
  "event": "new_transfer",
  "object": {
    "sender_id": 498475943,
    "amount": 1000,
    "create_date": 1687423373784,
    "secretKey": "18e0f585616e1ece62316072a45f64e4"
  }
}

listen()

Запускает встроенный прослушиватель переводов. При получении нового перевода возвращает JSON.

Аргумент Тип Описание
interval int Задает интервал обновления переводов в секундах (По умолчанию: 1)
for object in crypto.listen(interval=0.1):
  print(object)
>>> {"name": "Иван Шаповалов", "avatar": "https://sun34-2.userapi.com/impg/0MjzdwFu6WRSYod_65kU0BjdVpNcqWyxXmr76g/ZlbXvz3CTSs.jpg?size=720x720&quality=95&sign=ae29a8d9bacfab080534f3f2cb964963&type=album", "sender_id": 498475943, "recipient_id": 487364833, "create_date": 1687416286823, "amount": 1000}

md5()

Генерирует secretKey для проверки callback переводов на честность (Подробней - https://vk.com/@crypto_play-api?anchor=connectserver)

Имеется два варианта передачи параметров для генерации secretKey

Первый вариант

Аргумент Тип Описание
create_date int Дата перевода в UNIX
sender_id int ID Отправителя
crypto.md5(create_data=1689398602, sender_id=498475943)
>>> '876104e5cee8669f1b89448282215da5'

Второй вариант

Аргумент Тип Описание
json dict / json JSON полученного перевода
crypto.md5(json=
{
  'event': 'new_transfer', 
  'object': {
    'sender_id': 1, 
    'amount': 10000, 
    'create_date': 1689408602, 
    'secretKey': '1287a00828e7e44ea83b7d90caf938a1'
  }
})
>>> '1287a00828e7e44ea83b7d90caf938a1'

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

apicrypto-0.0.231.tar.gz (3.5 kB view hashes)

Uploaded Source

Built Distribution

apicrypto-0.0.231-py3-none-any.whl (3.3 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