forked from Github/frigate
Abstract MQTT from communication and make mqtt optional (#4462)
* Add option for mqtt config * Setup communication layer * Have a dispatcher which is responsible for handling and sending messages * Move mqtt to communication * Separate ws communications module * Make ws client conform to communicator * Cleanup imports * Migrate to new dispatcher * Clean up * Need to set topic prefix * Remove references to mqtt in dispatcher * Don't start mqtt until dispatcher is subscribed * Cleanup * Shorten package * Formatting * Remove unused * Cleanup * Rename mqtt to ws on web * Fix ws mypy * Fix mypy * Reformat * Cleanup if/else chain * Catch bad set commands
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import { h } from 'preact';
|
||||
import { baseUrl } from './baseUrl';
|
||||
import useSWR, { SWRConfig } from 'swr';
|
||||
import { MqttProvider } from './mqtt';
|
||||
import { WsProvider } from './ws';
|
||||
import axios from 'axios';
|
||||
|
||||
axios.defaults.baseURL = `${baseUrl}api/`;
|
||||
@@ -14,14 +14,14 @@ export function ApiProvider({ children, options }) {
|
||||
...options,
|
||||
}}
|
||||
>
|
||||
<MqttWithConfig>{children}</MqttWithConfig>
|
||||
<WsWithConfig>{children}</WsWithConfig>
|
||||
</SWRConfig>
|
||||
);
|
||||
}
|
||||
|
||||
function MqttWithConfig({ children }) {
|
||||
function WsWithConfig({ children }) {
|
||||
const { data } = useSWR('config');
|
||||
return data ? <MqttProvider config={data}>{children}</MqttProvider> : children;
|
||||
return data ? <WsProvider config={data}>{children}</WsProvider> : children;
|
||||
}
|
||||
|
||||
export function useApiHost() {
|
||||
|
||||
Reference in New Issue
Block a user