前提・実現したいこと
Raspberry Piでタクトスイッチを押すたびにLINEにメッセージが送られるというものを作りたいのですが、
一回目はうまくいくものの二回目以降メッセージが送られてきません。
何回でもメッセージが送られるようにしたいです。
プログラミング自体初心者なので初歩的なミスかもしれませんがよろしくお願いいたします。
Python3
1import requests 2import datetime 3import pytz 4import RPi.GPIO as GPIO 5import time 6 7Sw_pin = 23 8 9GPIO.setmode(GPIO.BCM) 10GPIO.setup(Sw_pin,GPIO.IN,pull_up_down=GPIO.PUD_DOWN) 11 12time_now = datetime.datetime.now(pytz.timezone('Asia/Tokyo')) 13time_now = time.strftime('%Y年%m月%d日 %H:%M:%S') 14 15Token = '○○○○○○○○○○○○○○○○' 16api_url = 'https://notify-api.line.me/api/notify' 17 18send_contents = str(time_now) 19 20Token_dic = {'Authorization':'Bearer'+' '+Token} 21send_dic = {'message': send_contents} 22print(Token_dic) 23print(send_dic) 24 25image_file = '/home/pi/Downloads/○○○.jpg' 26 27binary = open(image_file,mode='rb') 28 29image_dic = {'imageFile':binary} 30 31while True: 32 try: 33 34 if GPIO.input(Sw_pin) == GPIO.HIGH: 35 requests.post(api_url,headers=Token_dic,data=send_dic, files=image_dic) 36 37 time.sleep(0.1) 38 print(0) 39 40 except KeyboardInterrupt: 41 GPIO.cleanup()
試したこと
while True以下、if以下にそれぞれprintを入れてみたところちゃんと表示されたため、
while以下はうまくループしているようなのですが、メッセージが送られないです。
どうしてでしょうか?
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー