Dies ist ein Skript, mit dem Sie PubSub von AWS IoT Device SDK v2 für Python sofort für einen kleinen Test testen können. Sie können dies in wenigen Zeilen auf der CLI tun. Die Version von Node.j ist hier
Es wird angenommen, dass es auf Cloud9 eingestellt ist. Es wird verwendet, wenn es schwierig ist, mit einem Mannequin zu erstellen. Ich werde nicht erklären, was Sie tun. .. Wenn Sie nur einige Nachrichten manuell senden möchten, ist es besser, die Testfunktion von IoT Core zu verwenden.
Erstellen Sie eine Cloud9-Umgebung und legen Sie Folgendes im Umgebungsverzeichnis ab.
setup.sh
mkdir $THING_NAME
cd $THING_NAME
POLICY_NAME=${THING_NAME}_Policy
aws iot create-thing --thing-name ${THING_NAME}
git clone https://github.com/aws/aws-iot-device-sdk-python-v2.git
pip install ./aws-iot-device-sdk-python-v2
cd aws-iot-device-sdk-python-v2/samples/
wget -O rootca.pem \
    https://www.amazontrust.com/repository/AmazonRootCA1.pem
aws iot create-keys-and-certificate --set-as-active \
    --certificate-pem-outfile    certificate.pem \
    --public-key-outfile         public_key.pem  \
    --private-key-outfile        private_key.pem \
    --query certificateArn
echo -n CERTIFICATE_ARN: 
read str 
CERTIFICATE_ARN=$str
aws iot create-policy                     \
        --policy-name ${POLICY_NAME}      \
        --policy-document file://../../../policy.json
aws iot attach-thing-principal             \
        --thing-name $THING_NAME           \
        --principal $CERTIFICATE_ARN
aws iot attach-principal-policy            \
        --policy-name $POLICY_NAME         \
        --principal $CERTIFICATE_ARN
Die Richtlinie sollte entsprechend geändert werden, aber sobald es etwas gibt.
policy.json
{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Allow",
    "Action":["iot:*"],
    "Resource": ["*"]
  }]
}
sudo pip install awsiotsdk
aws iot describe-endpoint --endpoint-type iot:Data-ATS 
export ENDPOINT=yourendpoint-ats.iot.ap-northeast-1.amazonaws.com
export THING_NAME=mything
./setup.sh
cd aws-iot-device-sdk-python-v2/samples/
python pubsub.py --endpoint $ENDPOINT --root-ca rootca.pem --cert certificate.pem --key private_key.pem
Wenn Sie es mit einer anderen Sache versuchen, schreiben Sie THING_NAME neu und führen Sie es aus.