UNPKG

homebridge-2n-intercom

Version:

Complete Homebridge plugin for 2N intercoms with door control, live video streaming, and doorbell notifications

103 lines (82 loc) 5.55 kB
# Changelog ## [2.2.1] - 2025-11-16 ### 📝 Documentation - Rewrote `README.md` to focus purely on plugin parameters and the exact 2N intercom settings required for reliable operation. ## [2.2.0] - 2025-11-16 ### ✨ Dynamic Doorbell Filtering - **Directory-aware dropdown**: Fetches `/api/dir/query` on startup and writes a dynamic Homebridge UI schema so you can select any 2N directory button directly in Config UI X. - **Runtime schema publishing**: Generates `.homebridge-2n-intercom(-v1).schema.json` automatically and updates after every restart. - **Peer matching improvements**: Normalizes `sip:number@domain`, `number/pos`, and plain digits so filtering works regardless of how the call endpoint reports the peer. ### 🛡️ Reliability & UX - **Log noise reduction**: Doorbell warnings are throttled and only repeat when there is a new unmatched call, keeping Homebridge logs readable. - **Better diagnostics**: Startup logs list every discovered button along with the exact phone number that will appear in the UI dropdown. - **README additions**: Added a “Required 2N Intercom Configuration” guide covering HTTP API permissions, RTSP streaming, and button mapping so new installs succeed on the first try. ### 🧱 Under the Hood - Added `schemaGenerator.ts` helper to render the dynamic config files. - Simplified configuration interfaces (`settings.ts`) to reflect the single peer field. - Cleaned up platform/accessory code to pass directory peers everywhere they’re needed. ## [2.1.0] - 2025-11-09 ### � Major Features #### 🔒 Complete SSL/HTTPS Support - **HTTPS by Default**: Secure HTTPS is now the default protocol for all communications - **Protocol Selection**: Choose between HTTP and HTTPS in web configuration interface - **SSL Certificate Handling**: Configurable SSL certificate verification (disabled by default for self-signed certs) - **Smart URL Generation**: Automatic protocol detection with explicit configuration options #### 📷 Enhanced Camera Experience - **Fixed Black Screen Issue**: Completely resolved 10-second black screens in camera preview - **Intelligent Snapshot Caching**: 5-second cache prevents interruptions and provides seamless experience - **Graceful Error Recovery**: Uses cached snapshots when camera requests fail - **Optimized Performance**: Better refresh intervals and faster response times ### 🔧 Technical Improvements - **Protocol Configuration**: New `protocol` parameter with HTTPS default - **SSL Verification**: Configurable `verifySSL` parameter for certificate handling - **Enhanced Snapshot System**: Intelligent caching with fallback mechanisms - **Improved Timeouts**: Optimized request timeouts for better reliability - **Better Error Handling**: Graceful degradation with cached content - **Enhanced Logging**: Detailed protocol and SSL status information ### 🛡️ Security & Privacy - **Secure Defaults**: HTTPS enabled by default for all new installations - **Certificate Flexibility**: Works with self-signed certificates (common in 2N intercoms) - **Clean Sample Config**: Removed personal information from configuration examples ### 📋 Configuration Updates - **Default Protocol**: `https` (was auto-detected) - **Default Snapshot Refresh**: 30 seconds (was 10 seconds) - **Minimum Refresh Interval**: 10 seconds (was 5 seconds) - **New SSL Options**: `protocol` and `verifySSL` parameters ### 🔄 Migration Notes - Existing configurations automatically upgrade to HTTPS - All HTTP requests now support SSL with configurable verification - No breaking changes - backward compatibility maintained ### 🔒 SSL Support - **HTTPS by Default**: HTTPS is now the default protocol for secure communication - **Protocol Selection**: Explicit choice between HTTP and HTTPS in web configuration - **SSL Certificate Handling**: Configurable SSL certificate verification (disabled by default for self-signed certificates) - **Web Configuration**: Added protocol selector and verifySSL option in Device Settings section ### 🔧 Technical Enhancements - Added `protocol` configuration parameter (default: 'https') - Added `verifySSL` configuration parameter (default: false) - Updated all HTTP requests to support SSL with configurable certificate verification - Enhanced URL generation with explicit protocol selection - SSL configuration passed to camera streaming and doorbell monitoring - Improved logging with protocol and SSL verification status ## [1.3.0] - 2025-11-07 ### 🚀 Performance Improvements - **Optimalizace video streamingu**: Výrazné zrychlení navazování video streamu - **Nativní VGA@15fps**: Použití původního rozlišení 2N interkomu pro eliminaci transcodingu - **Rychlejší timeouty**: Zkrácení čekacích časů pro rychlejší odezvu - **Čistší logy**: Redukce verbose výpisů, zachování pouze důležitých informací ### 🔧 Technical Details - RTSP connection test: 8s → 3s (62% rychlejší) - FFmpeg startup timeout: 15s → 8s (47% rychlejší) - Optimalizované retry mechanismy - VGA@15fps end-to-end streaming bez zbytečného škálování - Vylepšená detekce úspěšného spuštění streamu ### 📊 Expected Results - Video stream se spustí za 5-10 sekund místo původních 15-30 sekund - Nižší zatížení CPU díky eliminaci transcodingu - Menší datové toky díky nativnímu VGA rozlišení - Stabilnější performance na Raspberry Pi ## [1.2.1] - Previous Release - Základní funkcionalita video streamingu - Door unlock ovládání - Doorbell notifications