การส่งข้อความ Line Notify ด้วยภาษา Python - mrolarik/simple-iot GitHub Wiki
สำหรับการเขียนโปรแกรมภาษา Python เพื่อส่งข้อความแจ้งเตือน (Notify) ผ่านโปรแกรม LINE นั้นจะต้องใช้ไลบรารี่ของ requests
เข้ามาช่วยในการส่ง โดยไลบรารี่ requests
ติดตั้งมาพร้อมกับ Python แต่หากไม่สามารถ import
มาใช้งานได้ สามารถติดตั้งได้ด้วยคำสั่ง
$ sudo pip install requests
อ่านรายละเอียดเพิ่มเติม การส่งข้อมูลระหว่าง client และ server ผ่าน socket
การขอ token จาก LINE ทำได้ดังนี้
- เข้าไปที่เว็บไซต์ https://notify-bot.line.me เพื่อเข้าไปขอ
token
- คลิกเลือกที่ปุ่ม
Generate token
เพื่อขอtoken
จาก LINE โดยโปรแกรมจะสร้าง token ขึ้นมาให้ใช้งาน โดยขั้นตอนนี้
- กรอกข้อมูล
token name
โดยในตัวอย่างเลือกcocobot
เพื่อใช้เป็นชื่อแสดงขณะที่ทำการแจ้งเตือน - เลือก LINE account เพื่อที่จะให้ส่ง Notification (chat to send notification) ซึ่งสามารถเลือกส่งมาให้ตัวเอง หรือส่งเข้ากลุ่ม LINE ก็ได้ (ในขณะทดสอบควรเลือกส่งให้ตัวเอง)
- จากนั้นกดที่ปุ่ม
Generate token
- ระบบจะทำการสร้าง
token
ให้ทำการ copy มาเพื่อใช้งาน - จากนั้นระบบจะส่ง Notification ไปให้ยัง LINE เพื่อยืนยันว่าได้สร้าง token เสร็จเรียบร้อย
โปรแกรม Python เพื่อส่งข้อความแจ้งเตือนไปยัง LINE (LINE Notify)
#------------line_notify.py------------
#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import requests
url = 'https://notify-api.line.me/api/notify'
token = 'MQxJL1wXd7e71PDUOUvFK3eYyqq4VySHQRVMfaobwiw'
headers = {'content-type':'application/x-www-form-urlencoded','Authorization':'Bearer '+token}
msg = 'ส่งข้อความ LINE Notify'
r = requests.post(url, headers=headers, data = {'message':msg})
print r.text
- จากนั้นทำการรันโปรแกรมด้วยคำสั่ง
$ python line_notify.py
- จากไม่เกิดข้อผิดพลาดใด ๆ จะมีข้อความปรากฎดังนี้
{"status":200,"message":"ok"}
-
จากนั้นข้อความจะถูกส่งไปที่ LINE application
-
หากเกิดป้อนหมายเลข token ผิดพลาดจะมีข้อความปรากฎดังนี้
{"status":401,"message":"Invalid access token"}
การยกเลิกการใช้บริการ LINE Notify ทำได้ดังนี้
- ให้เข้าไปที่เว็บไซต์ https://notify-bot.line.me และเลือกบริการ (Service) ที่ต้องการยกเลิก โดยคลิกที่ปุ่ม
Disconnect
- ระบบจะขึ้นข้อความยืนยันการยกเลิกการใช้บริการ (Disconnect Service) ให้คลิกเลือกที่ปุ่ม
Disconnect
อีกครั้ง - จากนั้นระบบจะส่งข้อความไปยัง LINE เพื่อแจ้งว่าได้ยกเลิกการให้บริการ
การประยุกต์ใช้งาน
รายละเอียดเพิ่มเติม
บทความต้นฉบับ https://jackrobotics.me/line-notify-ด้วย-python-fbab52d1549