diff --git a/backend/marketing_engine/gemini_comment_generator.php b/backend/marketing_engine/gemini_comment_generator.php index 90438f36..630a77ab 100644 --- a/backend/marketing_engine/gemini_comment_generator.php +++ b/backend/marketing_engine/gemini_comment_generator.php @@ -14,6 +14,25 @@ if (!$geminiApiKey) { die("Error: GEMINI_API_KEY not set in environment.\n"); } +function guessCountryFromContext($text) { + $text = mb_strtolower($text, 'UTF-8'); + + // Syrian Keywords + if (preg_match('/(يلاغو|يلا غو|yallago|yalla go|سوريا|دمشق|حلب|اللاذقية|ليرة|سيريتل|mtn|كازية|مازوت)/u', $text)) { + return 'SY'; + } + // Egyptian Keywords + if (preg_match('/(ديدي|ان درايف|didi|indrive|مصر|القاهرة|جنيه|اسكندرية)/u', $text)) { + return 'EG'; + } + // Jordanian Keywords (Default for Uber/Careem/Jeeny/TaxiF usually) + if (preg_match('/(جيني|jeeny|بترا|petra|عمان|اربد|دينار|تطبيقات ذكية|أوبر|كريم|uber|careem|تكسي اف|taxif)/u', $text)) { + return 'JO'; + } + + return 'SY'; // Fallback to Syria as requested by default +} + /** * Generate a comment using Gemini API * @@ -24,9 +43,21 @@ if (!$geminiApiKey) { function generateCommentWithGemini($postContext, $intent) { global $geminiApiKey; - $url = "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=" . $geminiApiKey; + // Automatically guess the target country based on the keywords in the post + $country = guessCountryFromContext($postContext); - $systemInstruction = "أنت سائق سيارة أجرة في الأردن أو السعودية. تتحدث بلهجة عامية بسيطة جداً، وتكتب أحياناً بأسلوب عفوي (ممكن مع أخطاء مطبعية بسيطة لتكون طبيعياً). أنت تستخدم تطبيق 'سيرو' (Siro) للنقل الذكي وتراه التطبيق الأفضل لأنه يوفر دخل ممتاز ولا يظلم السائق. لا تتحدث كمسوق لشركة، بل كزميل ناصح."; + + $url = "https://generativelanguage.googleapis.com/v1beta/models/gemini-flash-lite-latest:generateContent?key=" . $geminiApiKey; + + if ($country === 'SY') { + $systemInstruction = "أنت كابتن تطبيق توصيل أو راكب عادي في سوريا (دمشق، حلب، اللاذقية، طرطوس). تتحدث باللهجة السورية العامية المحكية (استخدم مصطلحات مثل: خيو، معلم، شلونك، والله، على راسي، شو القصة). تكتب بأسلوب عفوي جداً وشعبي، كأنك تكتب تعليقاً حقيقياً على فيسبوك وتختصر بالكلام. أنت تحب تطبيق 'سيرو' (Siro) لأنه حل أزمة الغلاء والتكلفة العالية في سوريا. لا تتحدث أبداً بأسلوب إعلاني، لا تستخدم العربية الفصحى، ولا تتحدث كمسوق لشركة. كن كشخص عادي يشارك تجربته مع الناس ويرد على أسئلتهم."; + } elseif ($country === 'EG') { + $systemInstruction = "أنت كابتن أو راكب في مصر (القاهرة، اسكندرية). تتحدث باللهجة المصرية العامية (يا باشا، يا اسطى، بصراحة، والله العظيم). أسلوبك شعبي وعفوي وطبيعي. ترى أن تطبيق 'سيرو' (Siro) أفضل وأوفر من ديدي وان درايف. لا تتحدث كمسوق."; + } elseif ($country === 'JO') { + $systemInstruction = "أنت كابتن تطبيق توصيل أو راكب في الأردن (عمان، إربد، الزرقاء). تتحدث باللهجة الأردنية العامية (يا زلمة، والله، لعاد، شو الأخبار). أسلوبك عفوي وعادي جداً. ترى أن تطبيق 'سيرو' (Siro) هو أفضل حل لأزمة المواصلات. لا تتحدث كمسوق."; + } else { + $systemInstruction = "أنت كابتن تطبيق توصيل تتحدث بلهجة محلية عامية. أسلوبك عفوي وطبيعي. تنصح الناس بتطبيق 'سيرو' (Siro). لا تتحدث كمسوق."; + } $prompt = "السياق/المنشور الذي تقرأه الآن: \n\"" . $postContext . "\"\n\n";