commits
Verifies the DID is real on startup before connecting to any websockets
Thanks to Streamplace for the solution, from here:
https://github.com/streamplace/streamplace/blob/caeba8451254ac8b4661088ad74c45538010aab3/js/app/hooks/useActorTypeahead.tsx
- Added StreamplaceMessageView class
- Added proper logging errors instead of "oops"
- Changed lastChatter to be a reference object
- Fixed a potential memory leak with not destroying audio object URLs
- Fixed several typing issues
- Fixed logic in processTTS function with repeatUsernames
- Fixed "exponential backoff" function to actually be exponential
- Fixed CSS tag misnaming
Reverts the mouse handler changes that were accidentally included in the previous commit. Restores the timer-based mouseMoveHandler function and @mouseover event handler.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Refactored environment variable handling to support URL query parameters with proper validation and defaults. URL parameters take priority over env vars, which take priority over defaults.
- Created generic getParam() helper with validation parser functions
- All config vars now support URL params (username, ttsTimeout, chatLife, repeatUsernames)
- Added proper type checking and validation for all parameters
- Updated README with configuration documentation
- Added validation warning for missing streamplaceUsername
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Rebuild the debug UI fully into a settings UI
- Settings UI shows on mouse over
- Refactored test chat feature into a name and message field
- Split up massive single function for chat messages
- Split out streamplace-specific logic (still somewhat crossed)
- created generic AddChatLine function for easier cross compatibility
Significant changes:
- Added some typing
- Reorganized variables
- Fix chat sorting for good
- Switch from Array to Map storage for chats
- Added chat deletion after chatLifespan
- Improve overlay styling
Sort only fires once after the TTS enable time, this will need
documentation as it serves to sort only the initial messages
which do not come sorted the correct direction for my needs.
- Added StreamplaceMessageView class
- Added proper logging errors instead of "oops"
- Changed lastChatter to be a reference object
- Fixed a potential memory leak with not destroying audio object URLs
- Fixed several typing issues
- Fixed logic in processTTS function with repeatUsernames
- Fixed "exponential backoff" function to actually be exponential
- Fixed CSS tag misnaming
Refactored environment variable handling to support URL query parameters with proper validation and defaults. URL parameters take priority over env vars, which take priority over defaults.
- Created generic getParam() helper with validation parser functions
- All config vars now support URL params (username, ttsTimeout, chatLife, repeatUsernames)
- Added proper type checking and validation for all parameters
- Updated README with configuration documentation
- Added validation warning for missing streamplaceUsername
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Rebuild the debug UI fully into a settings UI
- Settings UI shows on mouse over
- Refactored test chat feature into a name and message field
- Split up massive single function for chat messages
- Split out streamplace-specific logic (still somewhat crossed)
- created generic AddChatLine function for easier cross compatibility