minebattle-api
TypeScript icon, indicating that this package has built-in type declarations

1.0.4 • Public • Published

minebattle-api

NodeJS библиотека для работы с API сервиса "Битва шахтёров"

stars forks forks Version Downloads

Установка

yarn

yarn add minebattle-api

npm

npm i -S minebattle-api

Подключение

const { MineBattle } = require('minebattle-api');
 
const mb = new MineBattle(token);

Методы API

call - Универсальный метод отправки запроса

Параметр Тип Обязателен Описание
methodName string Да Имя метода
params object Нет Параметры метода

Пример:

async function run() {
    const user = await mb.call('user.get', {
        user_id: 236908027
    });
 
    console.log(user);
}
 
run().catch(console.error);

getUserInfo - Получить информацию о пользователе

Параметр Тип Обязателен Описание
userId number Да Айди пользователя

Пример:

async function run() {
    const user = await mb.getUserInfo(236908027);
 
    console.log(user);
}
 
run().catch(console.error);

getMerchantInfo - Получить информацию о данном мерчанте

Пример:

async function run() {
    const merchant = await mb.getMerchantInfo();
 
    console.log(merchant);
}
 
run().catch(console.error);

editMerchantInfo - Обновить информацию мерчанта

Параметр Тип Обязателен Описание
params object Да Новая информация мерчанта
params.avatar string Нет Прямая ссылка на новый аватар мерчанта
params.name string Нет Новое имя для мерчанта
params.group_id number Нет Новая группа для мерчанта

*- Как минимум один из параметров должен присутствовать.

*- params.avatar обязательно должен быть .png

Пример:

async function run() {
    const merchant = await mb.editMerchantInfo({
        name: 'My awesome shop'
    });
 
    console.log(merchant);
}
 
run().catch(console.error);

createBill - Выставить счёт пользователю

Параметр Тип Обязателен Описание
targetId number Да Айди пользователя, которому нужно выставить счёт
amount number Да Количество запрашиваемых монет

Пример:

async function run() {
    const response = await mb.createBill(236908027, 123);
 
    console.log(response);
}
 
run().catch(console.error);

sendPayment - Сделать перевод пользователю

Параметр Тип Обязателен Описание
targetId number Да Айди пользователя, которому нужно сделать перевод
amount number Да Количество отправляемых монет

Пример:

async function run() {
    const response = await mb.sendPayment(236908027, 123);
 
    console.log(response);
}
 
run().catch(console.error);

setWebhook - Обновить вебхук для мерчанта

Параметр Тип Обязателен Описание
url string Да Прямая ссылка на вебхук

Пример:

async function run() {
    const response = await mb.setWebhook('https://my-awesome-domain.ru/payment');
 
    console.log(response);
}
 
run().catch(console.error);

Получение платежей

Получение новых платежей происходит по методу Webhook. Перед использованием этого метода, обязательно нужно зарегистрировать свой хук, с помощью метода setWebhook

startWebhook - Запустить вебхук

Параметр Тип Обязателен Описание
path string Да Путь хука, например '/payment'
port number Да Порт, на котором будет запущен хук

onPayment - Подписаться на события новых входящих платежей

Параметр Тип Обязателен Описание
callback Function Да Функция обратного вызова, для приёма платежей

callback - Возвращает данные о новом входящем платеже

Параметр Тип Описание
amount number Количество монет
from_id number Айди отправителя
updated_merchant_balance number Новый баланс данного мерчанта
updated_user_balance number Новый баланс отправителя

Пример:

mb.setWebhook('https://my-awesome-domain.ru:8181/payment').then(() => {
    mb.startWebhook('/payment', 8181);
 
    mb.onPayment((payment) => {
        const {
            amount, from_id,
            updated_merchant_balance,
            updated_user_balance 
        } = payment;
    });
});

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.0.4
    0
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 1.0.4
    0
  • 1.0.2
    0
  • 1.0.1
    0
  • 1.0.0
    0

Package Sidebar

Install

npm i minebattle-api

Weekly Downloads

0

Version

1.0.4

License

MIT

Unpacked Size

26.6 kB

Total Files

13

Last publish

Collaborators

  • fakemancat