ABDUL Subscriber — Subscribe your topic easier via ABDUL Chatbot Platform
ถ้ามีระบบหรือ IoT Sensor สักตัว ที่ส่งข้อมูลออกมา(publish) เป็นระยะๆ แล้วอยากให้ส่งข้อมูลนั้นเข้าแชตบอตที่มีอยู่ จะทำไงดี?
เชื่อว่าหลายคนกำลังมองหา solution ที่จะทำให้แชตบอตของคุณรับข้อความ (subscribe) ที่ broadcast หรือ publish ผ่านทาง messaging service/broker เช่น MQTT กันอยู่ แต่การจะมีระบบที่สามารถ subscribe ข้อมูลเหล่านี้ ก็ต้องตั้ง server หรือเขียน script ไปแปะไว้ไหนสักที่หนึ่ง เพื่อคอยรับข้อมูลนี้ การจะทำให้ได้แบบนี้ ก็ต้องอาศัยความเข้าใจอยู่พอสมควร
วันนี้ผมมี Solution ง่ายๆ มาฝากครับ
นั่นก็คือ ABDUL Subscriber สำหรับใครที่ใช้งานแชตบอตผ่านทาง ABDUL Platform อยู่แล้ว …
คำถาม : ต้องติดตั้งหรือตั้งค่าเพิ่มเติมอย่างไร
คำตอบ : แชตบอตทุกตัวที่สร้างผ่าน ABDUL Platform มี feature นี้อยู่แล้ว
แล้วจะเรียกใช้งานอย่างไร?
ก่อนอื่นต้องทำความเข้าใจก่อนว่า การรับข้อมูลผ่านทาง mqtt broker สิ่งสำคัญ 2 อย่างที่เราจะต้องมีก็คือ BROKER และ TOPIC
BROKER คือ endpoint ของ server ให้บริการ ตัวอย่าง public broker ที่เปิดให้ใช้งานฟรี เช่น iot.eclipse.org , broker.hivemq.com เป็นต้น
TOPIC คือ channel หรือช่องสัญญาณข้อมูลที่เราจะไปเกาะนั่นเอง
สำหรับรายละเอียดอื่นๆ ลองค้นหาเพื่อทำความเข้าใจกันเองนะครับ ไม่ยากอะไร ;)
คำถาม : มี Broker กับ Topic แล้ว จะทำยังไงต่อ?
คำตอบ : พิมพ์บอกแชตบอตของคุณได้เลย
เริ่มรับข้อความ : sub BROKER TOPIC
ตัวอย่าง sub broker.hivemq.com /gmhome
เพื่อเริ่มต้นรับข้อความที่ถูก publish บน Broker broker.hivemq.com ผ่านช่องที่ชื่อ /gmhome
และ
ยกเลิกการรับข้อความ : unsub BROKER TOPIC
ตัวอย่าง unsub broker.hivemq.com /gmhome
เพื่อยกเลิกข้อความที่ถูก publish บน Broker broker.hivemq.com ผ่านช่องที่ชื่อ /gmhome
ดูรูปตัวอย่างข้างล่าง เผื่อจะเข้าใจง่ายขึ้นนะครับ
เคล็ดลับความพิเศษของความสามารถนี้ ก็คือ
- หากพิมพ์บอกกับบอตโดยตรง บอตจะส่งข้อความถึงเราโดยตรงเช่นกัน
- หากต้องการให้แจ้งข้อมูลในกลุ่ม ก็แค่ invite บอตตัวใดตัวนึงที่สร้างผ่าน ABDUL Platform แล้วใช้คำสั่งด้านบน พิมพ์ในกลุ่ม เมื่อมีข้อความเข้ามาก็จะส่งเข้าไปในกลุ่ม
ข้อควรระวังคือ
การส่งข้อความจะใช้ Push Quota ดังนั้น ใช้อย่างมีสตินะครับ
และ
คำถามสุดท้าย : ถ้ากลัว push quota หมด ให้ส่งผ่านทาง Line Notify ได้มั้ย?
คำถาม : ได้ !!!!!
ยังไง !!!
ก็คือ ใช้คำสั่งเดิม แต่ต่อท้ายด้วย access token ของ Line Notify (หาต่อเองได้เนอะ)
ก็จะเป็น sub BROKER TOPIC TOKEN (อย่าลืมเคาะช่องว่างด้วย)
ตัวอย่างเช่น sub broker.hivemq.com /gmhome bece813944b58xxxxxxx
ข้อความที่เข้ามาก็จะส่งผ่านทาง Line Notify ทั้งหมด ซึ่งไม่เสีย Push Quota เลย แค่ไม่ Cool เฉยๆ แหละ … นอกนั้นก็ใช้เหมือนกันหมดเลย