FalconChristmas / fpp

Falcon Player
http://FalconChristmas.com
Other
571 stars 202 forks source link

multiSyncSystems API is missing data #2062

Open patdelaney opened 6 days ago

patdelaney commented 6 days ago

Please answer the following:

FPP Version and Hardware: FPP 8.x master on Pi

Describe the bug and Steps to reproduce: If I use the http://fpp.local/api/fppd/multiSyncSystems endpoint to get a list of the devices in the multisync page, it returns JSON that is attached. There apears to be a bug in the API that it only returns the Host Description field for the hoat that the API was called from. The field is not included in the JSON that is return for the other device. convertcsv (1).xlsx multiSyncSystems.json

Expected behavior: The field should be returned in all devices.

dkulp commented 6 days ago

I don't think this is possible. That json is generated just from the information that is provided in the FPP "ping" packet. That packet does not contain the description (or UUID). To get more information, after getting the Ping packet, we'd need to initiate an HTTP GET on the ip to get the full sys info json.

patdelaney commented 5 days ago

So are you saying that the information in the current multisync page is a combination of API and Http Get? image

ghormann commented 5 days ago

Yes. The way the multi sync page works is 1) Call http://fppdev/api/fppd/multiSyncSystems Which gives some very basic information about each system. (The information exchanged via "ping packets")

2) There is a helper function (http://fppdev/api/system/status) that when given a list of IP addresses, will query each ip adress to get the status information of each system. The results of the first API call have all the IP addresses, so a detailed query will be created with the IP addresses. An example call would be below.

http://fppdev/api/system/status?type=FPP&ip[]=192.168.1.149&ip[]=192.168.1.143&ip[]=192.168.1.147&ip[]=192.168.1.150&ip[]=192.168.1.146&ip[]=192.168.1.159&ip[]=192.168.1.145&ip[]=192.168.1.153&ip[]=192.168.1.154&ip[]=192.168.1.156&ip[]=192.168.1.144