Skip to content

Releases: evandcoleman/campass

v0.4.5

21 Feb 02:32

Choose a tag to compare

Bug Fix

  • Fix crash on auth success: hass.components.persistent_notification.async_create() was removed in recent HA versions, causing a 500 error on successful PIN entry. Switched to hass.services.async_call('persistent_notification', 'create', ...).

Full Changelog: v0.4.4...v0.4.5

v0.4.4

21 Feb 02:24

Choose a tag to compare

Bug Fix

  • Fix passcode comparison for numeric PINs: HA's config entry storage can deserialize numeric-looking passcodes (e.g. "3590") as integers. The frontend sends PINs as strings, so "3590" == 3590 was evaluating to False. Now casts both sides to str() before comparing.
  • Added debug logging for auth attempts (visible with logger set to debug for custom_components.campass)

Full Changelog: v0.4.3...v0.4.4

v0.4.3

21 Feb 01:55

Choose a tag to compare

Bug Fixes

  • Lockout shows correct error: Frontend now shows "Too many attempts, please try again later" for HTTP 429 instead of misleadingly showing "Incorrect passcode"
  • Proxy/Nabu Casa IP fix: Uses X-Forwarded-For header to get the real client IP when behind a reverse proxy or Nabu Casa — prevents shared proxy IPs from causing collective lockouts
  • Reduced lockout sensitivity: Changed from 5 attempts / 15 min lockout → 10 attempts / 5 min lockout

Full Changelog: v0.4.2...v0.4.3

v0.4.2

18 Feb 00:03

Choose a tag to compare

Bug Fix

  • Logbook fix: Corrected the async_describe_event call signature — was missing the domain argument, which prevented HA from registering the event descriptor. Events should now appear in the Logbook correctly.

Full Changelog: v0.4.1...v0.4.2

v0.4.1

17 Feb 23:50

Choose a tag to compare

Bug Fix

  • Logbook integration: Access events now properly appear in the HA Logbook. Added logbook.py descriptor to register campass_access events with human-readable messages for auth success, auth failure, and camera view events.

Full Changelog: v0.4.0...v0.4.1

v0.4.0

17 Feb 23:41

Choose a tag to compare

What's New

🔗 Quick Install

  • 1-click install badge in README — click to add CamPass directly from the HA UI

☁️ Nabu Casa / HTTPS Support

  • Session cookies now set Secure flag when accessed over HTTPS (e.g. via Nabu Casa remote access)

📋 Access Logging

  • All auth attempts and camera views fire campass_access events into Home Assistant's event bus
  • Events appear in the native Logbook — track who accessed what and when
  • Event types: auth_success, auth_failure, camera_view

🛡️ Brute-Force Protection

  • After 5 failed PIN attempts from the same IP, that IP is locked out for 15 minutes
  • Returns HTTP 429 during lockout
  • Counter resets on successful auth

🔔 Auth Notifications (optional)

  • New Notify on access toggle in the config flow
  • When enabled, creates a persistent notification in HA whenever someone successfully unlocks a share

Full Changelog: v0.2.0...v0.4.0

v0.3.0

17 Feb 23:15

Choose a tag to compare

What's New

  • 1-click install badge — My Home Assistant badge in README for easy installation
  • HTTPS cookie fix — Session cookie now sets secure=True when accessed over HTTPS (fixes Nabu Casa / reverse proxy setups)

v0.2.0

16 Feb 23:50

Choose a tag to compare

What's New

  • Configurable session duration — choose how long authenticated sessions last: 1 hour, 24 hours, 7 days, 30 days, 1 year, or never expires. Configurable per share via the setup and options flows. Default: 24 hours.
  • PIN pad screenshot added to README

Changes since v0.1.0

  • feat: configurable session duration (dropdown selector in config/options UI)
  • feat: JWT expiration and cookie max_age match selected duration
  • docs: added PIN pad screenshot to README
  • fix: redirect to login on auth expiry from all viewer contexts

v0.1.0 — Initial Release

16 Feb 23:33

Choose a tag to compare

CamPass v0.1.0

PIN-protected camera sharing for Home Assistant.

Features

  • 📱 iPhone-style PIN pad (4-digit, 6-digit, or alphanumeric)
  • 📷 Multi-camera support per share
  • 🔄 Multiple independent shares (each with own PIN, cameras, URL)
  • 🔘 Switch entity per share — toggle from dashboard, automations, or voice
  • 🎥 HLS streaming via HA stream component (MJPEG fallback)
  • ⚡ Real-time disable via Server-Sent Events
  • 🔒 JWT auth, per-share secrets, state persistence across restarts
  • 📲 Mobile-first dark theme, keyboard support

Installation

HACS: Add evandcoleman/campass as a custom repository (Integration), install, restart HA.

Manual: Copy custom_components/campass to your HA config directory, restart HA.

Setup

Settings → Integrations → Add → CamPass → set name, PIN, cameras → done.
Share http://YOUR_HA:8123/campass/<slug>/ with your guest.