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

Цена договорная
08 февраля 2025, 16:57 • 1 отклик • 20 просмотров
Чтобы бот автоматически отвечал на кодовое слово в личных сообщениях 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.