Skip to content

App.py #669

@l0977242067-design

Description

@l0977242067-design

import os
import requests
from flask import Flask, request, jsonify

app = Flask(name)

TELEGRAM_BOT_TOKEN = os.getenv("TELEGRAM_BOT_TOKEN")
TELEGRAM_CHAT_ID = os.getenv("TELEGRAM_CHAT_ID")

def send_telegram_message(message_text):
if not TELEGRAM_BOT_TOKEN or not TELEGRAM_CHAT_ID:
return False

url = f"https://api.telegram.org/bot{TELEGRAM_BOT_TOKEN}/sendMessage"
payload = {
    'chat_id': TELEGRAM_CHAT_ID,
    'text': message_text,
    'parse_mode': 'Markdown'
}

try:
    response = requests.post(url, data=payload, timeout=10)
    return response.json().get('ok', False)
except Exception:
    return False

@app.route('/')
def home():
return "✅ Telegram SMS 转发器运行正常!"

@app.route('/sms_webhook', methods=['POST'])
def sms_webhook():
try:
data = request.get_json(silent=True) or request.form

    sms_content = data.get('sms_content', '')
    from_number = data.get('from_number', '未知号码')
    
    if not sms_content:
        return jsonify({"status": "error", "message": "缺少短信内容"}), 400
    
    telegram_message = f"*📱 新短信通知*\\n*发件人:* `{from_number}`\\n*内容:* \\n```\\n{sms_content}\\n```"
    
    success = send_telegram_message(telegram_message)
    
    if success:
        return jsonify({"status": "success", "message": "消息已转发到 Telegram"}), 200
    else:
        return jsonify({"status": "error", "message": "发送到 Telegram 失败"}), 500
        
except Exception as e:
    return jsonify({"status": "error", "message": f"服务器错误: {str(e)}"}), 500

if name == 'main':
port = int(os.environ.get('PORT', 5000))
app.run(host='0.0.0.0', port=port)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions