Azure IoT Python: প্রক্সির মাধ্যমে WebSockets-এ MQTT কনফিগার করুন
Azure IoT Python ক্লায়েন্টের সমর্থিত প্রক্সি বিকল্পগুলি কনফিগার করুন এবং সচেতনভাবে WebSockets-এ MQTT বেছে নিন।
যে অ্যাপ্লিকেশন ইতিমধ্যে Azure IoT Python SDK ব্যবহার করছে, সেখানে MQTT ট্রান্সপোর্ট এবং তার প্রক্সি বিকল্পগুলি একসঙ্গে বেছে নিন। এই কনফিগারেশন WebSockets-এ MQTT নির্বাচন করে:
proxy = ProxyOptions(proxy_type='HTTP',
proxy_addr='203.0.113.10', proxy_port=8080)
client = IoTHubDeviceClient.create_from_connection_string(
connection_string, websockets=True, proxy_options=proxy
)
ক্লাসগুলি SDK-এর নথিভুক্ত ইন্টারফেস থেকে আসে। ডিভাইস সংযোগ স্ট্রিংটি অ্যাপ্লিকেশনের গোপন কনফিগারেশনের মাধ্যমে সরবরাহ করুন এবং উদাহরণের প্রক্সি এন্ডপয়েন্ট প্রতিস্থাপন করুন। সর্বজনীনভাবে পৌঁছানো যায় এমন IoT Hub এন্ডপয়েন্টের জন্য যেখানে পাবলিক মধ্যস্থতাকারী অনুমোদিত, HTTP প্রক্সি তালিকা HTTP হোস্ট ও পোর্টের জন্য প্রার্থী দেয়; পরিষেবাটি গন্তব্য রুট অনুমোদন করে কিনা নিশ্চিত করুন। এগুলি SDK-এর স্পষ্ট বিকল্প; ব্রাউজারে কাজ করা প্রক্সি বা সাধারণ অপারেটিং সিস্টেম সেটিং ডিভাইস ক্লায়েন্টের রুট প্রতিষ্ঠা করে না।
নির্বাচিত প্রক্সি ধরনের জন্য ProxyOptions রেফারেন্স দেখুন। এটি HTTP, SOCKS4 এবং SOCKS5 ক্ষেত্রগুলিকে আলাদা করে এবং HTTP-এর সীমাবদ্ধতাসহ ধরন-নির্দিষ্ট ব্যবহারকারীনাম/পাসওয়ার্ড আচরণ নথিভুক্ত করে। ক্ষেত্রের উপস্থিতি প্রতিটি প্রমাণীকরণ প্রক্রিয়ার প্রতিশ্রুতি দেয় না।
প্রক্সি অ্যাকাউন্ট এবং ডিভাইস পরিচয় ভিন্ন ভিন্ন ধাপ অনুমোদন করে। প্রত্যাখ্যাত মধ্যস্থতাকারী বিনিময় ব্রোকার ডিভাইস শংসাপত্র মূল্যায়নের আগেই সংযোগ বন্ধ করতে পারে। WebSockets নির্বাচন করলে প্রক্সির গন্তব্য ও প্রবেশাধিকার সীমাবদ্ধতাও বলবৎ থাকে।
নির্বাচিত ট্রান্সপোর্ট, গন্তব্য এবং প্রথম ব্যর্থ ধাপ লিপিবদ্ধ করুন। SDK ক্লায়েন্ট, প্রক্সি বাস্তবায়ন এবং অনুমোদিত রুটের মধ্যে মিল থাকতে হবে; সফল ব্রাউজার অনুরোধ বা SOCKS সব প্রোটোকল বহন করে এমন সাধারণ দাবি সেই সামঞ্জস্য প্রদান করে না।