import sqlite3 from flask import Flask, render_template_string, request, jsonify app = Flask(__name__) DOMAIN_NAME = "tempgm2.abrdns.com" # SQLITE DATABASE SETUP def init_db(): conn = sqlite3.connect('tempmail.db') cursor = conn.cursor() cursor.execute(''' CREATE TABLE IF NOT EXISTS emails ( id INTEGER PRIMARY KEY AUTOINCREMENT, temp_email TEXT, sender TEXT, subject TEXT, body TEXT, timestamp DATETIME DEFAULT CURRENT_TIMESTAMP ) ''') conn.commit() conn.close() init_db() HTML_TEMPLATE = """ TempGM Mail

TempGM Generator

100% Free Custom Temporary Email Service
Loading saved email...

Inbox

Listening for new emails...
No emails received yet.
""" @app.route('/') def index(): return render_template_string(HTML_TEMPLATE, domain=DOMAIN_NAME) # YEH ENDPOINT GMAIL SE DIRECT EMAILS RECEIVE KAREGA (WEBHOOK) @app.route('/webhook', methods=['POST']) def webhook(): data = request.json if not data: return jsonify({"status": "error"}), 400 to_email = data.get('to', '').lower() from_email = data.get('from', 'Unknown') subject = data.get('subject', 'No Subject') body = data.get('body', '') conn = sqlite3.connect('tempmail.db') cursor = conn.cursor() cursor.execute(''' INSERT INTO emails (temp_email, sender, subject, body) VALUES (?, ?, ?, ?) ''', (to_email, from_email, subject, body)) conn.commit() conn.close() return jsonify({"status": "success"}), 200 @app.route('/get-inbox') def get_inbox(): target_email = request.args.get('email', '').lower().strip() if not target_email: return jsonify({"mails": []}) conn = sqlite3.connect('tempmail.db') cursor = conn.cursor() # SQL LIKE operator se extract karega cursor.execute(''' SELECT id, sender, subject, body, timestamp FROM emails WHERE temp_email LIKE ? ORDER BY id DESC ''', (f'%{target_email}%',)) rows = cursor.fetchall() conn.close() messages = [] for r in rows: messages.append({ "id": r[0], "from": r[1], "subject": r[2], "body": r[3], "time": r[4] }) return jsonify({"mails": messages}) @app.route('/wipe-inbox', methods=['POST']) def wipe_inbox(): target_email = request.args.get('email', '').lower().strip() if target_email: conn = sqlite3.connect('tempmail.db') cursor = conn.cursor() cursor.execute('DELETE FROM emails WHERE temp_email LIKE ?', (f'%{target_email}%',)) conn.commit() conn.close() return jsonify({"status": "success"}) return jsonify({"status": "error"}), 400 if __name__ == "__main__": app.run(host="0.0.0.0", port=7860)