UNPKG

fibaro-mcp-server

Version:

Model Context Protocol server for Fibaro Home Center 2 integration with AI assistants

146 lines 3.39 kB
/** * Fibaro Home Center 2 API Client */ export interface FibaroDevice { id: number; name: string; roomID: number; type: string; enabled?: boolean; visible?: boolean; properties?: Record<string, any>; actions?: Record<string, any>; } export interface FibaroRoom { id: number; name: string; sectionID?: number; } export interface FibaroScene { id: number; name: string; roomID: number; type?: string; enabled?: boolean; autostart?: boolean; runConfig?: string; runningInstances?: number; visible?: boolean; isLua?: boolean; triggers?: { properties?: any[]; globals?: any[]; events?: any[]; weather?: any[]; }; actions?: { devices?: any[]; scenes?: any[]; groups?: any[]; }; lua?: string; html?: string; } export interface FibaroSystemInfo { serialNumber: string; hcVersion: string; platform: string; mac: string; } export interface FibaroGlobalVariable { name: string; value: string; modified: number; isEnum?: boolean; enumValues?: string[]; } export declare class FibaroClient { private client; private baseUrl; constructor(host: string, username: string, password: string, useHttps?: boolean, timeout?: number); /** * Get all devices */ getDevices(): Promise<FibaroDevice[]>; /** * Get specific device by ID */ getDevice(deviceId: number): Promise<FibaroDevice>; /** * Call an action on a device */ callAction(deviceId: number, action: string, args?: any[]): Promise<any>; /** * Get all rooms */ getRooms(): Promise<FibaroRoom[]>; /** * Get specific room by ID */ getRoom(roomId: number): Promise<FibaroRoom>; /** * Get all scenes */ getScenes(): Promise<FibaroScene[]>; /** * Get specific scene by ID */ getScene(sceneId: number): Promise<FibaroScene>; /** * Trigger/execute a scene */ triggerScene(sceneId: number): Promise<any>; /** * Get system information */ getSystemInfo(): Promise<FibaroSystemInfo>; /** * Get weather information */ getWeather(): Promise<any>; /** * Get location information */ getLocation(): Promise<any>; /** * Get system diagnostics */ getDiagnostics(): Promise<any>; /** * Get all users */ getUsers(): Promise<any[]>; /** * Get specific user by ID */ getUser(userId: number): Promise<any>; /** * Get all sections */ getSections(): Promise<any[]>; /** * Get specific section by ID */ getSection(sectionId: number): Promise<any>; /** * Get energy consumption */ getEnergy(type: string, id: number): Promise<any>; /** * Get temperature data */ getTemperaturePanel(type: string, method: string, id: number): Promise<any>; /** * Get all global variables */ getGlobalVariables(): Promise<FibaroGlobalVariable[]>; /** * Get specific global variable by name */ getGlobalVariable(varName: string): Promise<FibaroGlobalVariable>; /** * Set a global variable value */ setGlobalVariable(varName: string, value: any): Promise<any>; } //# sourceMappingURL=fibaro-client.d.ts.map