Line bot api

LindX31 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
LindX31 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
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 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
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   Statut Membre Dernière intervention  
 
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