NETPIE : เริ่มต้นใช้งาน

NETPIE เป็น Paas (Platform as a Service) ทำหน้าที่เป็นสื่อกลาง ที่ทำให้สิ่งต่างๆเชื่อมโยงกันได้ผ่านอินเตอร์เน็ต (IoT) พัฒนาภายใต้การสนับสนุนของ Nectec ใช้งานได้ 100 Credit ฟรี (ประมาณว่า สร้างได้ 100 ช่องทาง) สำหรับแต่ละ Account

เอาเป็นว่า “ฟรี”

อธิบายแบบเร็วๆ คร่าวๆ อย่างไม่เป็นทางการคือ ถ้าที่บ้านเรามีพวก Censor ซึ่งวัดค่าต่างๆ เช่น อุณหภูมิ แล้วมีความสามารถในการเกาะ WiFi ได้ โดยที่บ้านใช้อินเตอร์เน็ตแบบ ADSL ปัญหาคือ เราจะเข้าไปเอาข้อมูลเจ้า Censor นี้ได้อย่างไร ? ในเมื่อ ADSL ก็ไม่ได้ Fix IP หรือ จะใช้ Dynamic DNS (DDNS) ก็มีค่าใช้จ่าย เป็นต้น

หรือ บางคนก็อาจจะคิดถึงวิธีไป Host เครื่องคอมพิวเตอร์ไว้บน Internet หรือจะไปสร้างบน Cloud แล้วอาจจะสร้าง Web Application เพื่อให้ Censor ไปเรียกแล้วบันทึกค่าลงในฐานข้อมูล อะไรทำนองนั้น

ที่กล่าวมา ก็ต้องมีค่าใช้จ่าย หรือ ต้องลงแรงในการสร้างตัวกลางเหล่านั้น

NETPIE ก็ทำหน้าที่ เป็น Broker หรือตัวกลาง โดย Censor ทำหน้าที่ติดต่อผ่าน Internet มาแปะค่าเอาไว้ใน NETPIE แล้วจึงค่อยนำไปใช้งานต่อได้ เพียงแค่ สมัครใช้งาน แล้วก็ไปสร้างช่องทางให้ Censor มา Update ข้อมูล

ดังสโลแกนของ NETPIE ว่า NETPIE … where things chat.

เริ่มกันเลย

วิธีการสมัคร

ไปที่ https://netpie.io/sign_up แล้วก็กรอกข้อมูล หลังจากนั้น NETPIE ก็จะส่ง SMS แจ้ง One Time Password มาให้ เมื่อ Login ครั้งแรก NETPIE จะให้ทำการตั้งรหัสผ่านใหม่

ต่อไป สร้าง Application

  1. ไปที่เมนู Resources > Applications
  2. ต่อไปเป็นสร้าง Application (ในที่นี้คือ kx01web)
    คลิกปุ่ม +
    ตั้งชื่อ แล้วกดปุ่ม Create
  3. ใน Application ที่สร้าง คลิกเครื่องหมาย +
    ใส่ชื่ออุปกรณ์ (ในที่นี้คือ web01) เลือกชนิดเป็น Session Key
    แล้วคลิก Create
  4. ต่อไปเป็นการเอา REST API Auth ไปใช้งาน (ในที่นี้คือ 6JhowZyvcRsyHUg:EclJZt2C0lKXXXXXXXXX)
    โดยคลิกที่ Application KEY ที่สร้างขึ้น
    แล้วคลิกรูป ลูกตา หลังบรรทัด REST API Auth แล้ว Copy ค่าไปใช้งาน (ซึ่งจะเป็นคู่ของ Key:Secret)
  5. ในที่นี้ จะลองให้ เครื่องคอมพิวเตอร์ซึ่งเป็น Ubuntu เก็บข้อมูล memory แล้วส่งไปเก็บไว้บน NETPIE ผ่าน cURL
    รูปแบบประมาณนี้

    curl -X PUT "https://api.netpie.io/topic/kx01web/web01" -d "123456" -u 6JhowZyvcRsyHUg:EclJZt2C0lKXXXXXXXXX

    โดยในตัวอย่างนี้
    Application ID คือ kx0web
    Censor คือ web01
    ค่าที่จะส่งไปคือ 123456
    และ REST API Auth คือ 6JhowZyvcRsyHUg:EclJZt2C0lKXXXXXXXXX

  6. หากผลการทำงานออกมาเป็น
     {"code":200,"message":"Success"}

    ก็แสดงว่า สามารถส่งไปเขียนค่าได้

วิธีการดูผลการทำงาน

  1. คลิกที่ Resources > Freeboards
  2. คลิกเครื่องหมาย +
    ตั้งชื่อที่ต้องการ (ในที่นี้คือ kx01Freeboard)
    แล้วคลิก Create
  3. ใน Freeboard ที่สร้างขึ้น คลิก Add ในส่วนของ Data Sources
    เลือกชนิดเป็น NETPIE Microgear
  4. จากนั้นกรอกข้อมูล
    Name ที่ต้องการ
    App ID ในที่นี้คือ kx01web
    Key และ Secret ที่ได้มาจากก่อนหน้านี้
    แล้วคลิก Save
  5. ต่อไป คลิก Add Pane

    คลิกเครื่องหมาย +

    เลือก Type เป็น Text
    ตั้ง Title เป็น Memory
    แล้วคลิก DATASOURCE

    เลือก Memory
    เลือก /kx01web/web01
    แล้วคลิก Save
  6. ก็จะเห็นผลลัพธ์ดังนี้
  7. หรือจะเรียกข้อมูลไปใช้งานผ่านทาง cURL ก็สามารถทำได้ดังนี้
     curl -X GET "https://api.netpie.io/topic/kx01web/web01" -u 6JhowZyvcRsyHUg:EclJZt2C0lKXXXXXXX

    ก็จะได้ผลดังนี้

     [{"topic":"/kx01web/web01","payload":"123456","lastUpdated":1488297743,"retain":true}]

    เป็นต้น

คร่าวๆ ก็ดังนี้