getConfiguration('apikey'); if ($apikey !== $pluginKey) { http_response_code(403); die('BAD API KEY'); } /* ========================================================= Lecture JSON ========================================================= */ $data = json_decode(file_get_contents('php://input'), true); log::add('discordlink', 'debug', 'Action: ' . $nom); log::add('discordlink', 'debug', 'Payload: ' . json_encode($data)); /* ========================================================= Actions ========================================================= */ switch ($nom) { /* ================= MESSAGE RECU ================= */ case 'messagerecu': $idChannel = $data['idchannel'] ?? ''; $message = $data['message'] ?? ''; $idUser = $data['iduser'] ?? ''; log::add('discordlink', 'info', "Message reçu | Channel: $idChannel | User: $idUser | Message: $message" ); // 🔔 Exemple : déclencher un event Jeedom event::add('discord_message', [ 'channel' => $idChannel, 'user' => $idUser, 'message' => $message ]); echo json_encode(['status' => 'ok']); break; /* ================= REPONSE A UNE QUESTION ================= */ case 'ASK': log::add('discordlink', 'info', 'Réponse reçue: ' . json_encode($data)); event::add('discord_ask', $data); echo json_encode(['status' => 'ok']); break; /* ================= DEFAULT ================= */ default: log::add('discordlink', 'warning', 'Action inconnue: ' . $nom); echo json_encode(['status' => 'unknown_action']); break; }