Line Notify with Delphi component EP.2

Delphi Component Line Notify version 1

หลายท่านของเคยได้ยิน หรือบางท่านอาจจะเคยเขียนโปรแกรมเพื่อใช้ Line Notify แล้วก็เป็นได้
ดังนั้น ผมจะไม่ขอกล่าวถึงว่า LINE Notify นั้นคืออะไร มี Service นี้ไว้เพื่ออะไรนะครับ

สำหรับท่านที่เป็น Delphi Programmer , Delphi Developer
และท่านกำลังมองหา Delphi component ที่เอาไว้ ใช้เพื่อส่งข้อความเข้าไป Line notify service
แล้วละก็ให้ท่านลองอ่าน เนื้อหาข้างล่างดูครับ

...   ที่ประเทศไทย อะไร ๆ ก็ เต็มไปด้วย Line ไปทางไหนก็ได้ยินคำว่า Line 
อะไร ๆ ก็ Line บลา ๆ
งั้นผมก็จะ LINE LINE กันบ้างละครับ
...   ผมเขียนโปรแกรมด้วย Delphi เป็นหลัก ดังนั้นก็เลยเขียนเป็น Component ดูเพื่อง่ายต่อการนำไปใช้งาน

AwaraLineNotify Delphi component















สมมุติว่าพัฒนา Component เสร็จแล้วเพียงพอสำหรับการทดสอบ

Component มี Properties อะไรไบ้าง
อธิบายผ่านรูปภาพด้านล่างนี้ละกันเขียนบรรยายไม่ค่อยเก่ง
AwaraLineNotify Properties

























Component ทำอะไรได้บ้าง
แน่นอน เราจะส่ง ข้อความไป LINE Notify API
ดังนั้น อันดับแรก ความสามารถในการส่งข้อความก็จะต้องมี

... ซึ่งข้อความที่ว่า จะส่งได้ครั้งละ 1000 ตัวอักษรนะครับ อ้างอิงจาก Doc.

...และตัว Component สามารถส่งอะไรได้อีก ล่ะ
จาก Document สามารถส่งได้อีกหลาย อย่างเลยครับ
ดังภาพ (Capture มาบางส่วน)


Request parameters
















ลองดูว่าทำอะไรได้บ้าง นอกจากส่งข้อความ

ตัวอย่าง
การส่ง Message ผ่าน Component

ตัวอย่างกำหนด  Properties Text ผ่าน TMemo Component
และจะใช้ Method SendMessage; ในการส่งข้อความ
ด้านล่างนี้เป็นตัวอย่าง การใช้งาน Component ส่งข้อความผ่าน Procedure SendMessage
How to Send a message with Line notify.







การส่ง Image ผ่าน http, https, URL

imageThumbnail, imageFullsize
ตัวนี้เอาไว้ส่ง image ที่เป็น Link (HTTP/HTTPS URL)
ตัวอย่าง
Send image from http,https,url









การส่ง Sticker
stickerPackageId, stickerId
สองตัวนี้ใช้คู่กันในการส่ง Sticker ผ่าน Component
โดยต้องระบุ Sticker Package ID
จากนั้น ให้ระบบ Sticker ID    อ้างอิงจาก Sticker List
ตัวอย่าง
Send sticker









การส่งไฟล์จากคอมพิวเตอร์
imageFile
ตัวนี้เอาไว้ส่งภาพจาก เครื่องคอมพิวเตอร์ โดย Component จะ upload ไฟล์ไปบน Line Server
ซึ่งใช้ได้กับ 2 สกุลไฟล์ คือ jpeg และ png
ตัวอย่าง
Send image from file (Browse from PC)









ตามไปอ่าน Doc. ฉบับเต็มได้ที่ Line notify document

สถานะการส่งข้อความ
หลังจากส่งข้อมูลขึ้นไปบน Server แล้ว 
Component ได้มีข้อความแจ้งเตือนหรือส่ง Status อะไรแจ้งกลับมาบ้าง
ตอบว่ามี ...
โดย Component สามารถ Response ค่าได้ต่าง ๆ ได้ดังนี้

StatusCode: Integer
StatusText: String
ResponseHeader: TStrings
ResponseContent: TStrings

โดยส่ง ผ่าน Event ที่ชื่อ OnAfterSendMessage ดังภาพ

Component Response Event









