3

我试图使用 boto3 发送带有精确定位的消息,但 update_endpoint 和 send_messages 的函数不断返回我找不到资源

client = boto3.client('pinpoint', region_name="us-east-1", aws_access_key_id="xxx", aws_secret_access_key="xxx")

client.update_endpoint(ApplicationId="xxx",EndpointId='+573163781068',EndpointRequest={'Address': '+573163781068','ChannelType': 'SMS','Location': {'Country': 'CO'}})

client.send_messages(ApplicationId="xxx", MessageRequest={'Addresses': {'+573163781068': {'ChannelType': 'SMS'}}, 'MessageConfiguration': {'SMSMessage': {'Body': 'hola desde libreria', 'MessageType': 'TRANSACTIONAL'}}})

返回我的错误是:

Traceback (most recent call last):
 File "<console>", line 1, in <module>
 File "/Applications/MAMP/htdocs/enviroment/kleanapp/lib/python3.7/site-packages/botocore/client.py", line 357, in _api_call
return self._make_api_call(operation_name, kwargs)
 File "/Applications/MAMP/htdocs/enviroment/kleanapp/lib/python3.7/site-packages/botocore/client.py", line 661, in _make_api_call
  raise error_class(parsed_response, operation_name)
botocore.errorfactory.NotFoundException: An error occurred (NotFoundException) when calling the SendMessages operation: Resource not found

提前感谢您的帮助

4

1 回答 1

1

您不需要端点来发送消息。只需删除该update_endpoint行。

NotFoundException 可能来自未找到的应用程序 ID。请确保您在正确的区域中指定了正确的应用程序 ID 值。

您可以使用以下命令查找特定区域的有效应用程序及其 ID 的列表:

aws --region us-east-1 pinpoint get-apps
于 2019-05-27T00:22:30.120 回答