Line bot api

Fermé
LindX31 Messages postés 2 Date d'inscription vendredi 12 mars 2021 Statut Membre Dernière intervention 13 mars 2021 - 12 mars 2021 à 19:49
LindX31 Messages postés 2 Date d'inscription vendredi 12 mars 2021 Statut Membre Dernière intervention 13 mars 2021 - 13 mars 2021 à 18:20
Bonjour à tous.
Je n'y connaissais vraiment pas grand chose en informatique il y a 1 mois, et je voulais absolument progresser car cela m'intéresse énormément. Je me suis donc lancé dans le projet fou d'un bot Line en python !
Après avoir affronté quelques dizaines, voire centaines de bugs, les fonctions principales fonctionnent ! J'arrive à programmer le machin pour qu'il me renvoie un message ou une image en réponse à un mot clé. Maintenant je vise plus haut, je tente le "push_message" et ça ne fonctionne pas et je ne comprends même pas pourquoi.
Si quelqu'un qui s'y connait et peut m'aider ce serait cool !
Merci d'avance
A voir également:

2 réponses

yg_be Messages postés 23517 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 avril 2025 Ambassadeur 1 578
12 mars 2021 à 21:33
bonjour,
si tu veux de l'aide:
- montre-nous ce que tu as réalisé.
- donne nous des information factuelles: "ça ne fonctionne pas" ne signifie rien
- "je ne comprends même pas pourquoi": peut-être pourrais-tu prendre du temps afin d'apprendre les bases du métier?
- si tu veux réellement progresser: https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
0
LindX31 Messages postés 2 Date d'inscription vendredi 12 mars 2021 Statut Membre Dernière intervention 13 mars 2021
13 mars 2021 à 18:20
Bonjour !
Merci de ta réponse ! En effet je n'ai pas été bien précis dans ma requête.
Pour ce qui est des bases du métier, c'est justement cela que je cherche. Et je sais d'expérience que c'est en se confrontant à des situations factuelles et leur lot de problèmes qu'on progresse réellement, car cela me permet de faire un certain nombre de recherches sur le net pour les résoudre. Mais là je ne trouve plus rien de pertinent...
Voici le code :
import os
from flask import Flask, request, abort

from linebot import (
    LineBotApi, WebhookHandler
)
from linebot.exceptions import (
    InvalidSignatureError
)
from linebot.models import (
    MessageEvent, TextMessage, TextSendMessage, ImageSendMessage 
)

app = Flask(__name__)

line_bot_api = LineBotApi('<monToken>')
handler = WebhookHandler('<monWebhookHandler>')


@app.route("/callback", methods=['POST'])
def callback():
    # Get X-Line-Signature header value
    signature = request.headers['X-Line-Signature']

    # Get request body as text
    body = request.get_data(as_text=True)
    app.logger.info("Request body: " + body)

    # Handle webhook body
    try:
        handler.handle(body, signature)
    except InvalidSignatureError:
        abort(400)

    return 'OK'


@handler.add(MessageEvent, message=TextMessage)
def handle_message(event):

    if event.message.text == "Hey":
        line_bot_api.reply_message(
            event.reply_token,
            TextSendMessage(text="Salut")
        )
# Et voici la partie qui coince :
    if event.message.text == "push":
        line_bot_api.push_message(
            "<monIDLine", 
            TextSendMessage(text="Hello World !")
            )
# fin de la partie qui coince

if __name__ == "__main__":
    port = int(os.environ.get('PORT', 5000))
    app.run(host='0.0.0.0', port=port)


Il est censé me retourner "Salut" quand j'envoie "Hey", et m'envoyer un message "Hello World !" quand n'importe qui lui dit "push".
Lorsque je tape Salut il me retourne bien Hey par contre aucune nouvelle du Hello World !

Voilà, j'espere avoir été suffisemment précis ^^
0