You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/th/2-farm/lessons/5-migrate-application-to-th.../assignment.md

6.8 KiB

เพิ่มการควบคุมรีเลย์แบบแมนนวล

คำแนะนำ

โค้ดแบบ Serverless สามารถถูกเรียกใช้งานได้จากหลายสิ่ง เช่น การร้องขอ HTTP คุณสามารถใช้ HTTP triggers เพื่อเพิ่มการควบคุมรีเลย์แบบแมนนวล ทำให้ผู้ใช้งานสามารถเปิดหรือปิดรีเลย์ผ่านการร้องขอจากเว็บได้

สำหรับงานนี้ คุณต้องเพิ่ม HTTP triggers สองตัวใน Functions App ของคุณเพื่อเปิดและปิดรีเลย์ โดยใช้สิ่งที่คุณได้เรียนรู้จากบทเรียนนี้ในการส่งคำสั่งไปยังอุปกรณ์

คำแนะนำบางประการ:

  • คุณสามารถเพิ่ม HTTP trigger ใน Functions App ที่มีอยู่แล้วด้วยคำสั่งต่อไปนี้:

    func new --name <trigger name> --template "HTTP trigger"
    

    แทนที่ <trigger name> ด้วยชื่อสำหรับ HTTP trigger ของคุณ ใช้ชื่อเช่น relay_on และ relay_off

  • HTTP triggers สามารถมีการควบคุมการเข้าถึงได้ โดยค่าเริ่มต้นจะต้องมี API key เฉพาะฟังก์ชันที่ส่งมาพร้อม URL เพื่อเรียกใช้งาน สำหรับงานนี้ คุณสามารถลบข้อจำกัดนี้ออกเพื่อให้ทุกคนสามารถเรียกใช้งานฟังก์ชันได้ โดยการอัปเดตการตั้งค่า authLevel ในไฟล์ function.json สำหรับ HTTP triggers เป็นค่าต่อไปนี้:

    "authLevel": "anonymous"
    

    💁 คุณสามารถอ่านเพิ่มเติมเกี่ยวกับการควบคุมการเข้าถึงใน เอกสารเกี่ยวกับ Function access keys

  • HTTP triggers รองรับการร้องขอแบบ GET และ POST โดยค่าเริ่มต้น ซึ่งหมายความว่าคุณสามารถเรียกใช้งานผ่านเว็บเบราว์เซอร์ได้ - เว็บเบราว์เซอร์จะทำการร้องขอแบบ GET

    เมื่อคุณเรียกใช้งาน Functions App ในเครื่อง คุณจะเห็น URL ของ trigger:

    Functions:
    
        relay_off: [GET,POST] http://localhost:7071/api/relay_off
    
        relay_on: [GET,POST] http://localhost:7071/api/relay_on
    
        iot-hub-trigger: eventHubTrigger
    

    คัดลอก URL และวางลงในเบราว์เซอร์ของคุณแล้วกด return หรือ Ctrl+click (Cmd+click บน macOS) ลิงก์ในหน้าต่าง terminal ใน VS Code เพื่อเปิดในเบราว์เซอร์เริ่มต้นของคุณ การดำเนินการนี้จะเรียกใช้งาน trigger

    💁 สังเกตว่า URL มี /api อยู่ในนั้น - HTTP triggers จะอยู่ใน subdomain api โดยค่าเริ่มต้น

  • เมื่อคุณ deploy Functions App URL ของ HTTP trigger จะเป็น:

    https://<functions app name>.azurewebsites.net/api/<trigger name>

    โดยที่ <functions app name> คือชื่อของ Functions App ของคุณ และ <trigger name> คือชื่อของ trigger ของคุณ

เกณฑ์การประเมิน

เกณฑ์ ดีเยี่ยม พอใช้ ต้องปรับปรุง
สร้าง HTTP triggers สร้าง triggers สองตัวเพื่อเปิดและปิดรีเลย์ พร้อมชื่อที่เหมาะสม สร้าง trigger หนึ่งตัวพร้อมชื่อที่เหมาะสม ไม่สามารถสร้าง triggers ได้
ควบคุมรีเลย์จาก HTTP triggers สามารถเชื่อมต่อ triggers ทั้งสองตัวกับ IoT Hub และควบคุมรีเลย์ได้อย่างเหมาะสม สามารถเชื่อมต่อ trigger หนึ่งตัวกับ IoT Hub และควบคุมรีเลย์ได้อย่างเหมาะสม ไม่สามารถเชื่อมต่อ triggers กับ IoT Hub ได้

ข้อจำกัดความรับผิดชอบ:
เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษา AI Co-op Translator แม้ว่าเราจะพยายามให้การแปลมีความถูกต้อง แต่โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาดั้งเดิมควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ ขอแนะนำให้ใช้บริการแปลภาษามืออาชีพ เราไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดจากการใช้การแปลนี้