Aws-iot-device-sdk-python-v2: рд╕рдВрджреЗрд╢ = 'рдХрдиреЗрдХреНрд╢рди рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рдмрдВрдж рд╣реЛ рдЧрдпрд╛ рдерд╛ред', рдХреЛрдб = 5134 рдХреНрд╖реЗрддреНрд░ us-west-1

рдХреЛ рдирд┐рд░реНрдорд┐рдд 1 рдлрд╝рд░ре░ 2021  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: aws/aws-iot-device-sdk-python-v2

рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдпрд╣ рдПрдХ рдмрдЧ рд╣реИ, рдиреАрдЪреЗ [ ] рдХреЛ [x] рдореЗрдВ рдмрджрд▓рдХрд░ рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдВ:

рдЬреНрдЮрд╛рдд рдореБрджреНрджрд╛

  • [рдПрдХреНрд╕] рдореИрдВ рдПрдЯреАрдПрд╕ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ: рдПрдВрдбрдкреЙрдЗрдВрдЯ <prefix>-ats.iot.<region>.amazonaws.com . рдЬреИрд╕рд╛ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП
    xxxxxxxxx-ats.iot.us-west-1.amazonaws.com

рдмрдЧ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВ
"рдЖрд░рдВрдн рдХрд░рдирд╛ - рдФрд░ рд░рдЬрд┐рд╕реНрдЯрд░ рдбрд┐рд╡рд╛рдЗрд╕" рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓рд╛ рдЧрдпрд╛
рдкреНрд░рдорд╛рдг рдкрддреНрд░, рдирд┐рдЬреА рдХреБрдВрдЬреА, рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдФрд░ рд╕реАрдП рдорд┐рд▓ рдЧрдпрд╛

рдПрд╕рдбреАрдХреЗ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛
2 (рдкрд╛рдпрдерди 3)

рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдо/рдУрдПрд╕/рдбрд┐рд╡рд╛рдЗрд╕
рдЖрдк рдПрд╕рдбреАрдХреЗ рдХрд┐рд╕ рдкрд░ рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВ?
рдЙрдмрдВрдЯреВ

рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдордирд╛рдпрд╛ рд╡реНрдпрд╡рд╣рд╛рд░)
рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо (рдХреГрдкрдпрд╛ рдХреЛрдб рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ)
рд╕рд╛рдзрд╛рд░рдг рдкрдм/рдЙрдк рдирдореВрдирд╛
python3 pubsub.py --endpoint xxxxxxxxxx-ats.iot.us-west-1.amazonaws.com --root-ca root-CA.crt --cert zztest.cert.pem --key zztest.private.key -- рд╢рдмреНрджрд╢рдГ рдбрд┐рдмрдЧ

 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007fc75343рдП700] [рдЯрд╛рд╕реНрдХ-рд╢реЗрдбреНрдпреВрд▓рд░] - рдЖрдИрдбреА = 0x7fc744013750: рддрддреНрдХрд╛рд▓ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рд╢реЗрдбреНрдпреВрд▓рд┐рдВрдЧ рд╕реЙрдХреЗрдЯ_рд╣реИрдВрдбрд▓рд░_рдХреНрд▓реЛрдЬрд╝ рдХрд╛рд░реНрдп
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007рдПрдлрд╕реА75343рдП700] [рдЯрд╛рд╕реНрдХ-рд╢реЗрдбреНрдпреВрд▓рд░] - рдЖрдИрдбреА=0x7fc7440021b0: рдХреЗ рд╕рд╛рде epoll_event_loop_unsubscribe_cleanup рдХрд╛рд░реНрдп рдЪрд▓рд╛рдирд╛рд╕реНрдерд┐рддрд┐
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007fc75343рдП700] [рдЯрд╛рд╕реНрдХ-рд╢реЗрдбреНрдпреВрд▓рд░] - рдЖрдИрдбреА=0x7fc744013750: рдХреЗ рд╕рд╛рде рд╕реЙрдХреЗрдЯ_рд╣реИрдВрдбрд▓рд░_рдХреНрд▓реЛрдЬрд╝ рдХрд╛рд░реНрдп рдЪрд▓рд╛рдирд╛рд╕реНрдерд┐рддрд┐
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007рдПрдлрд╕реА75343рдП700] [рдЪреИрдирд▓] - рдЖрдИрдбреА=0x7fc744002770: рд╣реИрдВрдбрд▓рд░ 0x7fc7440136b0 рд▓рд┐рдЦрдиреЗ рдореЗрдВ рд╢рдЯрдбрд╛рдЙрди рдкреВрд░рд╛ рд╣реБрдЖред
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007fc75343a700] [рдЯрд╛рд╕реНрдХ-рд╢реЗрдбреНрдпреВрд▓рд░] - рдЖрдИрдбреА = 0x7fc744002798: рддрддреНрдХрд╛рд▓ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рд╢реЗрдбреНрдпреВрд▓рд┐рдВрдЧ (рд╢реВрдиреНрдп) рдХрд╛рд░реНрдп
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007fc75343рдП700] [рдЯрд╛рд╕реНрдХ-рд╢реЗрдбреНрдпреВрд▓рд░] - рдЖрдИрдбреА=0x7fc744002798: рд░рдирд┐рдВрдЧ (рдирд▓) рдЯрд╛рд╕реНрдХ рдХреЗ рд╕рд╛рдерд╕реНрдерд┐рддрд┐
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007рдПрдлрд╕реА75343рдП700] [рдЪреИрдирд▓] - рдЖрдИрдбреА=0x7fc744002770: рд╢рдЯрдбрд╛рдЙрди рдХреЗ рджреМрд░рд╛рди, рдХрд╛рд░реНрдп рд░рджреНрдж рдХрд░рдирд╛ 0x7fc744013920
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007fc75343рдП700] [рдЯрд╛рд╕реНрдХ-рд╢реЗрдбреНрдпреВрд▓рд░] - рдЖрдИрдбреА=0x7fc744013920: рдХреЗ рд╕рд╛рде tls_timeout рдХрд╛рд░реНрдп рдЪрд▓рд╛рдирд╛рд╕реНрдерд┐рддрд┐
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007рдПрдлрд╕реА75343рдП700] [рдЪреИрдирд▓] - рдЖрдИрдбреА=0x7fc744002770: рд╢рдЯрдбрд╛рдЙрди рдХреЗ рджреМрд░рд╛рди, рдХрд╛рд░реНрдп рд░рджреНрдж рдХрд░рдирд╛ 0x7fc74402de40
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007fc75343рдП700] [рдЯрд╛рд╕реНрдХ-рд╢реЗрдбреНрдпреВрд▓рд░] - рдЖрдИрдбреА=0x7fc74402de40: рдХреЗ рд╕рд╛рде mqtt_connack_timeout рдХрд╛рд░реНрдп рдЪрд▓рд╛рдирд╛рд╕реНрдерд┐рддрд┐
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007fc75343рдП700] [рдЪреИрдирд▓-рдмреВрдЯрд╕реНрдЯреНрд░реИрдк] - рдЖрдИрдбреА = 0x10f7550: рдЪреИрдирд▓ 0x7fc744002770 рддреНрд░реБрдЯрд┐ 0 рдХреЗ рд╕рд╛рде рдмрдВрджред
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007fc75343a700] [рдЪреИрдирд▓] - рдЖрдИрдбреА = 0x7fc744002770: рдЪреИрдирд▓ рдХреЛ рдирд╖реНрдЯ рдХрд░рдирд╛ред
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007fc75343a700] [рдЪреИрдирд▓-рдмреВрдЯрд╕реНрдЯреНрд░реИрдк] - рдЖрдИрдбреА=0x10f7550: рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рд╕рдВрджрд░реНрдн рдЬрд╛рд░реА рдХрд░рдирд╛
 рдЯреНрд░реЗрд╕рдмреИрдХ (рд╕рдмрд╕реЗ рд╣рд╛рд▓рд┐рдпрд╛ рдХреЙрд▓ рдЕрдВрддрд┐рдо):
 рдлрд╝рд╛рдЗрд▓ "pubsub.py", рд▓рд╛рдЗрди 130, in
 Connect_future.result ()
 рдлрд╝рд╛рдЗрд▓ "/usr/lib/python3.6/concurrent/futures/_base.py", рдкрдВрдХреНрддрд┐ 432, рдкрд░рд┐рдгрд╛рдо рдореЗрдВ
 рд╕реНрд╡рдпрдВ рд▓реМрдЯреЗрдВ .__get_result ()
 рдлрд╝рд╛рдЗрд▓ "/usr/lib/python3.6/concurrent/futures/_base.py", рд▓рд╛рдЗрди 384, __get_result рдореЗрдВ
 рд╕реНрд╡рдпрдВ рдХреЛ рдКрдкрд░ рдЙрдард╛рдПрдВред_рдЕрдкрд╡рд╛рдж
 awscrt.exceptions.AwsCrtError: AwsCrtError (рдирд╛рдо = 'AWS_ERROR_MQTT_UNEXPECTED_HANGUP', рд╕рдВрджреЗрд╢ = 'рдХрдиреЗрдХреНрд╢рди рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рдмрдВрдж рд╣реЛ рдЧрдпрд╛ рдерд╛ред', рдХреЛрдб = 5134)
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007рдПрдлрд╕реА75814рдмреА740] [рдПрдордХреНрдпреВрдЯреА-рдХреНрд▓рд╛рдЗрдВрдЯ] - рдЖрдИрдбреА=0x12fbb80: рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
 [рддреНрд░реБрдЯрд┐] [2021-02-01T06:03:41Z] [00007fc75814b740] [mqtt-client] - id=0x12fbb80: рдХрдиреЗрдХреНрд╢рди рдЦреБрд▓рд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдмрдВрдж рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007рдПрдлрд╕реА75814рдмреА740] [рдПрдордХреНрдпреВрдЯреА-рдХреНрд▓рд╛рдЗрдВрдЯ] - рдЖрдИрдбреА=0x12fbb80: рдХрдиреЗрдХреНрд╢рди рдкрд░ рдЕрдВрддрд┐рдо рдкреБрдирд░реНрдЧрдгрдирд╛ рдЬрд╛рд░реА рдХреА рдЧрдИ рд╣реИ, рдХрдиреЗрдХреНрд╢рди рдХреЛ рдирд╖реНрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВред
 [рдбреАрдмрдЧ] [2021-02-01 рдЯреА06:03:41рдЬреЗрдб] [00007рдПрдлрд╕реА75814рдмреА740] [рдПрдордХреНрдпреВрдЯреА-рдХреНрд▓рд╛рдЗрдВрдЯ] - рдЖрдИрдбреА=0x12fbb80: рдХрдиреЗрдХреНрд╢рди рдХреЛ рдирд╖реНрдЯ рдХрд░рдирд╛

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░
рдЖрдк рдЬреЛ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд░рд╣реЗ рдереЗ рдЙрд╕рдХрд╛ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдгред
рд╕рдВрджреЗрд╢ рд▓рдЧрд╛рддрд╛рд░ рдкреНрд░рдХрд╛рд╢рд┐рдд

