27 lines
1.4 KiB
PHP
Executable File
27 lines
1.4 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;
|
|
$message = $input['query'] ?? $input['message'] ?? $input['q'] ?? '';
|
|
$provider = $input['provider'] ?? null;
|
|
|
|
if (empty($message)) { echo json_encode(['error'=>'No message','status'=>'error']); exit; }
|
|
|
|
$winners = getBrainWinners();
|
|
$configs = getBrainConfigs();
|
|
$brainContext = "\n\n=== BRAIN ENGINE DATA ===\n";
|
|
foreach ($winners as $w) { $brainContext .= "• ISP: {$w['isp_target']} | Inbox: {$w['inbox_rate']}% | Tests: {$w['total_tests']} | Config #{$w['config_id']}\n"; }
|
|
|
|
$systemPrompt = "Tu es Weval Mind, le cerveau IA de WEVADS/DELIVERADS. Expert en délivrabilité email et Brain Engine.\n$brainContext\nRéponds de façon concise et actionable.";
|
|
|
|
$result = callWithFailover($message, $provider, $systemPrompt);
|
|
|
|
if (isset($result['error'])) { echo json_encode(['status'=>'error','error'=>$result['error']]); }
|
|
else { echo json_encode(['status'=>'success','response'=>$result['response'],'provider'=>$result['provider'],'model'=>$result['model'],'latency_ms'=>$result['latency'],'brain_enriched'=>true]); }
|