forked from cemaden-educacao/WPD-MobileApp
analuizaff
3 years ago
3 changed files with 70 additions and 5 deletions
-
45src/app/api/Websockets/SocketClient.js
-
4src/app/hooks/useFormsAswers.js
-
26src/app/screens/MapFeedScreen.js
@ -0,0 +1,45 @@ |
|||
import { useEffect, useState } from 'react'; |
|||
import { useFiltering } from '../../hooks/useFiltering'; |
|||
|
|||
function isRequestedValue(item, renderOptions) { |
|||
if ( |
|||
(item.name == "pluviometer" && renderOptions.citzen.pluviometer) || |
|||
(item.name == "officialPluviometer" && renderOptions.oficial.automaticPluviometer) || |
|||
(item.name == "rain" && renderOptions.citzen.rain) || |
|||
(item.name == "riverFlood" && renderOptions.citzen.riverFlood) || |
|||
(item.name == "floodZones" && renderOptions.citzen.floodRisk) |
|||
) { |
|||
return true; |
|||
|
|||
} |
|||
} |
|||
|
|||
function verify_existingSockets(formType, renderOptions) { |
|||
if (formType.response == null && isRequestedValue(formType, renderOptions)) { |
|||
console.log("Resposta é null"); |
|||
const socket = new WebSocket("wss://waterproofing.geog.uni-heidelberg.de/wss/hot/data?" + formType.endpoint); |
|||
|
|||
socket.onmessage = ({ data }) => { |
|||
formType.response = data; |
|||
} |
|||
} |
|||
else { |
|||
console.log("\nresposta preenchida"); |
|||
} |
|||
} |
|||
|
|||
|
|||
export default function SocketClient(dataOptionObject, focusChanged) { |
|||
const [data, setData] = useState(useFiltering()); |
|||
|
|||
|
|||
useEffect(() => { |
|||
data.citizen.map((e) => verify_existingSockets(e, dataOptionObject)); |
|||
data.oficial.map((e) => verify_existingSockets(e, dataOptionObject)); |
|||
|
|||
}, [dataOptionObject, focusChanged]); |
|||
|
|||
return data; |
|||
}; |
|||
|
|||
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue