Paho MQTT Python: കണക്ട് ചെയ്യുന്നതിന് മുമ്പ് proxy_set വിളിക്കുക
MQTT കണക്ഷനായി Paho യുടെ proxy_set API ഉപയോഗിക്കുകയും പ്രോക്സി ക്രെഡൻഷ്യലുകൾ ബ്രോക്കർ ഓതന്റിക്കേഷനിൽ നിന്ന് വേർതിരിക്കുകയും ചെയ്യുക.
Paho യുടെ Python ക്ലയന്റിന് രേഖപ്പെടുത്തിയ proxy_set രീതിയുണ്ട്. MQTT ബ്രോക്കറിലേക്ക് കണക്ട് ചെയ്യുന്നതിന് മുമ്പ് ആ ക്ലയന്റ് കോൺഫിഗർ ചെയ്യുക:
client.proxy_set(proxy_type=socks.SOCKS5,
proxy_addr='203.0.113.10',
proxy_port=1080)ഒരു അനുയോജ്യമായ Paho ക്ലയന്റും ആവശ്യമായ SOCKS പിന്തുണയും ഇതിനകം ലഭ്യമാണെന്ന് ഇത് കരുതുന്നു. എൻഡ്പോയിന്റ് ഉദാഹരണത്തിനുള്ളതാണ്. അനുവദനീയമായ പൊതു-പ്രോക്സി റൂട്ടിൽ പൊതുവെ ലഭ്യമായ ബ്രോക്കറിനായി, SOCKS5 പ്രോക്സി പട്ടിക ഹോസ്റ്റ്, പോർട്ട് സ്ഥാനാർത്ഥികൾ നൽകുന്നു; യഥാർത്ഥ ബ്രോക്കർ ലക്ഷ്യസ്ഥാനം നോഡ് അനുവദിക്കുന്നുവെന്ന് ഉറപ്പാക്കുക. പിന്തുണയ്ക്കുന്ന പ്രോക്സി തരങ്ങൾ ഈ രീതി രേഖപ്പെടുത്തുന്നു, പ്രോക്സിംഗ് PySocks വഴി കൈമാറുന്നു.
ബ്രോക്കറിന് ഇപ്പോഴും സ്വന്തം ഹോസ്റ്റ്നെയിം, പോർട്ട്, TLS ആവശ്യകതകൾ, MQTT ഓതന്റിക്കേഷൻ എന്നിവയുണ്ട്. ഒരു പ്രോക്സി അക്കൗണ്ട് ബ്രോക്കറിലേക്ക് അയയ്ക്കുന്ന ഉപയോക്തൃനാമമായി മാറുന്നില്ല. അതുപോലെ, ബ്രോക്കർ ക്രെഡൻഷ്യലുകൾ സജ്ജീകരിക്കുന്നത് പ്രോക്സി ചാട്ടം ഓതന്റിക്കേറ്റ് ചെയ്യുന്നില്ല.
കണക്ഷൻ സെറ്റപ്പ് പരാജയപ്പെടുമ്പോൾ കണക്ഷൻ ട്രാൻസ്പോർട്ടും പ്രോക്സിയുടെ അനുവദനീയമായ ലക്ഷ്യസ്ഥാനങ്ങളും പരിശോധിക്കുക. വെബ് ബ്രൗസിംഗ് വഹിക്കുന്ന ഒരു പ്രോക്സി ബ്രോക്കറിന്റെ TCP പോർട്ട് സ്വയമേവ അനുവദിക്കുന്നില്ല.
കണക്ഷൻ സെറ്റപ്പിന് ശേഷം Paho API ആവശ്യപ്പെടുന്നതുപോലെ MQTT നെറ്റ്വർക്ക് ലൂപ്പ് പ്രവർത്തിപ്പിച്ചു കൊണ്ടിരിക്കുക. പ്രോക്സി റൂട്ട് സ്ഥാപിക്കുന്നത് ഒരു ഘട്ടമാണ്; അത് സ്വയം MQTT keepalive, കോൾബാക്കുകൾ, അംഗീകാരങ്ങൾ എന്നിവ പ്രവർത്തിപ്പിക്കുന്നില്ല.