Commit graph

3277 commits

Author SHA1 Message Date
36dd645209
Use session.playlist instead of session.user.playlist to query playlists 2022-09-18 06:04:53 +02:00
61cda60751
Proper implementation for Tidal's add_to_playlist and remove_from_playlist methods
- Using tidalapi's `UserPlaylist.add` and `UserPlaylist.delete` methods
  instead of defining my own through `_api_request`, so we won't have to
  deal with the logic to set the ETag header.

- Added `remove_from_playlist` method.
2022-09-18 05:22:12 +02:00
7c610adc84
FIX: Apply expanduser to the credentials_file setting in music.tidal 2022-09-17 06:30:20 +02:00
a9ebb4805a
Fixed doc warnings 2022-09-17 06:25:28 +02:00
1b405de0d5
Added missing docs 2022-09-17 06:09:39 +02:00
e1aa214bad tidal-integration (#223)
Reviewed-on: platypush/platypush#223
2022-09-16 21:48:09 +02:00
41acf4b253
Generate event ID as true random strings, not MD5 hashes of UUIDs 2022-09-05 03:08:39 +02:00
c77746e278 If the output of a hook is null, make sure to normalize it an empty string before pushing it to Redis 2022-09-04 16:16:02 +02:00
4682fb4210
Throw an assertion error when on_duplicate_update is specified on db.insert with no key_columns 2022-09-04 16:02:37 +02:00
0143dac216
Improved support for bulk database statements
- Wrapped insert/update/delete operations in transactions
- Proper (and much more efficient) bulk logic
- Better upsert logic
- Return inserted/updated records if the engine supports it
2022-09-04 13:30:35 +02:00
a90aa2cb2e Make sure that a webhook function never returns a null response 2022-09-04 00:52:41 +02:00
1ea53a6f50
Support for query placeholders in db.select 2022-09-04 00:28:08 +02:00
e77d6a4ad4 Merge pull request 'Add support for OPML import and export in the RSS plugin' (#220) from 219-opml-import-export into master
Reviewed-on: platypush/platypush#220
2022-09-02 00:24:37 +02:00
61c96612bc Merge branch 'master' into 219-opml-import-export 2022-09-02 00:23:57 +02:00
6c6e68b512
Added support for OPML import and export in the RSS plugin.
[closes #219]
2022-09-02 00:21:40 +02:00
a286cf5000 Updated PopcornTime base URL 2022-09-01 11:13:16 +02:00
c5b12403d0
Implemented support for returning richer HTTP responses on webhooks.
A `WebhookEvent` hook can now return a tuple in the format `(data,
http_code, headers)` in order to customize the HTTP status code and the
headers of a response.
2022-09-01 01:37:18 +02:00
96b2ad148c
A smarter way of building and matching the event condition 2022-08-31 02:19:21 +02:00
67413c02cd
Handle the case where the condition is a serialized dictionary 2022-08-31 01:55:21 +02:00
db45d7ecbf
FIX: More robust logic against section configurations that may not be maps 2022-08-31 01:27:53 +02:00
a675fe6a92
Updated CHANGELOG 2022-08-31 00:49:08 +02:00
c3fa3315f5
Implemented synchronization with webhook responses.
When a client triggers a `WebhookEvent` by calling a configured webhook
over `/hook/<hook_name>`, the server will now wait for the configured
`@hook` function to complete and it will return the returned response
back to the client.

This makes webhooks much more powerful, as they can be used to proxy
HTTP calls or other services, and in general return something to the
client instead of just executing actions.
2022-08-30 23:35:19 +02:00
1880a99052
Merge branch 'master' into 191-support-for-general-entities-backend-and-plugin 2022-08-29 01:41:47 +02:00
e08947a3b7
Merge pull request #311 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/terser-5.14.2
Bump terser from 5.12.1 to 5.14.2 in /platypush/backend/http/webapp
2022-08-29 00:59:55 +02:00
6d63d2fc74
Merge pull request #305 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/shell-quote-1.7.3
Bump shell-quote from 1.7.2 to 1.7.3 in /platypush/backend/http/webapp
2022-08-29 00:59:19 +02:00
540a7d469e
- Fixed documentation errors and warnings
- Split Matrix integration into `plugin` and `client` files.
2022-08-29 00:55:46 +02:00
b11a0e8bbb
Bump version: 0.23.3 → 0.23.4 2022-08-28 15:27:54 +02:00
f4360dc0e0 Merge pull request 'Matrix Integration' (#217) from matrix-integration into master
Reviewed-on: platypush/platypush#217

Closes: #2
2022-08-28 15:21:05 +02:00
ba68341d28 Merge branch 'master' into matrix-integration 2022-08-28 15:19:58 +02:00
4308024eef
Added missing docs 2022-08-28 15:18:23 +02:00
c417d2f692
Implemented last Matrix integration features.
- Added presence, typing and seen receipt events.
- Added set display_name and avatar methods.
2022-08-28 15:17:11 +02:00
e479ca7e3e
Completing the Matrix plugin integration
Newly implemented actions:

- `get_messages`
- `get_room_members`
- `update_device`
- `delete_devices`
- `room_alias_to_id`
- `add_room_alias`
- `delete_room_alias`
- `kick`
- `ban`
- `unban`
- `forget`
2022-08-28 12:26:27 +02:00
0e3cabc5f6
Support attribute parameter on Function schema fields. 2022-08-28 11:55:30 +02:00
d890b6cbe8
Added create_room action 2022-08-27 23:26:42 +02:00
912168626c
Added join_room, leave_room and invite_to_room and extended handling on invitation events 2022-08-27 21:50:48 +02:00
513195b396
Implemented support for file upload 2022-08-27 15:12:50 +02:00
48ec6ef68b
Implemented proper support for encrypted media and added download method 2022-08-26 23:48:29 +02:00
e4eb4cd7dc
More granular control over trusted devices, and added global synchronization event 2022-08-25 00:34:01 +02:00
550f026e13
Cleaner logging for assertion errors in plugin actions 2022-08-25 00:30:53 +02:00
c89c712928
Fixed device trust process 2022-08-24 01:49:43 +02:00
05908e1a77
Fixing key verification process 2022-08-17 10:28:31 +02:00
c04bc8d2bc
The matrix plugin joins the AsyncRunnablePlugin family too 2022-08-15 02:18:29 +02:00
2797ffbe53
The websocket plugin now extends AsyncRunnablePlugin too 2022-08-15 02:18:29 +02:00
770a14daae
ntfy plugin migrated to AsyncRunnablePlugin.
This commit removes a lot of the loop management boilerplate.
2022-08-15 02:18:29 +02:00
dba03d3e33
Added AsyncRunnablePlugin class.
This class handles runnable plugins that have their own asyncio event
loop, without the pain usually caused by the management of multiple
threads + asyncio loops.
2022-08-15 02:18:28 +02:00
f4672ce5c3
Refactored concurrency model in ntfy plugin 2022-08-15 02:18:28 +02:00
9e2b4a0043
Removed references to deprecated websockets attributes 2022-08-15 02:18:28 +02:00
4e3c6a5c16
The websocket plugin now extends AsyncRunnablePlugin too 2022-08-15 02:17:05 +02:00
e17e65a703
ntfy plugin migrated to AsyncRunnablePlugin.
This commit removes a lot of the loop management boilerplate.
2022-08-15 02:17:05 +02:00
3b1ab78268
Added AsyncRunnablePlugin class.
This class handles runnable plugins that have their own asyncio event
loop, without the pain usually caused by the management of multiple
threads + asyncio loops.
2022-08-15 02:17:05 +02:00