เงื่อนไขของ LINE Notify API
เนื่องจากใช้ Line notify ในรูปแบบของการทดสอบ (Developer Trial)
จึงมี Limits การใช้งาน ซึ่งจะส่งได้ 1000 request/min
อ้างอิงจาก Limitations are identical to Business Connect API


ทดลองเอา Component สร้าง Application เล็ก ๆ เพื่อทดสอบโปรแกรมดูหน่อย
ดูภาพประกอบ

ได้วาง Component ลงไป 1 ตควบน form
Properties ต่าง ๆ ผมจะไม่กำหนดเลยนะ จะไปกำหนดในโปรแกรมทั้งหมดเลย
อย่างที่กรึ่นนำไปตอนต้น ๆ คนที่อ่านมาจนถึงตรงนี้
นั้นแปลกว่า ท่าน ๆ ทราบแล้วว่า Line Notify คืออะไร ทำงานอย่างไร
และเราต้องทำอะไรบ้าง เช่น
การไปขอ Access Token
การ เพิ่ม Line Notify ให้เป็นเพื่อนกับเรา
เหล่านี้ผมถือว่าท่านทราบแล้วนะครับ :)

Line notify main screen

















สมมุติว่าพัฒนาโปรแกรมเสร็จแล้วนะ (โปรแกรมเมอร์เทพเกิ๊น....)
ลองรันโปรแกรมกันเลย
Run Line Notify Application
















ก่อนอื่นเราต้องไปหา Access Token กันก่อน
ให้คลิก ที่ Authorization config... ด้านขวาบน
คลิกกันเลย

Access Token settig









ในภาพบอกว่า Get Access from https://notify-bot.line.me/en/
คลิกที่ Link บนโปรแกรมเลย













จากนั้นทำการ Login เข้าระบบ
ด้วย Email, password ของเราที่ได้ Register ไว้กับ Line
และเข้าไปที่ My page มองหา Generate token ดังภาพ

Generate access token (For developers)
















การออก Access Token สามารถเลือกได้ 2 แบบคือ
1-on-1 (Chat with LINE Notify)
และ การออก Access Token สำหรับกลุ่ม
 (อันนี้ต้อง Add LINE Notify เข้าไปในกลุ่มนั้น ๆ ด้วย)

ผมเลือกการออก Access Token แบบ 1 : 1 ก็แล้วกันเพื่อทดอสบ
คลิก ๆ ได้ Access มาแล้ว จดไว้ด้วยก็ดีนะ กันเหนียว

จากนั้น  Copy แล้วเอามาใส่ในโปรแกรมที่นอนรออยู่นานแล้ว (กด OK)
LINE Notify Access Token

















ทดสอบ
ทดสอบกันดีกว่า มันส่งข้อความมั้ย ?
Test send message













ส่งข้อความได้ แต่จะลองส่ง Image from file
โดย Browse file จากเครื่อง  กดที่ Request (Optional)
กดปุ่ม ... เพื่อ Browse หาไฟล์ภาพในคอมพิวเตอร์
และกด OK
ทดสอบกันเลยกดปุ่ม Send ( ใน Document ของ Line ระบุไว้ว่าทุกครั้งที่ส่ง อะไรก็ตาม
เค้าบอกว่าต้องส่ง Message ไปด้วยเสมอ อันนี้ลองหาอ่านดูกันเน้อครับ)

Delphi Component Browse image from computer

Test send image from file






















ทดสอบส่ง Sticker, Image From URL, Image From File
กดเข้าไปที่เดิม Request (Optional)
แล้วกำหนดค่า ต่าง ๆ ให้ครบ และกด SEND ดูใหม่

Add multiple parameters

Test send multiple parameters






























ดูสถานะการส่ง
Component Return Status มาให้ 3 แบบ
โดยตอบกลับมาผ่าน Event OnAfterSendMessage (ดูที่ด้านบนของ Blog)
ดังภาพ

Return Status Message (Header)

Return Status Message (Content)
Return Status (Code, Description)
ทดสอบ Multi-Devices Application

Delphi LINE Notify (Multi-Devices Application)

Delphi LINE Notify (Multi-Devices Application) Test Run

































ติดไว้ 1 เรื่องยังไม่มีเวลาทดสอบบน
 Android หรือ Mac เอาไว้จะมาเขียนต่อนะครับ

Download demo

Line: mesa.d
Email: samrids@gmail.com
















Comments

Post a Comment