Skip to content

การส่งข้อความ Line Notify ด้วยภาษา Python

mrolarik edited this page Jul 31, 2018 · 11 revisions

สำหรับการเขียนโปรแกรมภาษา Python เพื่อส่งข้อความแจ้งเตือน (Notify) ผ่านโปรแกรม LINE นั้นจะต้องใช้ไลบรารี่ของ requests เข้ามาช่วยในการส่ง โดยไลบรารี่ requests ติดตั้งมาพร้อมกับ Python แต่หากไม่สามารถ import มาใช้งานได้ สามารถติดตั้งได้ด้วยคำสั่ง

$ sudo pip install requests

อ่านรายละเอียดเพิ่มเติม การส่งข้อมูลระหว่าง client และ server ผ่าน socket

การขอ token จาก LINE ทำได้ดังนี้

  1. เข้าไปที่เว็บไซต์ https://notify-bot.line.me เพื่อเข้าไปขอ token Line Web
  2. คลิกเลือกที่ปุ่ม Generate token เพื่อขอ token จาก LINE โดยโปรแกรมจะสร้าง token ขึ้นมาให้ใช้งาน LINE token โดยขั้นตอนนี้
  • กรอกข้อมูล token name โดยในตัวอย่างเลือก cocobot เพื่อใช้เป็นชื่อแสดงขณะที่ทำการแจ้งเตือน
  • เลือก LINE account เพื่อที่จะให้ส่ง Notification (chat to send notification) ซึ่งสามารถเลือกส่งมาให้ตัวเอง หรือส่งเข้ากลุ่ม LINE ก็ได้ (ในขณะทดสอบควรเลือกส่งให้ตัวเอง)
  • จากนั้นกดที่ปุ่ม Generate token
  1. ระบบจะทำการสร้าง token ให้ทำการ copy มาเพื่อใช้งาน token
  2. จากนั้นระบบจะส่ง Notification ไปให้ยัง LINE เพื่อยืนยันว่าได้สร้าง token เสร็จเรียบร้อย Notification

โปรแกรม 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 Line Notify

  • หากเกิดป้อนหมายเลข token ผิดพลาดจะมีข้อความปรากฎดังนี้

{"status":401,"message":"Invalid access token"}

การยกเลิกการใช้บริการ LINE Notify ทำได้ดังนี้

  • ให้เข้าไปที่เว็บไซต์ https://notify-bot.line.me และเลือกบริการ (Service) ที่ต้องการยกเลิก โดยคลิกที่ปุ่ม Disconnect
  • ระบบจะขึ้นข้อความยืนยันการยกเลิกการใช้บริการ (Disconnect Service) ให้คลิกเลือกที่ปุ่ม Disconnect อีกครั้ง Web disconnect service
  • จากนั้นระบบจะส่งข้อความไปยัง LINE เพื่อแจ้งว่าได้ยกเลิกการให้บริการ Line disconnected

การประยุกต์ใช้งาน

รายละเอียดเพิ่มเติม

บทความต้นฉบับ https://jackrobotics.me/line-notify-ด้วย-python-fbab52d1549

Clone this wiki locally