รูปแบบที่อุปกรณ์เชื่อมต่อ IoT Hub ใช้คือจะไม่ยอมรับการเชื่อมต่อขาเข้า อุปกรณ์ IoT Hub ไม่เคยทำหน้าที่เป็น 'เซิร์ฟเวอร์' และนี่เป็นส่วนสำคัญของรูปแบบความปลอดภัยใน Azure IoT รูปแบบที่ชัดเจนเกี่ยวกับเรื่องนี้ถูกห่อหุ้มในคลีเมน Vasters' 'บริการช่วยการสื่อสาร'
ดังนั้นอุปกรณ์มักจะ 'ทำการสำรวจ' บริการภายนอกเพื่อส่งข้อมูลหรือรับคำสั่ง API ทำให้ดูเหมือนว่าข้อมูลกำลังถูกส่งไปยังอุปกรณ์ แต่เป็นอุปกรณ์ที่ทำการเชื่อมต่อขาออกเสมอ
ศูนย์กลาง IoT ทำได้สองวิธี:
/devices/{deviceId}/messages/devicebound
โดยการส่งข้อมูลไปยังอุปกรณ์ปลายทาง นี่คือจุดสิ้นสุดการส่งข้อความ AMQP ซึ่งคล้ายกับการสมัครสมาชิกคิวหรือหัวข้อ อุปกรณ์เมื่ออ่านคำสั่งจำเป็นต้องตอบรับหากจำเป็นซึ่งเป็นส่วนหนึ่งของโปรโตคอล AMQP พื้นฐาน ใช้งานได้กับ MQTT และ https เป็นทางเลือกที่ถูกต้อง API จะสรุปทั้งหมดนี้ให้คุณ มีแนวคิดเพิ่มเติมเช่น 'เมธอดโดยตรง' ซึ่งเป็น wrapper API ที่อยู่รอบ ๆ โปรโตคอลข้อความพื้นฐานเดียวกัน
- โดยการใช้อุปกรณ์ฝั่งเซิร์ฟเวอร์คู่ซึ่งเป็นวิธีการเก็บคุณสมบัติในทางตรรกะระหว่างอุปกรณ์และเซิร์ฟเวอร์ คุณตั้งค่าคุณสมบัติบนอุปกรณ์คู่และเมื่ออุปกรณ์ซิงค์คุณสมบัตินั้นจะซิงค์กับอุปกรณ์ นี่คือข้อความน้อยกว่าและสร้างขึ้นบนโปรโตคอลการจัดการอุปกรณ์ LWM2M
จำนวนมาก 'การสำรวจ' การเชื่อมต่อการแบ่งปันการเชื่อมต่อการรับ ฯลฯ ควรได้รับการดูแลเป็นส่วนหนึ่งของโปรโตคอล AMQP (หรือ MQTT) ซึ่งจะรวมอยู่ใน IoT Hub SDK ดังนั้นข้างต้นจะง่ายขึ้นมาก แต่เพื่อย้ำอีกครั้ง IoT Hub ไม่สามารถทำได้และจะไม่ลองส่งข้อมูลไปยังที่อยู่ IP / พอร์ตบนอุปกรณ์ของคุณ