0.4.0
Got a few bug fixes and a new feature.
Device ID changes:
We changed how the Device ID is handled. The documentation was wrong in saying that you can manually set one. This is not the case and it must be generated by the server. If you use shared secret registration the server will provide you with a device_id
that you can use. If you do not have one leave this blank and it will be automatically generated and stored internally (the field when editing the server config will always show blank in this case). If you provide a Device ID it will over-write the internally stored one. If you need to clear the Device ID (such as to reset E2E) you need to delete the matrix-client-storage/<your_user_id>/my_device_id
file to reset this (and also make sure your server config's Device ID is blank).
If you left the Device ID blank previously it would generate a new one every time the client started. This would cause encryption to break as your keys are attached to your Device ID. We now store this internally so we can use the same device every time the client reconnects. This means the Device ID is no longer required and all you need to provide is the access token.
Fixes:
- Device ID fix mentioned above
- matrix-join-room node was requiring
msg.userId
when it didn't need it. Closes #39 - Example readme linking to wrong json file. Closes #38
- Reactions were not working due to
sendCompleteEvent
being a private method. Closes #41 - If invalid auth token is used we now validate it before starting the client. This will prevent Node-RED from crashing.
New feature:
- You can now get an access token and device ID from just a user id and password. When you are setting up a matrix server connection node fill in these details and click "Update Access Token" and it will auto fill this in for you. This should make setting up on a server you are not an administrator quite a bit easier. Note: Your password is never stored and is only used for fetching an access token and device ID.