با استفاده از این پروژه شما می توانید با استفاده از php به api سرویس tonapi.io ارتباط برقرار کنید
برای نصب دستور زیر را در cmd اجرا کنید (نکته : باید از قبل composer را نصب کرده باشید.)
composer require alirezax5/tonapi
فانکشن / متد های این پروژه براساس نام گذاری tonapi نام گذاری شده است.
جهت ارتباط با متد ها نیاز نیست شی بسازید و متد ها به صورت static تعریف شده اند.
1 - دریافت آخرین تراکنش های یک حساب :
<?php
include 'vendor/autoload.php';
\alirezax5\Tonapi\Tonapi::getAccountEvents('UQBnlnOGefCkwgtO7IZdOBFuoojkpKgK3mI1GmH3MH_gG0A9',50);
2 - دریافت اطلاعات یک Jetton :
<?php
include 'vendor/autoload.php';
\alirezax5\Tonapi\Tonapi::getJettonInfo('EQD-cvR0Nz6XAyRBvbhz-abTrRC6sI5tvHvvpeQraV9UAAD7')
3 - دریافت اطلاعات یک کیف پول :
<?php
include 'vendor/autoload.php';
\alirezax5\Tonapi\Tonapi::getAccount('UQBnlnOGefCkwgtO7IZdOBFuoojkpKgK3mI1GmH3MH_gG0A9');
برای دریافت اطلاعات یک کیف پول میتوانید مانند مثال بالا عمل کنید
برای سایر مثال ها حتما به مستندات خود tonapi سر بزنید , نام گذاری متد ها طبق سایت نام گذاری شده.
<?php
include 'vendor/autoload.php';
getTransactions('address');
با استفاده از فانکشن بالا میتوانیم آخرین تراکنش های یک کیف پول را بدست آوریم
<?php
include 'vendor/autoload.php';
convertSatoshiToNumber('price');
اگر بخواهید برای پروژه خود یک سیستم پرداخت مبتنی بر ton ایجاد کنید پشنهاد میکنم در سرویس خود آدرس ولت و کامنت مربوط به فاکتور را به کاربر نمایش دهید تا در موقع ارسال یک تراکنش آن کامنت را ارسال کند و شما براساس آن کامنت و تراکنش می توانید یک سرویس پرداخت خودکار بسازید.
به مثال زیر که تراکنش هارا دریافت و اعتبار کاربر را افزایش می دهد دقت کنید:
<?php
include 'vendor/autoload.php';
$getList = getTransactions('YOU_WALLET');
function checkTonPay($item, $factorId)
{
$amount = $item['amount'];
$hash = $item['hash'];
$price = {price} * $amount;
$symbol = 'ton';
}
function checkJettonPay($item, $factorId)
{
$amount = $item['amount'];
$hash = $item['hash'];
$price = {price} * $amount;
$symbol = $item['item']['symbol'];
}
foreach ($getList as $item) {
$status = $item['status'];
$type = $item['type'];
$comment = $item['comment'];
if ($status == 'ok' && ($type == 'ton' || $type == 'jetton')) {
if (isset($comment)) {
$factorId = $comment;
if ($type == 'ton')
checkTonPay($item, $factorId);
else
checkJettonPay($item, $factorId);
}
}
}
TON:
UQBnlnOGefCkwgtO7IZdOBFuoojkpKgK3mI1GmH3MH_gG0A9