рд▓реЙрдЧ/рдЖрдЙрдЯрдкреБрдЯ
рдпрджрд┐ рд▓рд╛рдЧреВ рд╣реЛ, рддреЛ рд▓реЙрдЧ рдпрд╛ рддреНрд░реБрдЯрд┐ рдЖрдЙрдЯрдкреБрдЯ рдЬреЛрдбрд╝реЗрдВред

рдЕрдкрдиреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рд╛рдл рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦреЗрдВ

awscrt.io.init_logging(awscrt.io.LogLevel.Warn, 'stderr')

рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрджрд░реНрдн
рдпрд╣рд╛рдВ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЕрдиреНрдп рд╕рдВрджрд░реНрдн рдЬреЛрдбрд╝реЗрдВред

рдпрд╣ рдереЛрдбрд╝рд╛ рдореВрд░реНрдЦрддрд╛рдкреВрд░реНрдг рдФрд░ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд▓рдЧрддрд╛ рд╣реИ ...
image
рдкреНрд░рдмрдВрдзрди рдХрдВрд╕реЛрд▓ рдореЗрдВ IoT Core рдирд╛рдордХ 2 рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬрд╝реЗрдВ рдХреНрдпреЛрдВ рд╣реИрдВ?
рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ us-west-1 (N. California) рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдБ ...
рдпрд╣ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд▓рд┐рдП IoT Core рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ - рдлрд┐рд░ рдпрджрд┐ рдореИрдВ рджреВрд╕рд░реЗ рдЖрдЗрдХрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╣реИ, рдХреНрдпрд╛ рдЖрдк рд╕рдордЭрд╛ рд╕рдХрддреЗ рд╣реИрдВ?
image

