Confirmez en remplaçant [ ] par [x] ci-dessous pour vous assurer qu'il s'agit d'un bogue :
Décrivez le bogue
La connexion MQTT sur Websocket ne peut pas se connecter, même si un MQTT normal fonctionne correctement.
Numéro de version du SDK
awscrt==0.5.13
awsiotsdk==1.0.6
Plateforme/OS/Périphérique
MAC
Reproduire (comportement observé)
Comportement prévisible
Pour travailler le plus doucement possible
Journaux/sortie
Les journaux complets peuvent être trouvés ici
python pubsub.py --endpoint xxxxxxxx-ats.iot.us-east-2.amazonaws.com --root-ca AmazonRootCA1.pem --cert Certificate.crt --key PrivateKey.pem.key --use-websocket --signing-region us-east-2 --verbosity Debug
Contexte supplémentaire
Lors de la connexion sans Websocket, cela fonctionne comme prévu.
Vous pouvez fermer ceci, c'était un problème avec les autorisations liées aux autorisations de l'utilisateur IAM, donc quelques retours :
awscrt.exceptions.AwsCrtError: AwsCrtError(name='AWS_ERROR_MQTT_UNEXPECTED_HANGUP', message='The connection was closed unexpectedly.', code=5134)
Bonjour, désolé, je n'ai pas compris comment vous avez résolu le problème. Pouvez-vous expliquer plus? J'ai le même problème lors de l'utilisation de l'exemple shadow.py et je suis débutant
Il peut y avoir plusieurs causes à un raccrochage inattendu, mais victorct-pronto a résolu son problème en utilisant une stratégie IAM super permissive appelée AWSIOTFullAccess. Cela ressemble à ceci :
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:*"
],
"Resource": "*"
}
]
}
Une fois que votre code fonctionne, assurez-vous de réduire les autorisations de stratégie à ce qui est uniquement requis. De plus, si vous rencontrez toujours des difficultés pour le faire fonctionner, je vous recommande d'ouvrir un nouveau numéro décrivant ce que vous avez essayé et où vous êtes bloqué.