2017-04-11 97 views
1

我目前正在研究物联网产品。 我的问题是我如何启动到外部的连接,并听取没有端口转发的答案?在防火墙后面接收答案

在同一个网络(@home)中,我在一个已知端口上使用了一个简单的udp套接字。

有协议/解决方案吗?

我现在做的是使用Firebase云消息传递到达外部,但当然智能手机无法回应IoT(此刻为Json请求)。

IoT --> Cloud --> App 

但不

Iot <-- Cloud <-- App 

我可以通过FCM使用XMPP请求解决这个问题?

您必须想象最终客户产品的日常情况。

+0

没有端口转发,您需要一台云服务器来调解连接。 _有人需要倾听,而应用程序无法做到。 –

+0

我正在考虑使用Firebase通知系统上的代理/客户端的MQTT服务器。 – Luigi

回答

0

某些Firebase功能只能与传出的HTTPS连接一起使用,无需在设备上打开传入端口。的这个

一个例子是火力地堡数据库,该数据库带有一个Android SDK纯粹依赖从设备的火力地堡一个服务器(网络)套接字连接上。 Firebase数据库的REST API在相同的基础架构中工作,只是它使用常规HTTP请求而不是Web套接字。但Web Sockets和HTTP请求都会通过常规的HTTPS端口(443)。因此,除非您的防火墙阻止HTTP(S)流量,否则这种方法应该可行。

在这种情况下,您需要使用Firebase数据库作为Android应用和物联网设备之间的中介。

+0

我不确定你的答案,我的意思是即使HTTP实际上是对传入流量进行防火墙。端口80或443必须在物联网或电话应用程序中的某处打开。 – Luigi