рдФрд░ рдпрд╣рд╛рдБ рд╡рд╣реА рд╣реИ рдЬреЛ рд╣рдо рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ-рдкрд╢реНрдЪрд┐рдо-1
image
рдпрд╛ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ? рдХреНрдпрд╛ рдпрд╣ рдореВрд▓ рд╕рдорд╕реНрдпрд╛ рд╣реИ ... рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ ...: рдкреА

closed-for-staleness guidance

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореИрдВ рдЕрднреА рдмрд╣реБрдд рдЧреВрдВрдЧрд╛ рдорд╣рд╕реВрд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдореЗрд░реЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐ рдпрд╣ рдереА рдХрд┐ рдореИрдВрдиреЗ IoT рдХрдВрд╕реЛрд▓ рдореЗрдВ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреЛ рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рдпрд╣ рдХреБрдЫ рдмреЗрд╡рдХреВрдлреА рд╣реИ рд▓реЗрдХрд┐рди рджреВрд╕рд░реЛрдВ рдХреА рдорджрдж рдХрд░ рд╕рдХрддреА рд╣реИ

рд╕рднреА 7 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЖрдк рдХрд┐рд╕ рдкрд╛рдпрдерди 3 рдФрд░ рдЙрдмрдВрдЯреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? IAM рдиреАрддрд┐ рдХреЗ рд▓рд┐рдП рдЖрдк рдХрд┐рди рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдкрдХреА рдиреАрддрд┐ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП AWSIoTFullAccess рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред рдмрд╕ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рддрдХ рд╕реАрдорд┐рдд рд░рдЦрдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдЬрд┐рдирдХреА рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╛рдж рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

AWSIoTFрдкреВрд░реНрдг рдПрдХреНрд╕реЗрд╕:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:*"
            ],
            "Resource": "*"
        }
    ]
}

рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдП рдЖрдкрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдкрд╛рд╕ url рдореЗрдВ iot рд╣реИ рдЬрдмрдХрд┐ рджреВрд╕рд░реЗ рдХреЗ рдкрд╛рд╕ iotv2 рд╣реИред рд╡рд╣ рдХреМрди рд╕рд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ?

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж jmklix.
рдЖрдкрдиреЗ рдЬреЛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рд╣реИ рд╡рд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ MQTT рдХреЗ рд▓рд┐рдП рд╣реИ?
рдореБрдЭреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЗрдмрд╕реЛрдХреЗрдЯ рдорд┐рд▓реЗ рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ .aws рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдХреЗ рд╕рд╛рде рдЬреЛ рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИред
рдХреНрдпрд╛ websockets рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ (xxxx.pem xxx.private.key xxx.public.key) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдорд╛рдгрд┐рдд рдФрд░ рдЕрдзрд┐рдХреГрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ mqtt рдЦрдкрдд рдХрд░рддрд╛ рд╣реИ?

