我正在尝试通过python Lambda函数将消息发布到AWS IoT。
我已经在IoT控制台上订阅了一个主题(“测试”),并触发了该功能,并且消息未传递。
Python代码段:
iot = boto3.client('iot-data','eu-west-1') res = {
"message" : "Hello!"
}
iot.publish(
topic='test', //do we need to pass the thing name here?
qos=0,
payload=json.dumps(res))
IoT政策:
{ "Version": "2012-10-17", "Statement": [
{
"Effect": "Allow",
"Action": "iot:*",
"Resource": "*"
} ] }
此外,我已经为lambda函数分配了正确的IAM特权,以发布到IoT。
任何帮助我朝正确方向前进的帮助,我们深表感谢。
答案 0 :(得分:0)
弄清楚这一点,我的lambda函数部署在没有Internet连接的VPC子网中。创建了一个NAT网关,现在该子网可以通过它访问Internet。
P-S-要将消息发布到IoT(MQTT),需要互联网连接。