ru24.pro
«Фрилансим»
Февраль
2025
1 2 3 4 5 6 7 8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

Сделать бота в Инсте, чтобы отвечал сообщением на кодовое слово

0
Чтобы бот автоматически отвечал на кодовое слово в личных сообщениях Instagram, отправляя ссылку на Telegram, нужно:

1. Подключить Instagram API и Webhook

  1. Создать приложение в Meta for Developers и подключить Instagram Graph API.
  2. Получить токен доступа (instagram_manage_messages).
  3. Настроить Webhook для получения входящих сообщений.

2. Обработать входящие сообщения

Бот должен проверять, содержит ли сообщение кодовое слово, и отправлять ответ.

Пример кода на Python (Flask + Requests):

Запуск Webhook для получения сообщений

from flask import Flask, request
import requests

app = Flask(__name__)

VERIFY_TOKEN = "YOUR_VERIFY_TOKEN"
ACCESS_TOKEN = "YOUR_ACCESS_TOKEN"
TELEGRAM_LINK = "https://t.me/YOUR_TELEGRAM_BOT"

@app.route('/webhook', methods=['GET', 'POST'])
def webhook():
    if request.method == 'GET':  # Подтверждение Webhook в Meta
        if request.args.get("hub.verify_token") == VERIFY_TOKEN:
            return request.args.get("hub.challenge")
        return "Ошибка проверки", 403

    if request.method == 'POST':  # Обработка сообщений
        data = request.json
        for entry in data.get("entry", []):
            for message_data in entry.get("messaging", []):
                sender_id = message_data["sender"]["id"]
                message_text = message_data.get("message", {}).get("text", "").lower()

                if "кодовое слово" in message_text:  # Проверяем кодовое слово
                    send_message(sender_id, f"Перейдите в наш Telegram: {TELEGRAM_LINK}")

        return "OK", 200

def send_message(user_id, text):
    """Функция отправки сообщения"""
    url = f"https://graph.facebook.com/v19.0/me/messages?access_token={ACCESS_TOKEN}"
    payload = {
        "recipient": {"id": user_id},
        "message": {"text": text}
    }
    requests.post(url, json=payload)

if __name__ == "__main__":
    app.run(port=5000, debug=True)

3. Развернуть сервер и подключить Webhook

  • Запустите сервер (например, на Heroku, AWS, Vercel).
  • Укажите Webhook URL в настройках Facebook App (https://yourserver.com/webhook).
  • Подключите обработку событий messages в Instagram API.
Теперь, когда пользователь отправит кодовое слово в Instagram, бот автоматически ответит сообщением с ссылкой на Telegram.