Releases: unfoldedcircle/core-simulator
Releases · unfoldedcircle/core-simulator
v0.21.3-alpha
📣 We will only publish Docker images & VM updates from this release on and don't create a GitHub release anymore. Tags will still be created though.
Please check the CHANGELOG for new release information.
Added
- License information of used 3rd party components in the simulator.
Changed
- Update HomeAssistant configuration to 2023.3.0
Fixed
- Integration driver
authentication
message handling if the session was already authenticated, e.g. header based authentication or multiple authentication messages. - Improved integration driver connect / disconnect error & reconnection handling.
ReturnServiceUnavailable
in Core-API if integration driver connection is not established. - Send
entity_subscribe
&_unsubscribe
messages to integration driver when a new entity is configured or removed with the Core-API.
v0.21.2-alpha
Added
- ENV variable to disable certificate verification for integration TLS connections.
SetUC_INTEGRATION_DISABLE_CERT_VERIFICATION=true
in thecore-simulator
container to disable verification. - ENV variable
UC_API_MSG_TRACING
to enable WebSocket Core-API message tracing:all
: enables incoming and outgoing message tracingin
: incoming messages onlyout
: outgoing messages only
Fixed
- Retrieving entity states from integration driver after it sends the connected event (#12).
This fixes the Home Assistant sensors (and most likely other entities) to immediately show their current value. - Missing glibc error in Home Assistant integration Docker image (#13).
- Swagger editor link in index pages for REST Core-API (#8).
v0.21.1-alpha
This is the first public release of the remote-core simulator 🎉
See README file for docker-compose setup. The prepared Linux VM will be released until end of February 2023.
More developer documentation and integration driver examples will follow in March!
Added
- Enable activity & macro execution in simulator.
- Send
entity_change
events for all steps in an activity & macro sequence.
Changed
- Public release of the simulator.
- Update web-configurator.
v0.20.0-alpha
Added
- Temporary, non-persistent UI access token to prevent lock-out when deleting user accounts or API tokens.
Activated with ENV variableUC_TOKEN_PATH
specifying an absolute file location to write the token. - Simulated factory reset and most system commands.
Changed
- From now on the Simulator is only distributed as Docker image.
- Enforce WS Core-API authentication and auto-disconnect after 15s if not authenticated.
Fixed
- Name clash of simulated IR emitter and simulated dock. Adding a simulated dock no longer overrides the IR emitter.
- Dock discovery no longer returns the simulated Bluetooth dock if BT is disabled.
- Simulated Bluetooth dock setup flow works again.
- RFC 3339 compliant date-time values. Certain timestamps didn't include the timezone.
- Embed swagger js & css files in the Docker image Core-API OpenAPI packaging and don't rely on external downloads.
v0.16.6-alpha
Added
- Validation error details for status code 400 in
ValidationErrorResponse
. If validation error details are available,
they are returned to the client, describing which field(s) are invalid, instead of a generic error description.
Fixed
- Remote button mapping: assign a custom IR command is no longer rejected.
v0.16.5-alpha
Added
- IntegrationState enum instead of untyped string.
- Add pwd_protected field to IntegrationDriver object.
Fixed
- Clear integration driver discovery data only at discovery restart, not when stopping it.
v0.16.4-alpha
Added
- Save integration at end of integration setup flow. The setup flow cannot be started again if the integration already exists.
Fixed
- Virtual docks (model
UCD2_VIRTUAL
) are always connected and don't return errors when sending commands. - IntegrationState enum instead of untyped string
v0.16.3-alpha
Added
- REST Core-API v0.16 integration setup flow:
- Integration discovery with
/intg/discover
endpoints. - Integration setup with
/intg/setup
endpoints. - Integration driver connection test command.
- State field in integration driver & instance data objects. The state was only returned in
GET /intg
until now.
- Integration discovery with
- Demo integration setup flows in Simulator:
- The simulator defines a few integration drivers with setup data schemas & icons. See Postman collection examples
defined inintegrations/setup
. - Defined external drivers in discovery:
sim-foobar
: requires driver setup data, without setup flow user interactionsim-test
: no driver setup data, user input screen with single text inputsim-intg
: no driver setup data, user input screen during setup flow with dropdown, text, number inputs
- Defined local drivers:
uc:bo
: no driver setup data, without setup flow user interactionuc:homey
: requires driver setup data, without setup flow user interactionuc:hue
: no driver setup data, with user confirmation page in setup flow
⚠️ After a successful integration setup flow the integration instance is not yet persisted! This will be implemented
in a future release.
- The simulator defines a few integration drivers with setup data schemas & icons. See Postman collection examples
- WS Core-API v0.12:
integration_discovery
&integration_setup_change
event messages.
- Include a set of default icons for integrations and background images, accessible with
/resources/:type
.
⚠️ Delete old Docker volume to enable the included resource files.
Changed
- REST Core-API integration handling:
- Refactored integration overview data returned in
GET /intg
: commonstate
property. - Manual driver registration now fetches metadata from running driver, instead of providing all data during registration.
- Move
PUT /intg
operation to connect / disconnect integrations to/intg/instances
. - Declare
enabled
flag for development use only.
- Refactored integration overview data returned in
v0.15.6-alpha
Changed
- REST Core-API: manually set up a dock with the dock setup flow
- CreateDockSetup is now a oneOf object for either a discovered dock (same structure as before) or a manual setup.
- Manual setup uses the existing
DockSetup
object in thePOST /docks/setup
request and then automatically starts
the setup process without callingPUT /docks/setup/:dockId
.
- If a dock setup process is already running, it can't be aborted with another POST request and returns 409.
v0.15.5-alpha
Changed
- Use uppercase dock state enum values to use same naming pattern as for entities and integrations.
- IDLE
- CONNECTING
- CONNECTED
- AUTHENTICATED
- DISCONNECTED
- CLOSING
- ERROR