Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function commIsUser($text) {
- $text = trim($text);//обрезаем пробелы в начале и в конце
- $space = strpos($text, ' ');
- if (($space === FALSE) && (mb_substr($text, 0, 1) == '@')) {
- //возможно это ник пользователя
- //подключаемся к блокчейну
- require('vendor/autoload.php');
- $client = new WebSocket\Client("wss://ws.golos.io/");
- $req = json_encode(
- [
- 'id' => 1, 'method' => 'get_accounts', 'params' => [[mb_substr($text, 1)]]
- ]
- );
- $client->send($req);
- $golos_resp = $client->receive();
- $resp_object = json_decode($golos_resp);
- if (!empty($resp_object->result)) {
- $obj = $resp_object->result[0];
- $user = array();
- $user[] = 'ID: ' . $obj->id;
- $user[] = 'Логин: ' . $obj->name;
- $user[] = 'Аккаунт создан: ' . $obj->created;
- $user[] = 'Последний раз голосовал: ' . $obj->last_vote_time;
- $user[] = 'Голосов: ' . $obj->balance;
- $user[] = 'Золота: ' . $obj->sbd_balance;
- $user[] = 'Создано постов: ' . $obj->post_count;
- //расчёт репутации
- $reputation = $obj->reputation;
- $user[] = 'Репутация: ' . round((max(log10(abs($reputation)) - 9,0) * (($reputation >= 0) ? 1 : -1) * 9 + 25), 3);
- $json_metadata = json_decode($obj->json_metadata);
- if (!empty($json_metadata->user_image)) {
- //фото
- // передавать не буду, так как у некоторых логинов "заколдованные" аватары и сообщение в телеграм не приходит
- // $user[] = 'Аватар: ' . $json_metadata->user_image;
- }
- $text = implode("\n", $user);
- $data = array(
- 'text' => $text,
- 'parse_mode' => 'Markdown',
- );
- }
- else {
- $data = array(
- 'text' => 'Пользователь не найден.',
- );
- }
- $client->close();
- if (!empty($data)) {
- return $data;
- }
- }
- return NULL;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement