# ═══════════════════════════════════════════════════════════════════════════════ # File: app/enforcement/awareness.py # Description: 🔥 VICTIM PROTECTION & PUBLIC AWARENESS MODULE # ═══════════════════════════════════════════════════════════════════════════════ """ 🔥 Awareness & Protection Suite =============================== 1. Victim Protection Module: Targeted advice for potential victims. 2. Public Awareness Bot: Broad-scale multilingual scam warnings. """ from typing import Dict, List, Any import random class VictimProtectionModule: """Provides targeted safety advice to potential scam victims.""" SAFETY_ADVICE = [ "⚠️ Never share your OTP (One Time Password) with anyone, even if they claim to be from the bank.", "⚠️ Bank officials will never ask for your UPI PIN or password over a call or message.", "⚠️ If you receive a 'Payment Successful' link without paying, it's a scam. Do not click.", "⚠️ Be cautious of 'urgent' requests for money. Verify the person's identity independently.", "⚠️ Avoid downloading 'Screen Share' apps like AnyDesk or TeamViewer on a stranger's request." ] def get_advice(self, scam_type: str = "general") -> str: """Get relevant safety advice based on scam type.""" # Future: Tailor advice to specific scam types return random.choice(self.SAFETY_ADVICE) class PublicAwarenessBot: """Generates multilingual scam awareness content for social media/SMS.""" AWARENESS_TEMPLATES = { "hindi": [ "🚨 सावधान! बैंक कर्मी कभी भी आपसे OTP या UPI PIN नहीं मांगते। अपनी गोपनीय जानकारी किसी को न दें। (Sentinel AI)", "KBC या अन्य लॉटरी के नाम पर आने वाले फर्जी संदेशों से बचें। पैसे जीतने के लिए पैसे न भरें। (Sentinel AI)", "KYC अपडेट के नाम पर आने वाले अनचाहे लिंक पर क्लिक न करें। आपका खाता खाली हो सकता है। (Sentinel AI)" ], "tamil": [ "🚨 எச்சரிக்கை! வங்கி ஊழியர்கள் ஒருபோதும் உங்களிடம் OTP அல்லது UPI PIN கேட்க மாட்டார்கள். (Sentinel AI)", "KBC போன்ற போலி லாட்டரி செய்திகளிடம் கவனமாக இருங்கள். (Sentinel AI)", "KYC புதுப்பிப்பு என்ற பெயரில் வரும் சந்தேகத்திற்கிடமான இணைப்புகளை கிளிக் செய்யாதீர்கள். (Sentinel AI)" ], "english": [ "🚨 Stay Safe! Banks never ask for OTP/PIN. Report suspicious calls to 1930. (Sentinel AI)", "Do not pay 'Registration Fees' for any lottery or prize. It is a fraud. (Sentinel AI)", "Unexpected KYC messages with links are dangerous. Use official bank apps only. (Sentinel AI)" ] } def generate_message(self, language: str = "english") -> str: """Generate a random awareness message in the target language.""" templates = self.AWARENESS_TEMPLATES.get(language.lower(), self.AWARENESS_TEMPLATES["english"]) return random.choice(templates) # Global instances protection_module = VictimProtectionModule() awareness_bot = PublicAwarenessBot()