рд╣рд╛рдБ рдореИрдВрдиреЗ url iot/iot2 рдкрд░ рдкрдХрдбрд╝ рд▓рд┐рдпрд╛ ... рдХреНрдпрд╛ рдХреБрдЫ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИрдВ рдЬреЛ рджреЛ рдЖрдИрдУрдЯреА рдХреЛрд░ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдмрддрд╛рддреЗ рд╣реИрдВ?
рд╡рд╣рд╛рдБ рднреА 2 рдХреНрд▓рд╛рдЗрдВрдЯ рдЕрдЬрдЧрд░ sdks afaik рд╣реИрдВ - рдПрдХ рдЕрдЬрдЧрд░ 2.7 рдХреЗ рд▓рд┐рдП рд╣реИ рджреВрд╕рд░рд╛ рдЕрдЬрдЧрд░ 3 рдХреЗ рд▓рд┐рдП рд╣реИ, рдХреНрдпрд╛ рдЕрдзрд┐рдХ рдЕрдВрддрд░ рд╣реИрдВ? рдХреНрдпрд╛ рдЙрдиреНрд╣реЗрдВ рдЖрдИрдУрдЯреА рдФрд░ рдЖрдИрдУрдЯреА2 рдХреЛрд░ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╕рдХрд░ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ? рдХреНрдпрд╛ рд╡реЗ рдХреНрд░реЙрд╕ рдпрд╛ рдмреИрдХ рд╕рдВрдЧрдд рд╣реИрдВ? рдХреНрдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИ?

рд╣рд╛рдБ, рдпрд╣ MQTT рдХреЗ рд▓рд┐рдП рд╣реИред рдирд╣реАрдВ, рдЖрдк рд╡реЗрдм-рд╕реЙрдХреЗрдЯ рдХреЗ рд╕рд╛рде рдкреНрд░рдорд╛рдгрд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рдЖрдк IoT things рдХреЗ рд▓рд┐рдП рдиреАрддрд┐ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ AWS рдХрдВрд╕реЛрд▓ рдкрд░ рдмрдирд╛рдИ рдЧрдИ рд╣реИрдВред thing рдЪреБрдиреЗрдВ рдФрд░ рд╕рдм-рд╕рд╛рдЗрдб рдмрд╛рд░ рдкрд░ рд╕реБрд░рдХреНрд╖рд╛ рдЪреБрдиреЗрдВред рд╡рд╣рд╛рдВ рдЖрдкрдХреЛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЖрдк рдЙрд╕ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗред рдПрдХ рдмрд╛рд░ рдпрд╣ рд╕рдм-рд╕рд╛рдЗрдб рдмрд╛рд░ рдкрд░ рдУрдкрди рд╕реЗрд▓реЗрдХреНрдЯ рдкреЙрд▓рд┐рд╕реА рд╣реИред рдлрд┐рд░ рдЙрд╕ рдиреАрддрд┐ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ рдЕрдВрдд рдореЗрдВ Edit policy document рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдкрд╣рд▓реЗ рд╕реВрдЪреАрдмрджреНрдз AWSioTFullAccess рдХреЛ рдкреЗрд╕реНрдЯ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдиреАрддрд┐ v2 sdk рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

