UNPKG

homebridge-pioneer-avr-2025

Version:

A Pioneer AVR plugin for homebridge. This plugin is designed for Pioneer models that use Telnet Commands (e.g., VSX-922). It may not be compatible with newer models (e.g., VSX-LX304).

52 lines 1.94 kB
import type { Connection } from './connection'; export declare class MessageQueue { private connection; queue: [string, string][]; private conn; log: any; queueCallbackChars: Record<string, Function[]>; callbackLocks: Record<string, { queueLock: boolean; queueLockDate: number | null; message: string | undefined; }>; constructor(connection: Connection); /** * Starts periodic checking and processing of the queue. * Releases locks and processes messages as needed. */ private startQueueCheck; /** * Processes the first item in the queue, sending the message if not locked. */ processQueue(): Promise<void>; /** * Adds a message to the queue with optional callback characters and a callback function. * @param message - The message to send * @param callbackChars - The callback character string to track * @param callback - The function to execute when the response is received */ enqueue(message: string, callbackChars?: string, callback?: Function): void; /** * Clears the entire queue and resets all locks and callbacks. */ clearQueue(): void; /** * Removes all callbacks associated with a specific callback character key. * @param callbackKey - The callback key to clear * @param callback - The specific callback to remove */ removeCallbackForKey(callbackKey: string): void; /** * Retrieves all callback keys currently in the queueCallbackChars map. * @returns {string[]} - An array of callback keys */ getCallbackKeys(): string[]; /** * Retrieves all callbacks associated with a specific callback key. * @param callbackKey - The key to retrieve callbacks for * @returns {Function[]} - An array of callbacks */ getCallbacksForKey(callbackKey: string): Function[]; } //# sourceMappingURL=messageQueue.d.ts.map