Mih4n 6ee237c842 Merge pull request #2 from YaFlay/main-2
Add validate_webhook method and change name method from CreatTransaction-> CreateTransaction
2023-08-21 07:37:45 +03:00
2023-08-20 22:46:44 +03:00
2023-05-22 11:29:41 +03:00
2023-05-17 20:33:04 +03:00
2023-05-22 11:29:41 +03:00

spworlds-sharp-library

данный пак предназначен для использования апи сайта spworlds. Однако к создателям спворлдс отношения не имеет

CS Библиотека сайтов СП

Это библиотека для dotnet для упрощения API сайтов СП. Документация к API тут.

Установка

Вы можете установить эту библиотеку при помощи dotnet или альтернативного пакетного менеджера.

dotnet add package spworlds

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

using spworlds;

...

// в теле создаете новый обект типа spworlds в 
// констрактор вы ОБЯЗАННЫ передать передать параметры указанные ниже. Тип данных - стринг
SPWorlds sp = new SPworlds("[ваш айди]","[ваш токен]");

//так же я советую вам использовать dependancy injection и добавить в него данный обьект как сингл тон т.к он не
//требуется более чем в одном екземпляре и так-же вам не прейдется каждый раз прописывать строки указанные выше

//пример:
using spworlds;

SPWorlds sp = new SPworlds("[ваш айди]","[ваш токен]");

IServiceProvider = new IServiceColection()
  .AddSomething() // какойто добавляемый микросервис может быть что угодно
  .AddSingletone(sp)
  .AddSomething() // какойто добавляемый микросервис может быть что угодно
  .Build();
  
// получение микросервиса в другом классе
public class MyClass
{
  private readonly sp;
  public MyClass(SPWorlds spInCtor)
  // заметте мы в констракторе должы указать именно 
  //тип того синглтона который мы хотим получить, а название может быть любым
  {
    this.sp = sp; // мы передаем переменную другой т.к данная переменная доступна только в конструкторе
  }
}

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

Инициализировать платежную форму

Если вы хотите принимать оплату в АРах на своем сайте, используйте этот метод.

Получение ссылки на страницу оплаты 16 АР, после успешной оплаты пользователь перейдет со страницы оплаты на https://eximple.com/success, а сайт СП отправит запрос на https://api.example.com/webhook с данными этого платежа, в том числе и SomeString. Последнее поле можно использовать, например, для ID заказа или чего-то подобного или вставить туда json а потом его десериализовать в объект.

const url = await sp.InitPayment(
  16,
  "https://eximple.com/success",
  "https://api.example.com/webhook",
  "SomeString"
);

Перевод АРов на другую карту

Перевод 16 АР на карту с номером 11111 и комментарием "С днем рождения!"

sp.CreateTransaction("11111", 16, "С днем рождения!");

Получение баланса карты

int balance = await sp.GetCardBalance();

Получение ника игрока

Метод принимает ID игрока в Discord и возвращает его ник, если у него есть вход на сервер.

string username = await sp.GetUser("111111111111111111");

if (!username) 
{
  // ваша логика дааа
}

Подтверждение вебхука

// увы пока нет) 

Contributing

Если вы хотите дополнить или улучшить библиотеку или документацию к ней, то сделайте pull запрос к этому репозиторию.

Description
данный пак предназначен для использования апи сайта spworlds. Однако к создателям спворлдс отношения не имеет
Readme MIT 157 KiB
Languages
C# 100%