使用AWS实时定位sahring和跟踪

时间:2017-12-01 11:12:58

标签: amazon-web-services geolocation amazon-dynamodb real-time amazon-kinesis-firehose

简要解决方案:

我通过AWS Kinesis在Dynamo DB中存储IOT设备位置和服务提供商汽车位置。 我正在将One User映射到特定的服务提供商Cars并将Car发送到用户的共享位置。

问题:我需要在服务提供商仪表板上实时跟踪这些映射(服务提供商的汽车和用户位置)。 1. DynamoDB是否提供任何直接API来实时发布和跟踪这些位置? 2.我是否需要通过AWS Kinesis公开这些映射的位置并跟踪仪表板? AWS Kinesis是否提供此类API?

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

如果您使用AWS的MQTT IoT核心,您还有其他选择。

通过AWS JS库直接通过WebSockets订阅MQTT主题。

您可以使用Cognito来管理用户并获得对AWS服务的一些访问权限,这样您就可以使用WebSockets获取凭据来订阅MQTT中的主题,如此链接描述。

https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html#mqtt-ws

拥有自己的用户管理器并使用EC2实例。

您可以创建一个EC2实例并将AppServer与NodeJs放在一起,并使用SocketIO通过您自己的经理与用户的WebBrowser进行通信,这样他们就可以随时随地接收实时信息。然后,您可以使用AWS MQTT IoT NodeJS客户端并订阅所需的主题,并通过SocketIO服务器的WebSockets发送它(所有这些都在同一个WebApp中)。这样,您需要考虑流量中的用户数量和数据。您可以通过用户提供主题,例如“car / tracking / mycarId”等主题,其中mycarId是标识此用户/汽车的唯一ID,您只能同时订阅这些,这样您就不会订阅你的汽车的所有主题,你没有收到不必要的数据,你不需要这么多过程。

我已经实现了第二个,但现在我通过WebSockets将我的实时块迁移到Cognito和MQTT。

问候,Héctor