php-func-lib/troy-api.php

82 lines
2.5 KiB
PHP

<?php
function sendToTroy($data) {
$url = 'https://troy-grunt.de/api.php';
$options = array (
'http' => array (
'method' => 'POST',
'header' => array (
'Content-Type: application/json'
),
'content' => json_encode ( $data )
)
);
$context = stream_context_create ( $options );
return file_get_contents ( $url, false, $context );
}
function sendIssue($service, $text, $data = []) {
global $__idata;
$url = 'https://issues.troy-grunt.de/api';
// Basisdaten für den POST-Request
$postData = [
'host' => $__idata['host'],
'secret' => $__idata['secret'],
'typ' => $service,
'text' => $text,
'data' => json_encode($data) // Falls 'data' ein Array ist, wird es als JSON gesendet
];
// cURL initialisieren
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/x-www-form-urlencoded']);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData));
// Anfrage senden & Antwort erhalten
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
//TODO
function sendSimpleIssue($text,$url){
$apiUrl = 'https://issues.troy-grunt.de/api/simple';
// Die notwendigen Daten
$data = [
'domain' => 'example.com', // Ersetze mit deiner registrierten Domain
'secret' => 'geheimes-passwort', // Ersetze mit deinem Secret
'text' => $text,
'url' => $url
];
$options = [
'http' => [
'header' => "Content-Type: application/json\r\n",
'method' => 'POST',
'content' => json_encode($data)
]
];
$context = stream_context_create($options);
$response = file_get_contents($apiUrl, false, $context);
if ($response === FALSE) {
die('Fehler bei der API-Anfrage');
}
// Antwort dekodieren
$result = json_decode($response, true);
if (isset($result['success']) && $result['success']) {
echo "Issue erfolgreich erstellt. ID: " . $result['issue_id'];
} else {
echo "Fehler: " . ($result['error'] ?? 'Unbekannter Fehler');
}
}//TODO nutzen
?>