Skip to content

Major improvement to Elgato Key Lights #18532

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 28 commits into
base: main
Choose a base branch
from

Conversation

omarshahine
Copy link
Contributor

Description

New Features

  • Add "Discover Lights" command to force fresh discovery of lights
  • Add comprehensive error messages for connection issues
  • Add development mode logging for better debugging

User Interface Improvements

  • Replace showHUD with showToast for better visual feedback
  • Keep Raycast window open after commands for easier adjustments
  • Rename temperature commands to "Warmer" and "Cooler" for clarity
  • Show temperature values in Kelvin (2900K-7000K) instead of percentages

Technical Improvements

  • Add proper error handling and undefined checks
  • Add separate error handling for discovery and command operations
  • Fix temperature control logic to properly handle min/max values
  • Update bonjour package to fix deprecation warnings
  • Improve caching mechanism for discovered lights
  • Add validation of cached lights to ensure they are still reachable
  • Synchronize all lights to the same values when adjusting settings

Checklist

omarshahine and others added 12 commits April 11, 2025 16:33
…ep window open, add error handling, update bonjour package, improve caching
…aintain Raycast window, add error handling, update bonjour package, and improve caching mechanism.
…and in Elgato Key Light extension. Enhance caching mechanism to ensure only reachable lights are used.
…fy title casing in package.json, and streamline toast notifications by removing dismiss actions in discoverLights.ts. Refactor timeout handling in elgato.ts and adjust type definitions in utils.ts.
…er temperature commands and Kelvin display, add comprehensive error handling for discovery and command operations, and synchronize settings across lights. Update changelog and README for new features and technical improvements.
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Enhance Elgato Key Light extension: Update dependencies to latest versions, add new commands for managing presets, improve temperature conversion functions, and implement comprehensive error handling for key light operations. Update package.json and package-lock.json for dependency changes, and refactor code for better readability and maintainability.
…hing mechanism with expiration, and improve toast notifications for discovery and state changes. Modify toggle command to handle no lights found scenario and streamline code for better readability.
… @raycast/eslint-config, update package-lock.json with new dependencies, modify toggle command title for clarity, and refactor timeout handling in elgato.ts for improved readability.
@raycastbot raycastbot added extension fix / improvement Label for PRs with extension's fix improvements extension: elgato-key-light Issues related to the elgato-key-light extension OP is contributor The OP of the PR is a contributor of the extension labels Apr 12, 2025
@raycastbot
Copy link
Collaborator

raycastbot commented Apr 12, 2025

Thank you for your contribution! 🎉

🔔 @thomaspaulmann you might want to have a look.

You can use this guide to learn how to check out the Pull Request locally in order to test it.

You can expect an initial review within five business days.

…ght class for improved accessibility in subclasses.
Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Summary

This PR significantly enhances the Elgato Key Light extension with improved user interface feedback, better error handling, and more robust light discovery mechanisms.

  • Added new discoverLights.ts command for forcing fresh discovery of Key Lights with comprehensive error handling
  • Replaced showHUD with showToast across all commands for better visual feedback while keeping Raycast window open
  • Improved temperature display by showing values in Kelvin (2900K-7000K) instead of percentages
  • Enhanced caching mechanism with validation to ensure lights are still reachable
  • Added proper error handling with nested try-catch blocks and specific error messages for different failure scenarios
  • Updated from deprecated bonjour to bonjour-service package with proper TypeScript definitions

22 file(s) reviewed, 8 comment(s)
Edit PR Review Bot Settings | Greptile

omarshahine and others added 11 commits April 11, 2025 17:24
…sing Math.max with COLD_TEMPERATURE as the lower bound, but COLD_TEMPERATURE is the coolest setting (143). For increasing temperature (making it warmer), you should be approaching WARM_TEMPERATURE (344).

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
…arity, add AI evaluation scenarios for light control and preset management, and improve error handling in light discovery process.
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
@omarshahine
Copy link
Contributor Author

@thomaspaulmann I finally got all my changes in after your PR.

…arity, replace showToast with showFailureToast for improved error handling in increaseTemperature and toggle commands, and remove unused imports in PresetForm component.
@raycastbot
Copy link
Collaborator

This pull request has been automatically marked as stale because it did not have any recent activity.

It will be closed if no further activity occurs in the next 7 days to keep our backlog clean 😊

@raycastbot raycastbot added the status: stalled Stalled due inactivity label Apr 26, 2025
@omarshahine
Copy link
Contributor Author

This pull request has been automatically marked as stale because it did not have any recent activity.

It will be closed if no further activity occurs in the next 7 days to keep our backlog clean 😊

@thomaspaulmann any chance you can review?

@raycastbot raycastbot removed the status: stalled Stalled due inactivity label Apr 26, 2025
@omarshahine
Copy link
Contributor Author

@pernielsentikaer is there anyone else that can review it. I understand if Thomas is busy :-).

@pernielsentikaer
Copy link
Collaborator

We should be able to review this tomorrow 🙂

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AI Extension extension: elgato-key-light Issues related to the elgato-key-light extension extension fix / improvement Label for PRs with extension's fix improvements OP is contributor The OP of the PR is a contributor of the extension
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants