我有一个通过REST api和多个智能设备自动化流程的计划。我想要做的是以下内容。我有4个设备,每个设备都执行一系列操作来完成他们的任务。 (实际上,我将根据设备点亮特定系列中的4个LED)。我目前正在用Java模拟这个(因为我手头没有设备)
例如,假设设备1号首先点亮红色LED指示灯10秒钟,之后设备2指示灯需要点亮10秒钟等等。这就是任务。这是自动完成的,直到我关闭程序。
我使用JAVA和JAX-RS库开发了一个REST API,其中我说明了设备及其信息(所以设备名称,当前状态,例如Yellow Led ON / OFF等)。
我不明白的是我将如何制作我现在回复API信息的程序。如何在API信息上更改值时,如何通知我的程序?
如何让设备2轮询API,直到获得响应以启动其操作?或者,如果我手动更改服务器数据上的值,它会启动操作?例如,如果黄色LED已打开,我进入服务器数据库并将其关闭,我的应用程序将如何得到通知并更改模拟led的状态?
答案 0 :(得分:0)
由于您使用的是HTTP,因此最合适的解决方案是使用 Web套接字。您可以将它们用于全双工通信。当您从一台设备接收输入时,您可以处理它并通知其他设备。请注意,这不适合大型客户群。