iot url рд╡рд╣ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ iotv2 рдЕрдм рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╢реАрдШреНрд░ рд╣реА рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЕрдЬрдЧрд░ рдФрд░ рдЖрдИрдУрдЯреА рдПрд╕рдбреАрдХреЗ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИрдВ рдФрд░ рдЙрдирдХрд╛ рдХреЛрдИ рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИред рдЖрдИрдУрдЯреА рд╡реА1 рдЕрдЬрдЧрд░ 2 рдФрд░ 3 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдЬрдмрдХрд┐ рдЖрдИрдУрдЯреА рд╡реА2 рдХреЗрд╡рд▓ рдЕрдЬрдЧрд░ 3 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЖрдИрдУрдЯреА рдПрд╕рдбреАрдХреЗ рдХреНрд░реЙрд╕ рдпрд╛ рдмреИрдХ рд╕рдВрдЧрдд рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рд╡реА2 рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдкреНрд░рд▓реЗрдЦрди рдпрд╣рд╛рдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдореИрдВрдиреЗ рдКрдкрд░ рд╢рд╛рдорд┐рд▓ рдиреАрддрд┐ @jmklix рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдПрдХ рдирдпрд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдмрдирд╛рдпрд╛, рдЗрд╕реЗ IoT рдерд┐рдВрдЧ рдФрд░ рдиреАрддрд┐ рд╕реЗ рдЬреЛрдбрд╝рд╛ рдФрд░ .pem, рдирд┐рдЬреА рдХреБрдВрдЬреА рдФрд░ рд░реВрдЯ-рд╕реАрдП рдХреЛ рдЗрд╕ рддрд░рд╣ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛:

python3 shadow.py --endpoint xxxxxxxxxx-ats.iot.us-east-2.amazonaws.com --root-ca root-CA.crt --cert 726290b105-certificate.pem.crt --key 726290b105-private.pem.key --thing-name MyThingName

Shadow.py рдЙрджрд╛рд╣рд░рдг рдХрд╣рддрд╛ рд╣реИ рдХрд┐ --cert .pem рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ 726290b105-certificate.pem рдХреЗ рд╕рд╛рде рднреА рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛

pubsub.py рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рднреА рдпрд╣реА рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИред

рдореИрдВ рдкрд╛рдпрдерди 3 рдХреЗ рд╕рд╛рде рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдкреАрдИрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рд╕реНрд░реЛрдд рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред

рд╢реИрдбреЛ.py рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рддреНрд░реБрдЯрд┐ connected_future.result() рдореЗрдВ рд╣реЛрддреА рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдШрдЯрдХ рд╣реИ рдЬреЛ ipc_greengrass.py рдирдореВрдиреЗ рдХреЗ рд╕рдорд╛рди MQTT рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореЗрд░рд╛ рд╕рдВрджреЗрд╣ рдпрд╣ рд╣реИ рдХрд┐ рдХреБрдВрдЬреА, рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдФрд░ --rood-ca рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╕рдордп рдореИрдВ рдХреБрдЫ рдЧрд▓рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдореИрдВрдиреЗ рдлрд╝рд┐рд▓рд░реЛрдВ рдХреЗ рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреА рджреЛрдмрд╛рд░рд╛ рдЬрд╛рдБрдЪ рдХреАред рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ:

Traceback (most recent call last):
  File "shadow.py", line 275, in <module>
    connected_future.result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 432, in result
    return self.__get_result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
awscrt.exceptions.AwsCrtError: AwsCrtError(name='AWS_ERROR_MQTT_UNEXPECTED_HANGUP', 
message='The connection was closed unexpectedly.',
code=5134)

--verbosity --debug . рдХреЗ рд╕рд╛рде рдЪрд▓ рд░рд╣рд╛ рд╣реИ

