import 'dart:convert'; import 'package:http/http.dart' as http; class AiRagService { static const String _baseUrl = 'https://n8n-didvan.liara.run/webhook/didvan-rag'; static const String _authHeader = 'Basic dXNlcjpkYXNqZHBuM3BjdTQzcDM0aWpyaA=='; static Future sendMessage(String message) async { try { final response = await http.post( Uri.parse(_baseUrl), headers: { 'Content-Type': 'application/json', 'Authorization': _authHeader, 'Accept': '*/*', }, body: jsonEncode({ 'chatInput': message, }), ); if (response.statusCode == 200) { final data = jsonDecode(response.body); return AiRagResponse( output: data['output'] ?? '', sources: List.from(data['sources'] ?? []), isSuccess: true, ); } else { return AiRagResponse( output: 'خطا در دریافت پاسخ از سرور', sources: [], isSuccess: false, ); } } catch (e) { return AiRagResponse( output: 'خطا در ارتباط با سرور: ${e.toString()}', sources: [], isSuccess: false, ); } } } class AiRagResponse { final String output; final List sources; final bool isSuccess; AiRagResponse({ required this.output, required this.sources, required this.isSuccess, }); }