2026-05-05 12:01:30 +00:00
|
|
|
export * from './core/index.js';
|
|
|
|
|
export * from './protocols/index.js';
|
|
|
|
|
export * from './integrations/index.js';
|
|
|
|
|
|
|
|
|
|
import { HueIntegration } from './integrations/hue/index.js';
|
2026-05-05 18:45:46 +00:00
|
|
|
import { AdguardIntegration } from './integrations/adguard/index.js';
|
2026-05-05 18:26:11 +00:00
|
|
|
import { AirgradientIntegration } from './integrations/airgradient/index.js';
|
2026-05-05 18:45:46 +00:00
|
|
|
import { AmcrestIntegration } from './integrations/amcrest/index.js';
|
2026-05-05 18:26:11 +00:00
|
|
|
import { AndroidIpWebcamIntegration } from './integrations/android_ip_webcam/index.js';
|
2026-05-05 16:20:10 +00:00
|
|
|
import { AndroidtvIntegration } from './integrations/androidtv/index.js';
|
2026-05-05 18:45:46 +00:00
|
|
|
import { AndroidtvRemoteIntegration } from './integrations/androidtv_remote/index.js';
|
2026-05-05 17:13:54 +00:00
|
|
|
import { AxisIntegration } from './integrations/axis/index.js';
|
2026-05-05 18:26:11 +00:00
|
|
|
import { ApcupsdIntegration } from './integrations/apcupsd/index.js';
|
2026-05-05 18:45:46 +00:00
|
|
|
import { ArcamFmjIntegration } from './integrations/arcam_fmj/index.js';
|
|
|
|
|
import { AsuswrtIntegration } from './integrations/asuswrt/index.js';
|
2026-05-05 18:26:11 +00:00
|
|
|
import { BleboxIntegration } from './integrations/blebox/index.js';
|
2026-05-05 18:45:46 +00:00
|
|
|
import { BluetoothLeTrackerIntegration } from './integrations/bluetooth_le_tracker/index.js';
|
2026-05-05 19:06:21 +00:00
|
|
|
import { BoschShcIntegration } from './integrations/bosch_shc/index.js';
|
2026-05-05 17:13:54 +00:00
|
|
|
import { BraviatvIntegration } from './integrations/braviatv/index.js';
|
2026-05-05 18:26:11 +00:00
|
|
|
import { BroadlinkIntegration } from './integrations/broadlink/index.js';
|
2026-05-05 12:41:31 +00:00
|
|
|
import { CastIntegration } from './integrations/cast/index.js';
|
2026-05-05 14:57:06 +00:00
|
|
|
import { DeconzIntegration } from './integrations/deconz/index.js';
|
2026-05-05 16:20:10 +00:00
|
|
|
import { DenonavrIntegration } from './integrations/denonavr/index.js';
|
2026-05-05 19:06:21 +00:00
|
|
|
import { DevoloHomeNetworkIntegration } from './integrations/devolo_home_network/index.js';
|
2026-05-05 17:13:54 +00:00
|
|
|
import { DlnaDmrIntegration } from './integrations/dlna_dmr/index.js';
|
2026-05-05 18:26:11 +00:00
|
|
|
import { DsmrIntegration } from './integrations/dsmr/index.js';
|
2026-05-05 14:57:06 +00:00
|
|
|
import { EsphomeIntegration } from './integrations/esphome/index.js';
|
2026-05-05 19:06:21 +00:00
|
|
|
import { FritzIntegration } from './integrations/fritz/index.js';
|
|
|
|
|
import { GlancesIntegration } from './integrations/glances/index.js';
|
|
|
|
|
import { HeosIntegration } from './integrations/heos/index.js';
|
2026-05-05 14:57:06 +00:00
|
|
|
import { HomekitControllerIntegration } from './integrations/homekit_controller/index.js';
|
2026-05-05 18:06:03 +00:00
|
|
|
import { HomematicIntegration } from './integrations/homematic/index.js';
|
2026-05-05 19:06:21 +00:00
|
|
|
import { IppIntegration } from './integrations/ipp/index.js';
|
2026-05-05 17:13:54 +00:00
|
|
|
import { JellyfinIntegration } from './integrations/jellyfin/index.js';
|
2026-05-05 18:06:03 +00:00
|
|
|
import { KnxIntegration } from './integrations/knx/index.js';
|
2026-05-05 16:20:10 +00:00
|
|
|
import { KodiIntegration } from './integrations/kodi/index.js';
|
2026-05-05 14:57:06 +00:00
|
|
|
import { MatterIntegration } from './integrations/matter/index.js';
|
2026-05-05 18:06:03 +00:00
|
|
|
import { ModbusIntegration } from './integrations/modbus/index.js';
|
2026-05-05 12:56:38 +00:00
|
|
|
import { MqttIntegration } from './integrations/mqtt/index.js';
|
2026-05-05 17:13:54 +00:00
|
|
|
import { MpdIntegration } from './integrations/mpd/index.js';
|
2026-05-05 14:57:06 +00:00
|
|
|
import { NanoleafIntegration } from './integrations/nanoleaf/index.js';
|
2026-05-05 18:06:03 +00:00
|
|
|
import { OpenthermGwIntegration } from './integrations/opentherm_gw/index.js';
|
2026-05-05 17:13:54 +00:00
|
|
|
import { OnvifIntegration } from './integrations/onvif/index.js';
|
|
|
|
|
import { PlexIntegration } from './integrations/plex/index.js';
|
|
|
|
|
import { RainbirdIntegration } from './integrations/rainbird/index.js';
|
2026-05-05 18:06:03 +00:00
|
|
|
import { RflinkIntegration } from './integrations/rflink/index.js';
|
2026-05-05 12:32:02 +00:00
|
|
|
import { RokuIntegration } from './integrations/roku/index.js';
|
2026-05-05 16:20:10 +00:00
|
|
|
import { SamsungtvIntegration } from './integrations/samsungtv/index.js';
|
2026-05-05 12:01:30 +00:00
|
|
|
import { ShellyIntegration } from './integrations/shelly/index.js';
|
2026-05-05 17:13:54 +00:00
|
|
|
import { SnapcastIntegration } from './integrations/snapcast/index.js';
|
2026-05-05 12:23:14 +00:00
|
|
|
import { SonosIntegration } from './integrations/sonos/index.js';
|
2026-05-05 16:20:10 +00:00
|
|
|
import { TplinkIntegration } from './integrations/tplink/index.js';
|
2026-05-05 14:57:06 +00:00
|
|
|
import { TradfriIntegration } from './integrations/tradfri/index.js';
|
2026-05-05 16:20:10 +00:00
|
|
|
import { UnifiIntegration } from './integrations/unifi/index.js';
|
2026-05-05 18:06:03 +00:00
|
|
|
import { VelbusIntegration } from './integrations/velbus/index.js';
|
2026-05-05 17:13:54 +00:00
|
|
|
import { VolumioIntegration } from './integrations/volumio/index.js';
|
2026-05-05 12:01:30 +00:00
|
|
|
import { WolfSmartsetIntegration } from './integrations/wolf_smartset/index.js';
|
2026-05-05 14:57:06 +00:00
|
|
|
import { WizIntegration } from './integrations/wiz/index.js';
|
|
|
|
|
import { XiaomiMiioIntegration } from './integrations/xiaomi_miio/index.js';
|
|
|
|
|
import { YeelightIntegration } from './integrations/yeelight/index.js';
|
2026-05-05 17:13:54 +00:00
|
|
|
import { YamahaMusiccastIntegration } from './integrations/yamaha_musiccast/index.js';
|
2026-05-05 14:57:06 +00:00
|
|
|
import { ZhaIntegration } from './integrations/zha/index.js';
|
2026-05-05 13:09:56 +00:00
|
|
|
import { ZwaveJsIntegration } from './integrations/zwave_js/index.js';
|
2026-05-05 12:01:30 +00:00
|
|
|
import { generatedHomeAssistantPortIntegrations } from './integrations/generated/index.js';
|
|
|
|
|
import { IntegrationRegistry } from './core/index.js';
|
|
|
|
|
|
|
|
|
|
export const integrations = [
|
2026-05-05 18:45:46 +00:00
|
|
|
new AdguardIntegration(),
|
2026-05-05 18:26:11 +00:00
|
|
|
new AirgradientIntegration(),
|
2026-05-05 18:45:46 +00:00
|
|
|
new AmcrestIntegration(),
|
2026-05-05 18:26:11 +00:00
|
|
|
new AndroidIpWebcamIntegration(),
|
2026-05-05 16:20:10 +00:00
|
|
|
new AndroidtvIntegration(),
|
2026-05-05 18:45:46 +00:00
|
|
|
new AndroidtvRemoteIntegration(),
|
2026-05-05 18:26:11 +00:00
|
|
|
new ApcupsdIntegration(),
|
2026-05-05 18:45:46 +00:00
|
|
|
new ArcamFmjIntegration(),
|
|
|
|
|
new AsuswrtIntegration(),
|
2026-05-05 17:13:54 +00:00
|
|
|
new AxisIntegration(),
|
2026-05-05 18:26:11 +00:00
|
|
|
new BleboxIntegration(),
|
2026-05-05 18:45:46 +00:00
|
|
|
new BluetoothLeTrackerIntegration(),
|
2026-05-05 19:06:21 +00:00
|
|
|
new BoschShcIntegration(),
|
2026-05-05 17:13:54 +00:00
|
|
|
new BraviatvIntegration(),
|
2026-05-05 18:26:11 +00:00
|
|
|
new BroadlinkIntegration(),
|
2026-05-05 12:41:31 +00:00
|
|
|
new CastIntegration(),
|
2026-05-05 14:57:06 +00:00
|
|
|
new DeconzIntegration(),
|
2026-05-05 16:20:10 +00:00
|
|
|
new DenonavrIntegration(),
|
2026-05-05 19:06:21 +00:00
|
|
|
new DevoloHomeNetworkIntegration(),
|
2026-05-05 17:13:54 +00:00
|
|
|
new DlnaDmrIntegration(),
|
2026-05-05 18:26:11 +00:00
|
|
|
new DsmrIntegration(),
|
2026-05-05 14:57:06 +00:00
|
|
|
new EsphomeIntegration(),
|
2026-05-05 19:06:21 +00:00
|
|
|
new FritzIntegration(),
|
|
|
|
|
new GlancesIntegration(),
|
|
|
|
|
new HeosIntegration(),
|
2026-05-05 14:57:06 +00:00
|
|
|
new HomekitControllerIntegration(),
|
2026-05-05 18:06:03 +00:00
|
|
|
new HomematicIntegration(),
|
2026-05-05 12:01:30 +00:00
|
|
|
new HueIntegration(),
|
2026-05-05 19:06:21 +00:00
|
|
|
new IppIntegration(),
|
2026-05-05 17:13:54 +00:00
|
|
|
new JellyfinIntegration(),
|
2026-05-05 18:06:03 +00:00
|
|
|
new KnxIntegration(),
|
2026-05-05 16:20:10 +00:00
|
|
|
new KodiIntegration(),
|
2026-05-05 14:57:06 +00:00
|
|
|
new MatterIntegration(),
|
2026-05-05 18:06:03 +00:00
|
|
|
new ModbusIntegration(),
|
2026-05-05 12:56:38 +00:00
|
|
|
new MqttIntegration(),
|
2026-05-05 17:13:54 +00:00
|
|
|
new MpdIntegration(),
|
2026-05-05 14:57:06 +00:00
|
|
|
new NanoleafIntegration(),
|
2026-05-05 18:06:03 +00:00
|
|
|
new OpenthermGwIntegration(),
|
2026-05-05 17:13:54 +00:00
|
|
|
new OnvifIntegration(),
|
|
|
|
|
new PlexIntegration(),
|
|
|
|
|
new RainbirdIntegration(),
|
2026-05-05 18:06:03 +00:00
|
|
|
new RflinkIntegration(),
|
2026-05-05 12:32:02 +00:00
|
|
|
new RokuIntegration(),
|
2026-05-05 16:20:10 +00:00
|
|
|
new SamsungtvIntegration(),
|
2026-05-05 12:01:30 +00:00
|
|
|
new ShellyIntegration(),
|
2026-05-05 17:13:54 +00:00
|
|
|
new SnapcastIntegration(),
|
2026-05-05 12:23:14 +00:00
|
|
|
new SonosIntegration(),
|
2026-05-05 16:20:10 +00:00
|
|
|
new TplinkIntegration(),
|
2026-05-05 14:57:06 +00:00
|
|
|
new TradfriIntegration(),
|
2026-05-05 16:20:10 +00:00
|
|
|
new UnifiIntegration(),
|
2026-05-05 18:06:03 +00:00
|
|
|
new VelbusIntegration(),
|
2026-05-05 17:13:54 +00:00
|
|
|
new VolumioIntegration(),
|
2026-05-05 12:01:30 +00:00
|
|
|
new WolfSmartsetIntegration(),
|
2026-05-05 14:57:06 +00:00
|
|
|
new WizIntegration(),
|
|
|
|
|
new XiaomiMiioIntegration(),
|
|
|
|
|
new YeelightIntegration(),
|
2026-05-05 17:13:54 +00:00
|
|
|
new YamahaMusiccastIntegration(),
|
2026-05-05 14:57:06 +00:00
|
|
|
new ZhaIntegration(),
|
2026-05-05 13:09:56 +00:00
|
|
|
new ZwaveJsIntegration(),
|
2026-05-05 12:01:30 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
|
|
export const createDefaultIntegrationRegistry = (): IntegrationRegistry => {
|
|
|
|
|
const registry = new IntegrationRegistry();
|
|
|
|
|
for (const integration of integrations) {
|
|
|
|
|
registry.register(integration);
|
|
|
|
|
}
|
|
|
|
|
for (const integration of generatedHomeAssistantPortIntegrations) {
|
|
|
|
|
if (!registry.get(integration.domain)) {
|
|
|
|
|
registry.register(integration);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return registry;
|
|
|
|
|
};
|