Metin2 P-Server API
Rozhraní pro provozovatele serverů: zjisti stav hlasování a rozdávej odměny automaticky.
Ověření hlasu
Chceš-li ověřit, jestli už uživatel hlasoval, zavolej následující odkaz:
https://www.metin2pserver.to/api/{SERVERNAME}/{USERID}
Vysvětlení:
- {SERVERNAME}: Název serveru, pro který uživatel hlasoval.
- {USERID}: ID uživatelského účtu v databázi serveru.
API vrací hodnotu true nebo false podle toho, jestli už uživatel hlasoval, a má tedy nárok na odměnu.
Odevzdání hlasu
Aby uživatelé mohli hlasovat, musí použít následující odkaz:
https://www.metin2pserver.to/vote-{SERVERNAME}.htm/{USERID}
Vysvětlení:
- {SERVERNAME}: Název serveru tak, jak se objevuje v žebříčku.
- {USERID}: ID uživatelského účtu v databázi serveru, který hlasoval.
Ukázkový kód v PHP
// API-URL und Parameter definieren
$serverName = 'PserverName';
$userId = 12345;
$apiUrl = 'https://www.metin2pserver.to/api/' . $serverName . '/' . $userId;
// cURL-Session starten
$ch = curl_init();
// cURL-Optionen setzen
curl_setopt($ch, CURLOPT_URL, $apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Antwort zurückgeben als String
curl_setopt($ch, CURLOPT_TIMEOUT, 30); // Timeout auf 30 Sekunden setzen
// API-Anfrage ausführen
$response = curl_exec($ch);
// cURL-Fehler überprüfen
if (curl_errno($ch)) {
echo 'cURL Error: ' . curl_error($ch);
} else {
// Antwort dekodieren
$data = json_decode($response, true);
// Überprüfen, ob der Nutzer bereits abgestimmt hat
if ($data['status'] === true) {
echo 'Abstimmung erfolgreich durchgeführt!';
} else {
echo 'Es gab ein Problem mit der Abstimmung.';
}
}
// cURL schließen
curl_close($ch);
Vysvětlení ukázkového kódu:
- $serverName: Název serveru, na který se v URL dotazujeme.
- $userId: ID uživatele, jehož stav hlasování se ověřuje.
- $apiUrl: Úplná adresa API sestavená z parametrů s názvem serveru a ID uživatele.
- cURL: Nástroj PHP pro odesílání HTTP požadavků a komunikaci s API.
- json_decode($response, true): Odpověď API přijde jako JSON a převede se na PHP pole.
- if ($data['status'] === true): Kontroluje, jestli už uživatel hlasoval.