สร้าง dashboard บน NETPIE Freeboard เพื่อรับข้อมูลที่ส่งเข้ามา - mrolarik/simple-iot GitHub Wiki
การสร้าง dashboard สามารถอ่านเพิ่มเติมได้ที่บทความ
ตัวอย่าง dashboard ที่ใช้แสดงสถานะของเครื่อง Server

ข้อมูลที่ส่งมาจากโปรแกรม Python
ลักษณะของข้อมูลที่ถูกส่งจากโปรแกรม Python มายังเซิร์ฟเวอร์ของ NETPIE มีลักษณะดังนี้
0,15,3,226,14:39:19 up 17 days-14:08-0 users-load average: 0.00-0.00-0.00
จากลักษณะของข้อมูลข้างต้น ข้อมูลแต่ละชุดได้แยกกันด้วยเครื่องหมายคอมม่า (,) ดังนั้นหากเขียนโปรแกรมภาษา Python เพื่อแยกข้อมูลออกมาใช้งานสามารถทำได้โดย
msg = '0,15,3,226,14:39:19 up 17 days-14:08-0 users-load average: 0.00-0.00-0.00'
msg = msg.split(',')
print(msg)
จากคำสั่งข้างต้น ข้อมูลจะถูกเก็บลงไปใน list ผลลัพธ์ที่ได้แบ่งเป็น 5 ค่าข้อมูล (Value) คือ
['0', '15', '3', '226', '14:39:19 up 17 days-14:08-0 users-load average: 0.00-0.00-0.00']
โดย
- msg[0] คือ
cpu usage - msg[1] คือ
total memomy - msg[2] คือ
used memory - msg[3] คือ
running process - msg[4] คือ
uptime
การสร้าง datasource ใน NETPIE
ตัวอย่างการสร้าง dashboard อ่านเพิ่มเติมได้จากบทความ การสร้าง dashboard เพื่อแสดงข้อมูล
ดังนั้น จากตัวอย่างให้เพิ่ม Widget และเลือก Type เป็น gauge ลงไปใน Freeboard และในส่วนของ Value ให้กำหนดตัวแปรดังนี้
cpu usageให้กำหนดเป็นdatasources["RPi"]["/olarikRPi/gearname/smartFarm"].split(',')[0]total memoryให้กำหนดเป็นdatasources["RPi"]["/olarikRPi/gearname/smartFarm"].split(',')[1]used memoryให้กำหนดเป็นdatasources["RPi"]["/olarikRPi/gearname/smartFarm"].split(',')[2]running processให้กำหนดเป็นdatasources["RPi"]["/olarikRPi/gearname/smartFarm"].split(',')[3]uptimeให้กำหนดเป็นdatasources["RPi"]["/olarikRPi/gearname/smartFarm"].split(',')[4].split(' ')[2]
และเพิ่มเติมในส่วนของ uptime เนื่องจากข้อมูลที่ส่งไปยัง NETPIE เป็นชุดข้อมูล เราสามารถที่จะแสดงในรูปแบบของ HTML ได้ดังนี้
- ในส่วนของ
uptimeให้เลือก Widget เป็นHTMLและให้กำหนดเป็นdatasources["RPi"]["/olarikRPi/gearname/smartFarm"].split(',')[4]
โดยที่ข้อความ datasources["RPi"] จะเปลี่ยนไปตามที่ได้กำหนดไว้ในขั้นตอนการสร้าง application และการกำหนดข้อความ ["/olarikRPi/gearname/smartFarm"] จะเปลี่ยนแปลงตามที่กำหนดในโปรแกรม Python