Files
wevads-platform/scripts/api_hamid-engine.php
2026-02-26 04:53:11 +01:00

29 lines
1.3 KiB
PHP
Executable File

<?php
header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: POST, GET, OPTIONS');
header('Access-Control-Allow-Headers: Content-Type');
if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') { http_response_code(200); exit; }
require_once('/opt/wevads/hamid-providers-config.php');
$input = json_decode(file_get_contents('php://input'), true) ?: $_REQUEST;
$action = $input['action'] ?? $_GET['action'] ?? 'status';
switch ($action) {
case 'chat':
$message = $input['message'] ?? '';
if (empty($message)) { echo json_encode(['error'=>'No message']); exit; }
echo json_encode(callWithFailover($message, $input['provider'] ?? null));
break;
case 'brain':
echo json_encode(['status'=>'success','winners'=>getBrainWinners($input['isp'] ?? null),'configs'=>getBrainConfigs()]);
break;
case 'providers':
$providers = getProviders();
echo json_encode(['status'=>'success','count'=>count($providers),'providers'=>array_map(fn($p)=>['name'=>$p['provider_name'],'model'=>$p['model'],'has_key'=>!empty($p['api_key'])],$providers)]);
break;
default:
echo json_encode(['status'=>'success','engine'=>'hamid','actions'=>['chat','brain','providers']]);
}