เขียน VB.NET แจ้งเตือนข้อความในแอพ LINE ตัวเองและ LINE Group ด้วย LINE Notify

สำหรับ Programmer ลองนำไปประยุกต์ใช้ในการเขียนโปรแกรมได้เยอะ เช่น  กรณีฝังโค้ดไว้ในระบบดักปัญหา Error ต่างๆ เราสามารถรับทราบปัญหาที่เกิดขึ้นได้ทันทีทันใด หรือถ้าเป็นระบบสต๊อกสินค้าอาจจะแจ้งเตือนสินค้าใกล้หมด  แจ้งเตือนเวลามีการสั่งซื้อใหม่ เป็นต้น  ล้วนแล้วแต่เป็นประโยชน์ทั้งสิ้น  วันนี้ผมจะทดสอบบน Windows Application ด้วย VB.NET ให้ดูครับ ส่วน Platform  หรือภาษาอื่นลองเอาไปดัดแปลงกันดูนะครับ

og:image

og:image

 

  1. อันดับแรกเลยเราต้องสร้างสิ่งที่จะทำให้เราเข้าถึง Line เรา หรือ Line Group ได้ก่อน ซึ่งนั่นก็คือ Token วิธีสร้างก็ง่ายแสนง่าย ดังนี้

 

 

  • คลิกที่ ชื่อบัญชี เลือก หน้าของฉัน (My Page)

 

 

  • เลื่อนลงไปล่างๆสุด จะเจอปุ่ม “ออก Access Token (สำหรับผู้พัฒนา)” ให้ทำการคลิกเบาๆ 1 ที

 

 

  • ให้ทำการใส่ชื่อที่จะแสดงตอนแจ้งเตือน และเลือกว่าจะให้แจ้งเตือนแบบไหน ซึ่งถ้าเลือกอันแรก “รับการแจ้งเตือนแบบตัวต่อตัวจาก LINE Notify” จะเป็นแจ้งเตือนเข้า Line ตัวเอง หรือหากต้องการแจ้งเตือน Line Group ก็ให้เลือก Group ที่ต้องการได้เลย

 

 

  • ก็จะได้ชุดอักษร Token เป็นที่เรียบร้อย ให้ทำการ Copy เก็บไว้ให้ดีเพราะถ้าปิดหน้านี้ไปแล้วจะไม่สามารถเรียกย้อนกลับมาดู Token ได้อีก (ไม่ควรเปิดเผยต่อสาธารณะ เพราะอาจทำให้คนอื่นทำการส่งแจ้งเตือนมาที่ Line/Group ของเราได้)

 

 

  1. เมื่อเราได้ Token ที่จะส่งข้อความไปหา LINE เราแล้วก็มาเขียนโปรแกรมกัน สร้าง Project Windows App ง่ายๆขึ้นมา มีแค่ปุ่ม Button กับ Textbox

 

 

  1. ใส่คำสั่งนี้ลงไป copy ไปเลย แล้วเปลี่ยนตามจุดในภาพ (Imports System.IO/Net/Text ไว้บนสุดของ Class ด้วยนะครับ)

 

Imports System.IO

Imports System.Net

Imports System.Text

Try

Cursor.Current = Cursors.WaitCursor

System.Net.ServicePointManager.Expect100Continue = False

System.Net.ServicePointManager.SecurityProtocol = CType(3072, SecurityProtocolType)

Dim request = DirectCast(WebRequest.Create(“https://notify-api.line.me/api/notify”), HttpWebRequest)

Dim postData = String.Format(“message={0}”,TextBox1.Text)

Dim data = Encoding.UTF8.GetBytes(postData)

request.Method = “POST”

request.ContentType = “application/x-www-form-urlencoded”

request.ContentLength = data.Length

request.Headers.Add(“Authorization”, “Bearer ใส่ Token ตรงนี้”)

request.AllowWriteStreamBuffering = True

request.KeepAlive = False

request.Credentials = CredentialCache.DefaultCredentials

Using stream = request.GetRequestStream()

stream.Write(data, 0, data.Length)

End Using

Dim response = DirectCast(request.GetResponse(), HttpWebResponse)

Dim responseString = New StreamReader(response.GetResponseStream()).ReadToEnd()

Catch ex As Exception

MessageBox.Show(ex.Message, “Error”, MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1)

Finally

Cursor.Current = Cursors.Default

End Try

**** หมายเหตุ อัพเดต 08/08/2022 ต้องเพิ่มบรรทัดนี้ไม่งั้นจะ error นะครับ    System.Net.ServicePointManager.SecurityProtocol = CType(3072, SecurityProtocolType)

  1. ลอง ป้อนความความ แล้วกดปุ่ม ดูครับ

 

จะมีข้อความ เด้งเตือนใน Line เราเรียบร้อย

 

 

  1. กรณีที่ส่งเข้า Line Group ต้องทำการ Invite และ Add “Line Notify” เข้า Group ก่อนถึงจะเด้งเตือนนะครับ เป็นอันจบพิธี

 

เห็นไหมครับว่าง่ายนิดเดียว หากทำไม่ได้ติดตรงไหนลองทักมาสอบถามดูนะครับที่เฟสบุ๊คแฟนเพจ Silverlight Thailand

https://www.facebook.com/BarcodeProgrammer/

หวังหว่าบทความจะมีประโยชน์กับ Programmer ที่จะพัฒนาโปรแกรมดีๆแจ้งเตือนผ่าน LINE เท่ห์ๆให้ User ได้ใช้กันนะครับ 😊 😊