[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [event-loop] - id=0xa4371f0: Initializing edge-triggered epoll
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [event-loop] - id=0xa4371f0: Eventfd not available, falling back to pipe for cross-thread notification.
[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [event-loop] - id=0xa4371f0: Starting event-loop thread.
[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [dns] - id=0xa42b310: Initializing default host resolver with 16 max host entries.
[INFO] [2021-02-18T19:57:17Z] [b7050b40] [thread] - id=0xa3eeb8c: a cpu affinity was specified when launching this thread and set_mempolicy() is available on this system. Setting the memory policy to MPOL_PREFERRED
[WARN] [2021-02-18T19:57:17Z] [b7050b40] [thread] - id=0xa3eeb8c: call to set_mempolicy() failed with errno 38
[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [channel-bootstrap] - id=0xa44d200: Initializing client bootstrap with event-loop group 0xa43ea60
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [event-loop] - id=0xa4371f0: main loop started
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [event-loop] - id=0xa4371f0: default timeout 100000, and max events to process per tick 100
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [tls-handler] - ctx: Certificate and key have been set, setting them up now.
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [tls-handler] - ctx: Setting ALPN list x-amzn-mqtt-ca
Connecting to <endpoint> with client ID 'test-1e0e6e8b-ee1f-441d-8956-69aaedcb937d'...
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - client=0xa4ee030: Initalizing MQTT client
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Creating new connection
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-topic-tree] - tree=0xa450f94: Creating new topic tree
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Begin connecting process, switch state to CONNECTING.
[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: using ping timeout of 3000000000 ns
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [dns] - id=0xa42b310: Host resolution requested for a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [dns] - id=0xa42b310: No cached entries found for a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com starting new resolver thread.
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolving host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 3.131.31.52
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 52.15.119.124
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 13.59.30.89
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 2600:1f00:6000::383:1f34
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 2600:1f00:6000::340f:777c
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 2600:1f00:6000::d3b:1e59
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 3.131.31.52 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 52.15.119.124 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 13.59.30.89 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 2600:1f00:6000::383:1f34 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 2600:1f00:6000::340f:777c for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 2600:1f00:6000::d3b:1e59 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb4e03050: Scheduling attempt_connection task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb4e03b50: Scheduling attempt_connection task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb4e03050: Running attempt_connection task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: initializing with domain 1 and type 0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: setting socket options to: keep-alive 0, keep idle 0, keep-alive interval 0, keep-alive probe count 0.
[WARN] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: setsockopt() for NO_SIGNAL failed with errno 92. If you are having SIGPIPE signals thrown, you may want to install a signal trap in your application layer.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: beginning connect.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: connecting to endpoint 2600:1f00:6000::383:1f34:443.
[ERROR] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: connect failed with error code 101.
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [dns] - id=0xa42b310: recording failure for record 2600:1f00:6000::383:1f34 for a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com, moving to bad list
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [dns] - static: purging address 2600:1f00:6000::383:1f34 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com from the cache due to cache eviction or shutdown
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: is still open, closing...
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: closing
[ERROR] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: failed to create socket with error 1049
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb4e03b50: Running attempt_connection task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: initializing with domain 0 and type 0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: setting socket options to: keep-alive 0, keep idle 0, keep-alive interval 0, keep-alive probe count 0.
[WARN] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: setsockopt() for NO_SIGNAL failed with errno 92. If you are having SIGPIPE signals thrown, you may want to install a signal trap in your application layer.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: beginning connect.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: connecting to endpoint 3.131.31.52:443.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01aa0: Scheduling (null) task for future execution at time 8129633861413
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01ae0: Scheduling epoll_event_loop_unsubscribe_cleanup task for immediate execution
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: connection success
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: local endpoint 10.0.2.15:39292
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: assigning to event loop 0xa4371f0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: client connection on socket 0xb5d00b70 completed with error 0.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: Beginning creation and setup of new channel.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01e30: Scheduling on_channel_setup_complete task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01ae0: Running epoll_event_loop_unsubscribe_cleanup task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01e30: Running on_channel_setup_complete task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: setup complete, notifying caller.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: no message pool is currently stored in the event-loop local storage, adding 0xb5d01f80 with max message size 16384, message count 4, with 4 small blocks of 128 bytes.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: channel 0xb5d01c70 setup succeeded: bootstrapping.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket-handler] - id=0xb5d12620: Socket handler created with max_read_size of 16384
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d12718: Scheduling tls_timeout task for future execution at time 8134691976802
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Alpn protocol negotiated as x-amzn-mqtt-ca
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Remote server name is a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: tls negotiation result 0 on channel 0xb5d01c70
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [mqtt-client] - id=0xa450e40: Connection successfully opened, sending CONNECT packet
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d2c800: Scheduling mqtt_connack_timeout task for future execution at time 8127847022119
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [mqtt-client] - id=0xa450e40: Adding username ?SDK=PythonV2&Version=0.9.15 to connection
Traceback (most recent call last):
  File "shadow.py", line 275, in <module>
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Alert code 0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01d88: Scheduling channel_shutdown task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01d88: Running channel_shutdown task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: beginning shutdown process
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xb5d12620 shutdown in read dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Shutting down read direction with error code 0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xb5d12700 shutdown in read dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xa450e54 shutdown in read dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c84: Scheduling (null) task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c84: Running (null) task with <Running> status
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [mqtt-client] - id=0xa450e40: sending disconnect message as part of graceful shutdown.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [mqtt-client] - id=0xa450e40: failed to send courteous disconnect io message
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xa450e54 shutdown in write dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Shutting down write direction
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xb5d12700 shutdown in write dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: closing
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c40: Scheduling epoll_event_loop_unsubscribe_cleanup task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d12674: Scheduling socket_handler_close task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c40: Running epoll_event_loop_unsubscribe_cleanup task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d12674: Running socket_handler_close task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xb5d12620 shutdown in write dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c84: Scheduling (null) task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c84: Running (null) task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: during shutdown, canceling task 0xb5d12718
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d12718: Running tls_timeout task with <Canceled> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: during shutdown, canceling task 0xb5d2c800
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d2c800: Running mqtt_connack_timeout task with <Canceled> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: channel 0xb5d01c70 shutdown with error 0.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: destroying channel.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: releasing bootstrap reference
    connected_future.result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 432, in result
    return self.__get_result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
awscrt.exceptions.AwsCrtError: AwsCrtError(name='AWS_ERROR_MQTT_UNEXPECTED_HANGUP', message='The connection was closed unexpectedly.', code=5134)
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: user called disconnect.
[ERROR] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Connection is not open, and may not be closed
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Last refcount on connection has been released, start destroying the connection.
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Destroying connection
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-topic-tree] - tree=0xa450f94: Cleaning up topic tree
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - client=0xa4ee030: Cleaning up MQTT client
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [channel-bootstrap] - id=0xa44d200: releasing bootstrap reference
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [channel-bootstrap] - id=0xa44d200: releasing bootstrap reference
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [channel-bootstrap] - id=0xa44d200: destroying




рдореИрдВ рдЕрднреА рдмрд╣реБрдд рдЧреВрдВрдЧрд╛ рдорд╣рд╕реВрд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдореЗрд░реЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐ рдпрд╣ рдереА рдХрд┐ рдореИрдВрдиреЗ IoT рдХрдВрд╕реЛрд▓ рдореЗрдВ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреЛ рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рдпрд╣ рдХреБрдЫ рдмреЗрд╡рдХреВрдлреА рд╣реИ рд▓реЗрдХрд┐рди рджреВрд╕рд░реЛрдВ рдХреА рдорджрдж рдХрд░ рд╕рдХрддреА рд╣реИ

@hackaprende рдЬрд╣рд╛рдВ рдЖрдк рдлрдВрд╕ рдЧрдП рд╣реИрдВ, рдЙрд╕ рд╕рдорд╛рдзрд╛рди рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдпрджрд┐ рдпрд╣ рднрд╡рд┐рд╖реНрдп рдХреЗ рдХрд┐рд╕реА рднреА рдЦреЛрдЬрдХрд░реНрддрд╛ рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ рддреЛ рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд░рдирд╛, рдореБрдЭреЗ рддреНрд░реБрдЯрд┐ awscrt.exceptions.AwsCrtError: AWS_ERROR_MQTT_UNEXPECTED_HANGUP: The connection was closed unexpectedly. рднреА рдорд┐рд▓ рд░рд╣реА рдереА рдФрд░ рдореЗрд░реЗ рд▓рд┐рдП, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ AWS IoT рдЪреАрдЬрд╝ рдкреНрд░рдорд╛рдгрдкрддреНрд░ _activated_ рдирд╣реАрдВ рдерд╛ред рдЗрд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕реЗ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЪрд░рдг рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