b8215d2736
A more robust cron start logic
...
If may happen (usually because of a race condition) that a cronjob has
already been started, but it hasn't yet changed its status from IDLE to
RUNNING when the scheduler checks it.
This fix guards the application against such events. If they occur, we
should just report them and move on, not terminate the whole scheduler.
2022-10-27 10:45:59 +02:00
a5db599268
FIX: Skip empty lines on config.include
2022-10-14 20:56:18 +02:00
b88983f055
Added qos
argument to mqtt.publish
.
2022-10-05 01:13:47 +02:00
85f583a0ad
Reduced :maxdepth: of toctree in documentation.
...
Recent versions of Sphinx get a bit too zealous about generating deeply
nested toctrees.
2022-09-30 11:47:19 +02:00
fed7c2c6ff
Fixed typo in schema path
2022-09-30 11:30:57 +02:00
1d78c3e753
FIX: Broken docstring
2022-09-30 10:56:08 +02:00
00d47731c5
Merge pull request 'Mimic3 integration' ( #227 ) from 226-mimic3-integration into master
...
Reviewed-on: platypush/platypush#227
2022-09-30 10:52:53 +02:00
ae226a5b01
Added tts.mimic3
integration.
...
Closes : #226
2022-09-30 10:51:17 +02:00
fef7aff245
LINT fixes for mpv plugin
2022-09-30 10:41:56 +02:00
82ab7face2
A more robust logic to detect the webserver local bind address
2022-09-30 03:10:37 +02:00
3ed10092ae
Merge pull request 'Wallabag integration' ( #225 ) from 222-wallabag-integration into master
...
Reviewed-on: platypush/platypush#225
2022-09-29 10:52:16 +02:00
4bab9d2607
[ #224 ] Implemented Wallabag integration
2022-09-29 10:51:16 +02:00
a0575ed6de
Bump version: 0.23.5 → 0.23.6
2022-09-19 20:41:02 +02:00
3d74f0a11f
Updated CHANGELOG
2022-09-19 20:40:54 +02:00
09baceab4b
Include album_id and the list of tracks in music.tidal.get_album
2022-09-19 20:39:21 +02:00
c2a3f2f4f3
Bump version: 0.23.4 → 0.23.5
2022-09-18 19:55:05 +02:00
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
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
4043878afd
Refactored concurrency model in ntfy plugin
2022-08-15 02:16:25 +02:00
2e7f3d8868
Removed references to deprecated websockets attributes
2022-08-12 15:22:04 +02:00
dc7ba881f1
Merge branch 'master' into matrix-integration
2022-08-12 14:39:13 +02:00
4e1e6da67e
Added recv action on websocket plugin
2022-08-12 14:16:01 +02:00
354f3906f9
Changed autojoin_on_invite default value
2022-08-12 00:11:15 +02:00
7ab02e705d
Removed redundant _action_wrapper decorator
2022-08-05 19:04:43 +02:00
99de5318ff
Merge pull request #313 from BlackLight/snyk-upgrade-58f5a7acf019c661bec911d06f0bf10a
...
[Snyk] Upgrade core-js from 3.21.1 to 3.23.4
2022-08-05 13:26:25 +02:00
b3bab9b1d8
Merge pull request #314 from BlackLight/snyk-upgrade-9823d0f9eee2d94f4547598322ba6a48
...
[Snyk] Upgrade vue-router from 4.0.14 to 4.1.2
2022-08-05 13:26:07 +02:00
7e4877c793
Merge pull request #315 from BlackLight/snyk-upgrade-30cde2b595c9da96da481c691c0964d5
...
[Snyk] Upgrade sass from 1.49.9 to 1.53.0
2022-08-05 13:23:38 +02:00
55602cc282
Merge branch 'master' into snyk-upgrade-30cde2b595c9da96da481c691c0964d5
2022-08-05 13:05:25 +02:00
d2053a012a
Merge pull request #316 from BlackLight/snyk-upgrade-ba00badb7e42a7b25417256efb18f67b
...
[Snyk] Upgrade sass-loader from 10.2.1 to 10.3.1
2022-08-05 13:03:46 +02:00
snyk-bot
3d5fc9a10b
fix: upgrade sass-loader from 10.2.1 to 10.3.1
...
Snyk has created this PR to upgrade sass-loader from 10.2.1 to 10.3.1.
See this package in npm:
https://www.npmjs.com/package/sass-loader
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2022-08-04 20:31:51 +00:00
snyk-bot
be4dd48d76
fix: upgrade sass from 1.49.9 to 1.53.0
...
Snyk has created this PR to upgrade sass from 1.49.9 to 1.53.0.
See this package in npm:
https://www.npmjs.com/package/sass
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2022-08-04 20:31:45 +00:00
snyk-bot
bd21779a17
fix: upgrade vue-router from 4.0.14 to 4.1.2
...
Snyk has created this PR to upgrade vue-router from 4.0.14 to 4.1.2.
See this package in npm:
https://www.npmjs.com/package/vue-router
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2022-08-04 20:31:33 +00:00
snyk-bot
58afc1090c
fix: upgrade core-js from 3.21.1 to 3.23.4
...
Snyk has created this PR to upgrade core-js from 3.21.1 to 3.23.4.
See this package in npm:
https://www.npmjs.com/package/core-js
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2022-08-04 20:31:28 +00:00
cbe2e7bbfe
[WIP]
2022-08-04 03:08:54 +02:00
c17d0080b5
Merge branch 'master' into matrix-integration
2022-08-04 02:14:22 +02:00
7c87238fec
match_condition should return immediately (no score-based fuzzy search) if an event condition is an exact match
2022-08-04 01:04:00 +02:00
55671f4aff
If a request on a RunnablePlugin throws an exception then we should also restart the plugin upon reload
...
Plus some Black/LINT chores
2022-07-25 00:41:08 +02:00
c32142c8b5
Added wait_stop() method to RunnablePlugin
2022-07-23 17:33:23 +02:00
32be4df11c
More robust way to retrieve an object's attribute on schemas
2022-07-23 17:32:14 +02:00
dependabot[bot]
c7927a3d2f
Bump terser from 5.12.1 to 5.14.2 in /platypush/backend/http/webapp
...
Bumps [terser](https://github.com/terser/terser ) from 5.12.1 to 5.14.2.
- [Release notes](https://github.com/terser/terser/releases )
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md )
- [Commits](https://github.com/terser/terser/commits )
---
updated-dependencies:
- dependency-name: terser
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 00:35:29 +00:00
3edb8352b4
Support sections with empty bodies in the YAML configuration files.
2022-07-16 02:09:22 +02:00
cc29136db7
[ #2 ] Support for caching rooms info and exposing them in the events
2022-07-15 00:37:21 +02:00
719bd4fddf
[ #217 WIP] Initial plugin implementation.
...
- Added initial synchronization and users cache.
- Added loop to poll for new events (TODO: use websocket after the first sync)
- Added login, sync and join actions
2022-07-14 01:50:46 +02:00
cbf8ba7fdd
Updated wiki URLs and replaced Gitlab references with Gitea
2022-07-06 22:01:25 +02:00
dependabot[bot]
06168d4ebd
Bump shell-quote from 1.7.2 to 1.7.3 in /platypush/backend/http/webapp
...
Bumps [shell-quote](https://github.com/substack/node-shell-quote ) from 1.7.2 to 1.7.3.
- [Release notes](https://github.com/substack/node-shell-quote/releases )
- [Changelog](https://github.com/substack/node-shell-quote/blob/master/CHANGELOG.md )
- [Commits](https://github.com/substack/node-shell-quote/compare/v1.7.2...1.7.3 )
---
updated-dependencies:
- dependency-name: shell-quote
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-06-23 11:29:13 +00:00
c6c7128099
Wrapped clipboard management logic in a try-except block to prevent the clipboard plugin from failing hard
2022-06-14 16:47:52 +02:00
1a316bc3a6
Added reference to the Matrix channel
2022-06-14 09:41:14 +02:00
5966566d54
Fixed LGTM warnings
2022-06-10 20:56:40 +02:00
8d26c8634d
Keep the ntfy process in stop_wait state even when the plugin is configured with no subscriptions
2022-06-09 11:59:29 +02:00
1da17fca35
Print invalid rules to help debug broken configurations
2022-06-08 15:34:14 +02:00
35cb72f5aa
Do a lazy plugin initialization in the Variable class
...
This is useful for two reason:
1. Slightly faster variable initialization times.
2. The cached variable object won't fail on the next `.get()`/`.set()`
if the `db` or `redis` plugins have failed for some reason.
2022-06-07 00:04:29 +02:00
115bed7d8b
Added limit parameter to lastfm.get_similar_tracks
2022-06-06 14:12:45 +02:00
3d22d6b082
Added get_track and get_similar_tracks methods on lastfm
plugin
2022-06-05 18:49:34 +02:00
5971ec32c8
Removed clipboard
backend.
...
The relevant clipboard monitoring logic has been moved to the
`clipboard` plugin. Thus, enabling the plugin should provide all the
feature, with no need for an additional backend.
2022-06-04 12:32:02 +02:00
7e31ac6ed8
Added missing web build files
2022-06-02 23:41:50 +02:00
c9f435a6cb
Added support for ntfy notification on the frontend (just like Pushbullet)
2022-06-02 23:36:43 +02:00
cb7021152f
Added get_recent_tracks
method to the lastfm
plugin
2022-06-02 20:57:35 +02:00
d3f4865395
Fixed variable name conflict
2022-06-02 01:44:38 +02:00
f080478385
s/click_url/url/g in ntfy message definitions
2022-06-02 00:40:26 +02:00
b857ce60a7
Bump version: 0.23.2 → 0.23.3
2022-06-01 23:08:32 +02:00
af483cade3
Merge branch '219-ntfy-integration' into 'master'
...
ntfy integration
Closes #219
See merge request platypush/platypush!14
2022-06-01 23:07:37 +02:00
8be515c17b
[ closes #219 ] Added ntfy integration
2022-06-01 23:01:29 +02:00
239025290d
--redis-queue argument should be a string
2022-05-25 10:11:29 +02:00
2e2169544d
Added Matrix chat badge and instructions for installation on Arch Linux
2022-05-23 00:09:23 +02:00
7a0e39111d
FIX: A feed entry may not necessarily have an id
attribute
2022-05-06 14:38:25 +02:00
2cd7ae9513
Merge pull request #288 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/async-2.6.4
...
Bump async from 2.6.3 to 2.6.4 in /platypush/backend/http/webapp
2022-04-29 16:52:07 +02:00
55958c1b57
[ #217 ] Casting get_next
to datetime
to prevent DST issues
2022-04-28 23:29:45 +02:00
e9454b0c0f
Merge branch '217-cron-decorated-function-are-off-after-dst-change' into 'master'
...
Resolve "@cron decorated function are off after DST change"
Closes #217
See merge request platypush/platypush!13
2022-04-28 01:14:18 +02:00
ba23eb7280
Small LINT fix
2022-04-28 01:04:30 +02:00
41d0725ebf
Fix for #217
...
The cron scheduler has been made more robust against changes in the
system clock (caused by e.g. DST changes, NTP syncs or manual setting).
A more granular management for cronjob events has been introduced, now
supporting a `TIME_SYNC` event besides the usual `STOP`. When the cron
scheduler detects a system clock drift (i.e. the timestamp offset before
and after a blocking wait is >1 sec) then all the cronjobs are notified
and forced to refresh their state.
2022-04-28 00:57:49 +02:00
820a1c8184
Don't raise a pytest warning upon the asyncio "No event loop" warning
2022-04-27 23:25:14 +02:00
dependabot[bot]
5929602c15
Bump async from 2.6.3 to 2.6.4 in /platypush/backend/http/webapp
...
Bumps [async](https://github.com/caolan/async ) from 2.6.3 to 2.6.4.
- [Release notes](https://github.com/caolan/async/releases )
- [Changelog](https://github.com/caolan/async/blob/v2.6.4/CHANGELOG.md )
- [Commits](https://github.com/caolan/async/compare/v2.6.3...v2.6.4 )
---
updated-dependencies:
- dependency-name: async
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-27 12:55:03 +00:00
fee5fc4ae0
HTTP backend dependencies moved from optional to required
...
If Platypush is supposed to work also without a manually created
`config.yaml`, and the HTTP backend is enabled by default in that
configuration, then Flask and companions should be among the required
dependencies.
2022-04-27 14:52:41 +02:00
371fd7e46b
Generate a default config.yaml if none is present instead of failing
2022-04-27 13:57:42 +02:00
da73a5f1b9
Replaced deprecated json_output arg in NextCloud client with response.json_data
2022-04-26 19:30:26 +02:00
a80adc996f
[WIP] Default config.yaml in case a configuration file is missing in the default locations
2022-04-25 16:54:26 +02:00
12887b61fe
Don't fail hard if the Linode API doesn't return a list of instances
2022-04-25 14:02:40 +02:00
ca25607262
Skip string and underscore normalization in black
2022-04-04 20:55:10 +02:00
1b30bfc454
Added more pre-commit hooks
2022-04-04 17:21:47 +02:00
486801653a
Added .exception
action to logger plugin
2022-04-03 00:26:39 +02:00
f7c594cc3f
get_bus() should return a default RedisBus() instance if the main bus is not registered
2022-04-02 22:47:23 +02:00
b1491b8048
Better style for scrollbars
2022-03-30 17:42:09 +02:00
96a2d8bef0
Fixed size for nav icons with static images
2022-03-30 13:53:10 +02:00
e261dcc27a
More UI fixes
2022-03-30 01:43:59 +02:00
d0790aaba3
Better style for toggle switches
2022-03-29 23:45:57 +02:00
bb28617cc9
Refactored slider and range-slider components
2022-03-29 14:36:17 +02:00
e1e6da9307
Fixed icon size for img tags in nav bar
2022-03-28 16:00:18 +02:00
f6ce0d7200
Fixed broken paddings after bulma removal
2022-03-28 13:13:31 +02:00
ed5f7070a2
Removed bulma dependency from frontend
...
The UI is now much faster, the build process completes within one minute
(it used to take >15 minutes), and the size of the bundles has been
reduced by ~70%.
2022-03-28 12:54:36 +02:00
5ee47902f4
Refactored camera stream route
2022-03-28 12:44:04 +02:00
128b45686a
Updated Vue dependencies for the webapp
2022-03-28 01:19:21 +02:00
3d192a9733
Removed unused import
2022-03-27 22:01:25 +02:00
08acaad218
Merge pull request #284 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/minimist-1.2.6
...
Bump minimist from 1.2.5 to 1.2.6 in /platypush/backend/http/webapp
2022-03-27 18:36:51 +02:00
385914c04a
Added missing docs for gpio events
2022-03-27 18:30:46 +02:00
dependabot[bot]
b72c9a19ae
Bump minimist from 1.2.5 to 1.2.6 in /platypush/backend/http/webapp
...
Bumps [minimist](https://github.com/substack/minimist ) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases )
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6 )
---
updated-dependencies:
- dependency-name: minimist
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-03-27 14:45:19 +00:00
2e33d3b3c5
Bump version: 0.23.1 → 0.23.2
2022-03-27 16:43:36 +02:00
c5395cc9e5
Merge branch '212-starting-cronjob-with-high-pin' into 'master'
...
Resolve "Starting Cronjob with High Pin"
Closes #212
See merge request platypush/platypush!11
2022-03-27 16:30:54 +02:00
88846aa8f8
Updated CHANGELOG
2022-03-27 16:28:26 +02:00
ffd23cf04d
[ #212 ] Support for asynchronous event monitoring on the GPIO plugin
2022-03-27 16:14:30 +02:00
34e1e673e8
CHANGELOG update and LINT fixes
2022-03-12 02:04:07 +01:00
c3934e2a7e
Script API for platform variables [ closes #206 ]
...
Added utility `platypush.context.Variable` class to simplify the
interaction with platform variables in custom Python scripts.
2022-03-12 01:51:18 +01:00
b3b2a7a805
Generating the README TOC via pre-commit script [ closes #209 ]
2022-03-09 23:43:10 +01:00
747e7f3e5d
Fixed table of contents in README [ closes #209 ]
2022-03-09 21:35:47 +01:00
fdf6d8fb4e
Better auto-generated documentation and fixed docstring warnings
2022-03-03 20:26:25 +01:00
7c9e9d284d
Bump version: 0.23.0 → 0.23.1
2022-03-01 12:50:31 +01:00
19a1e9c626
Updated CI/CD pipeline - now using repo tokens to push new releases to pypi
2022-03-01 12:50:13 +01:00
c0039c3f87
Bump version: 0.22.10 → 0.23.0
2022-03-01 01:33:43 +01:00
0d0797a465
Added Jellyfin integration
2022-03-01 01:32:50 +01:00
0b293ff214
gitignore
2022-02-21 22:23:40 +01:00
75ad537155
Merge pull request #273 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/url-parse-1.5.7
...
Bump url-parse from 1.5.4 to 1.5.7 in /platypush/backend/http/webapp
2022-02-20 00:24:58 +01:00
dependabot[bot]
0324eb9f6b
Bump url-parse from 1.5.4 to 1.5.7 in /platypush/backend/http/webapp
...
Bumps [url-parse](https://github.com/unshiftio/url-parse ) from 1.5.4 to 1.5.7.
- [Release notes](https://github.com/unshiftio/url-parse/releases )
- [Commits](https://github.com/unshiftio/url-parse/compare/1.5.4...1.5.7 )
---
updated-dependencies:
- dependency-name: url-parse
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-19 16:39:08 +00:00
e3f67766a3
Proper fix for variable arguments on process_data
2022-02-17 12:43:56 +01:00
1933ec709f
FIX: Proper fix for process_data taking a variable number of arguments
2022-02-17 11:50:04 +01:00
71cb73cf63
FIX: The CN of the organizer may not necessarily be set in calendar.ical
2022-02-17 10:55:35 +01:00
94bb3e0541
Added TOC to readme and more LGTM fixes
2022-02-09 21:06:49 +01:00
29a7eff15a
Fixed/suppressed LGTM warnings
2022-02-08 21:51:37 +01:00
d13e4fc271
Merge pull request #240 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/axios-0.21.2
...
Bump axios from 0.21.1 to 0.21.2 in /platypush/backend/http/webapp
2022-02-07 21:41:29 +01:00
6e0c249b7e
Merge pull request #267 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/url-parse-1.5.4
...
Bump url-parse from 1.5.1 to 1.5.4 in /platypush/backend/http/webapp
2022-02-07 21:40:24 +01:00
2944a77f93
Merge pull request #265 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/nanoid-3.2.0
...
Bump nanoid from 3.1.23 to 3.2.0 in /platypush/backend/http/webapp
2022-02-07 21:39:06 +01:00
dependabot[bot]
5b666814d5
Bump nanoid from 3.1.23 to 3.2.0 in /platypush/backend/http/webapp
...
Bumps [nanoid](https://github.com/ai/nanoid ) from 3.1.23 to 3.2.0.
- [Release notes](https://github.com/ai/nanoid/releases )
- [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ai/nanoid/compare/3.1.23...3.2.0 )
---
updated-dependencies:
- dependency-name: nanoid
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 20:38:55 +00:00
dependabot[bot]
21ad599a08
Bump url-parse from 1.5.1 to 1.5.4 in /platypush/backend/http/webapp
...
Bumps [url-parse](https://github.com/unshiftio/url-parse ) from 1.5.1 to 1.5.4.
- [Release notes](https://github.com/unshiftio/url-parse/releases )
- [Commits](https://github.com/unshiftio/url-parse/compare/1.5.1...1.5.4 )
---
updated-dependencies:
- dependency-name: url-parse
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 20:37:56 +00:00
782c198311
Merge pull request #266 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/follow-redirects-1.14.7
...
Bump follow-redirects from 1.14.1 to 1.14.7 in /platypush/backend/http/webapp
2022-02-07 21:37:09 +01:00
08b3cddb7b
Added missing docs for dbus events
2022-02-07 21:29:21 +01:00
530245733c
FIX: Fixed defusedxml module mock definition in docs/conf.py
2022-02-07 20:47:56 +01:00
dependabot[bot]
1662873e54
Bump follow-redirects in /platypush/backend/http/webapp
...
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects ) from 1.14.1 to 1.14.7.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases )
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.1...v1.14.7 )
---
updated-dependencies:
- dependency-name: follow-redirects
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 15:00:43 +00:00
42ee149b95
Bump version: 0.22.9 → 0.22.10
2022-02-07 15:59:20 +01:00
1038090ffd
LINT fixes
2022-02-07 15:51:12 +01:00
786286eac6
Refactored D-Bus integration
...
- Added ability to listen for signals
- Improved introspection output
- `dbus` plugin and backend have now been merged
- Migrated from `dbus` to `pydbus`
2022-02-07 15:45:43 +01:00
1914322fda
FIX: get_plugin methods should never swallow errors in case of failed initialization
2022-02-07 01:47:38 +01:00
e4eb12fa6d
LINT warning fixes
2022-01-23 14:25:00 +01:00
c534adf31f
varname typo fix
2022-01-17 16:39:40 +01:00
0c423e3809
FIX: SensorDataChangeEvent trigger logic
...
The event should be skipped only if new_data is null or an empty,
list/object, not if it contains
a zero/false-y value.
2022-01-17 16:38:43 +01:00
6656bb4ce5
Revert "Support for SSL flag on MQTT plugins without having to specify other tls_* options"
...
This reverts commit f3be4a50d8
.
2022-01-14 21:53:24 +01:00
f3be4a50d8
Support for SSL flag on MQTT plugins without having to specify other tls_* options
2022-01-14 21:39:16 +01:00
a6b552504e
FIX: Use a separate error handler for the Pushbullet backend that doesn't raise another exception (prevents maximum recursion errors in the logs caused by the interpreter entering an infinite loop of error handlers)
2022-01-08 19:52:41 +01:00
833e1c49be
Bump version: 0.22.8 → 0.22.9
2022-01-06 14:08:55 +01:00
a46ce79f0a
Added guard against null variable names
2022-01-06 00:58:14 +01:00
e9f6d9a8bc
Refactored RSS integration into its own rss
plugin [ closes #199 ]
2022-01-06 00:46:05 +01:00
3e4b91cd6c
Removed pytz dependency
2022-01-05 18:04:32 +01:00
e242dc53bf
FIX: All timestamps should be isoformat strings, otherwise come comparisons may break
2022-01-05 13:39:13 +01:00
ee0b6d237a
FIX: Timestamps on calendar parsed objects should be of type string, not datetime
2022-01-05 13:35:10 +01:00
9ba2c18595
Better logic for timezone handling/conversion in calendar plugin
2022-01-05 13:31:07 +01:00
0a3fd4065a
Proper implementation for filesystem monitor filters
...
The logic Watchdog applies to filter events based
on `ignore_directories`, `ignore_patterns` and
`ignore_regexes` isn't really sophisticated, and
it doesn't check whether a partial directory/file
name is used in one of the `ignore_*` patterns.
The `file.monitor` backend should therefore implement
this logic on its side.
2021-12-20 00:58:41 +01:00
e94d338de5
Proper handling for ignore_directories in file.monitor backend
2021-12-19 02:28:49 +01:00
081da3eb84
Bump version: 0.22.7 → 0.22.8
2021-12-13 21:21:42 +01:00
1569f940c6
FIX: had accidentally removed an on_mqtt_message
usage
2021-12-13 21:21:12 +01:00
6df9cbcf3c
Bump version: 0.22.6 → 0.22.7
2021-12-13 20:47:50 +01:00
e98aa63110
Updated CHANGELOG
2021-12-13 20:46:21 +01:00
fa0f4925ed
New client ID generation logic ( closes #205 )
...
MQTT client IDs are now generated as a function of
`(client_id, host, port, topics, on_message)` to
prevent client ID clashes.
2021-12-13 20:34:06 +01:00
fa708663e1
Replaced command-line uwsgi wrapper in the backend.http docs with gunicorn
...
gunicorn makes it easier to set up a uWSGI wrapper
around the web application, and it's easier to
install and document than handling uwsgi as an
external system dependency.
2021-12-11 22:44:00 +01:00
20fc3d91fc
Updated Chromecast plugin to work with pychromecast >= 10.0
...
pychromecast 10.0 introduced some [breaking changes](https://github.com/home-assistant-libs/pychromecast/pull/556/files )
in the declaration of the Chromecast object -
namely, the `device` attribute has been renamed to
`cast_info`. The code of ChromecastPlugin has been
updated to guarantee compatibility in both cases.
2021-12-11 22:14:47 +01:00
2560bfa03f
Plex searcher extended to include also audio tracks
2021-12-04 00:08:47 +01:00
46d8d575ba
Handle and log media workers search errors
2021-12-03 21:54:41 +01:00
f478e1ff40
Added libcap-dev to build requirements for Ubuntu Docker images
2021-11-28 22:40:04 +01:00
Fabio Manganiello
6023fd3db3
Given the new object-oriented design of the LTR559 library, the sensor object should be initialized in __init__ and read upon get_measurement()
2021-11-28 15:11:20 +01:00
Fabio Manganiello
f6057274a0
Variable name fix
2021-11-28 11:32:03 +01:00
Fabio Manganiello
2d9dff7d4c
Fixed LTR559 integration after a change in the core library interface
2021-11-28 11:25:41 +01:00
f74ca28382
Bump version: 0.22.5 → 0.22.6
2021-11-27 10:56:28 +01:00
e615891bf3
Fixed missed assignment
2021-11-27 02:00:43 +01:00
02b5ec1d38
Fixed regex typo
2021-11-27 01:43:57 +01:00
2914a74b75
Replace relative links in converted markdown
2021-11-27 01:19:55 +01:00
1e1bf46f32
Fixed handling of URLs on Pushbullet notes
2021-11-26 19:07:44 +01:00
848b736d6e
Support for output format type on http.webpage.simplify even when outfile is not specified
2021-11-26 19:07:15 +01:00
f9f9c38a8b
Improved robustness of ICal event parser
2021-11-21 23:50:35 +01:00
518d9f20c6
Added docs for config plugin
2021-11-17 23:59:17 +01:00
40903393df
Removed pydoc of internal plugin methods that were propagated to the docs of all the derived plugins
2021-11-15 01:57:44 +01:00
d5cddc23fa
Fixed autodoc indentation
2021-11-15 01:21:31 +01:00
ea3b49a17f
Use inherited-members: true in autodoc_default_options to ensure documentation of inherited actions
2021-11-15 01:05:53 +01:00
adb9672989
Bump version: 0.22.4 → 0.22.5
2021-11-15 00:12:42 +01:00
b432488876
Prevent null pointer on music.spotify backend stop if the Librespot process has already been terminated
2021-11-15 00:10:40 +01:00
65d4740cd7
Merge branch '201-mailgun-integration' into 'master'
...
Resolve "Mailgun integration"
Closes #201
See merge request platypush/platypush!10
2021-11-14 22:42:45 +01:00
6ba3128ac4
[ #201 ] Added Mailgun integration
2021-11-14 22:40:59 +01:00
82fe4d93f3
Merge branch '203-irc-integration' into 'master'
...
Resolve "IRC integration"
Closes #203
See merge request platypush/platypush!9
2021-11-14 19:47:18 +01:00
d7b273434b
[ #203 ] Added IRC integration
2021-11-14 19:43:19 +01:00
dependabot[bot]
5491682543
Bump axios from 0.21.1 to 0.21.2 in /platypush/backend/http/webapp
...
Bumps [axios](https://github.com/axios/axios ) from 0.21.1 to 0.21.2.
- [Release notes](https://github.com/axios/axios/releases )
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md )
- [Commits](https://github.com/axios/axios/compare/v0.21.1...v0.21.2 )
---
updated-dependencies:
- dependency-name: axios
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-11-07 10:46:07 +00:00
3ef602cc0b
Fixed typo in AVS repo URL [ closes #204 ]
2021-11-07 11:45:04 +01:00
195ae5c488
Create application ngrok tunnel method moved to utils
2021-11-07 11:35:47 +01:00
de25719563
Replaced deprecated arguments in librespot
2021-11-07 01:19:34 +01:00
e86c61a44d
Merge branch '202-mastodon-integration' into 'master'
...
Resolve "Mastodon integration"
Closes #202
See merge request platypush/platypush!8
2021-11-07 01:00:29 +01:00
acdc636b1f
Resolve "Mastodon integration"
2021-11-07 01:00:29 +01:00
6db070db1c
- Fixed switchbot.status
to handle virtual devices
...
- Fixed StrippedString schema field serialize handler
- Fixed rendering of lists in documentation schemas
2021-10-26 00:48:05 +02:00
952a2a9379
- Render nested attributes in schemas
...
- Provide relevant examples for schema fields with no description/examples based on the field type
- Fixed RST warnings in Slack plugin
- Fixed list of events in ngrok plugin
2021-10-24 11:53:38 +02:00
49676fcc7f
Don't fail hard if the Zeroconf service can't be registered
2021-10-24 02:54:20 +02:00
6c0a8bf259
Bump version: 0.22.3 → 0.22.4
2021-10-19 23:30:25 +02:00
1906876969
FIX: Replaced VLC event.u occurrences
...
Newer versions of python-vlc have apparently
removed the `event.u` union object from the
events dispatched by the player, resulting in
player callback failures.
The occurrences of `event.u` have therefore
been replaced with the player methods to
correctly retrieve the current state.
2021-10-17 17:56:57 +02:00
f9ce03919b
FIX: Various omxplayer fixes
...
- Better synchronization with the player upon `play` request - wait until the play started event is received before returning the status
- DBus exceptions should be caught and handled in the status call
2021-10-17 16:54:57 +02:00
c3681e7b2a
FIX: Don't try and set the volume of the omxplayer when the instance may not be ready yet
2021-10-17 16:38:38 +02:00
144700b693
media.mpv should send MediaPlayRequestEvent with player and plugin parameters
2021-10-17 16:17:20 +02:00
4a5bb766af
Fixed some media plugins inconsistencies
...
- Removed replication of logic between media.get_youtube_url (action) and media.get_youtube_video_url (internal method)
- Added differentiation between MediaPlayEvent and MediaResumeEvent
2021-10-17 16:03:57 +02:00
cb4cfa40d8
Updated CHANGELOG
2021-10-17 02:55:26 +02:00
8c339d0d55
Added support for custom YouTube preferred video/audio formats
2021-10-17 02:53:38 +02:00
1962a8c4de
FIX: The response to a request received on the MQTT channel should be dispatched to <base_topic>/responses/<id>, not to <base_topic>
2021-10-17 01:57:47 +02:00
c664796733
Merge branch '115-google-maps-travel-time-integration' into 'master'
...
Resolve "Google Maps travel time integration"
Closes #115
See merge request platypush/platypush!7
2021-10-16 22:35:38 +02:00
64c402b1c0
[ #115 ] Added google.maps.get_travel_time
method
2021-10-16 22:35:37 +02:00
a5f1dc2638
CHANGELOG format fixes
2021-10-03 22:27:44 +02:00
0e27c8f68a
Updated CHANGELOG
2021-10-02 23:53:21 +02:00
31ef9515f8
Added support for virtual IR devices in Switchbot plugin
2021-10-02 23:44:13 +02:00
d844890ab2
Bump version: 0.22.2 → 0.22.3
2021-10-01 23:53:05 +02:00
ee35ea995b
Merge branch '198-feature-request-gotify-push-intergration' into 'master'
...
Resolve "[Feature Request] Gotify Push Intergration"
Closes #198
See merge request platypush/platypush!6
2021-10-01 23:50:53 +02:00
04a5480d19
Resolve "[Feature Request] Gotify Push Intergration"
2021-10-01 23:50:53 +02:00
e3f0219554
Errors should be caught also before a request action is executed (prevents HTTP timeouts when the error is on e.g. get_plugin() level)
2021-10-01 23:40:43 +02:00
fa17011b24
Fixed hierarchy for ngrok events
2021-10-01 23:39:07 +02:00
c12c83b386
Bump version: 0.22.1 → 0.22.2
2021-09-25 12:54:01 +02:00
229d05a40f
Updated CI deploy pipeline to also include pip package upload to the local repo
2021-09-25 12:53:30 +02:00
c4bd854be2
Added docs for ngrok plugin
2021-09-25 01:37:19 +02:00
f856ae69e1
Merge branch 'plugin/ngrok' into 'master'
...
[#196 ] Added ngrok integration
Closes #196
See merge request platypush/platypush!4
2021-09-25 01:34:45 +02:00
68831e9e81
[ #196 ] Added ngrok integration
2021-09-25 01:34:45 +02:00
d18245b15f
Fixed Slack plugin docs
2021-09-22 00:38:34 +02:00
b961ef0424
update-aur-packages should also be executed upon new tags
2021-09-22 00:36:51 +02:00
cb0638fe19
Bump version: 0.22.0 → 0.22.1
2021-09-22 00:29:03 +02:00
98cb216ba7
Fixed LGTM warning
2021-09-22 00:22:42 +02:00
f147c44a8a
Fixed docs issues
2021-09-22 00:19:14 +02:00
f720e7fc7f
Merge branch 'gitlab-ci' into 'master'
...
Moved CI automation from Platypush hooks to Gitlab CI
See merge request platypush/platypush!3
2021-09-22 00:04:12 +02:00
10e11d66dc
Moved CI automation from Platypush hooks to Gitlab CI
2021-09-22 00:04:11 +02:00
a1cd25fe5a
zigbee.mqtt backend configuration should be fetched from the zigbee.mqtt plugin configuration if not reported
2021-09-17 22:35:01 +02:00
1a314ffd6b
Fixed LGTM errors and warnings
2021-09-17 22:21:29 +02:00
85af031c26
Empty torrent responses can sometimes include the objects as an empty list instead of an empty dict
2021-09-17 10:47:01 +02:00
7b8938cb12
Fixed LGTM errors and warnings
2021-09-17 00:47:33 +02:00
8c31905534
Updated README
2021-09-17 00:05:06 +02:00
a2f5755496
Bump version: 0.21.4 → 0.22.0
2021-09-16 23:28:39 +02:00
fa11b13638
- Updated docs.
...
- Implemented synchronous behaviour (without background process and stdout/stderr log files) for `platyvenv start`.
2021-09-16 23:28:00 +02:00
2b5698bdfe
Merge branch 'manifest-refactor' into 'master'
...
Moved to manifest files for describing plugins and backends and their dependencies
See merge request platypush/platypush!2
2021-09-16 17:53:41 +02:00
3bfc5b83ef
Moved to manifest files for describing plugins and backends and their dependencies
2021-09-16 17:53:40 +02:00
ac0dd95bcc
Bump version: 0.21.3 → 0.21.4
2021-08-24 23:01:45 +02:00
87b70716c1
Logic for supporting JWT tokens both as bytes and strings [ closes #197 ]
2021-08-24 22:55:42 +02:00
a8064d2add
parse_magnet_uri can return either a metadata object or a dict depending on the libtorrent version
2021-08-05 20:23:54 +02:00
d086da64f6
Bump version: 0.21.2 → 0.21.3
2021-07-28 01:09:27 +02:00
90ec108580
Added Slack integration
2021-07-28 01:09:09 +02:00
286bab7489
typo
2021-07-27 00:11:57 +02:00
0f37102ce4
Close Redis connection upon backend stop
2021-07-26 01:06:35 +02:00
8e2d4d0bce
Make sure that the accept() in backend.tcp does not block the process
2021-07-25 11:33:48 +02:00
550fd3abe9
Don't fail on the Pushbullet close handler
2021-07-25 01:17:25 +02:00
2fc7327788
Missing import
2021-07-24 23:49:23 +02:00
371dd6da0a
Added sun
plugin [ closes #194 ]
2021-07-22 01:02:15 +02:00
47228f2432
Bump version: 0.21.1 → 0.21.2
2021-07-20 01:36:59 +02:00
1483d602f8
Added music.spotify UI integration
2021-07-20 01:35:21 +02:00
00e744e93e
Added type field metadata
2021-07-17 22:28:48 +02:00
35c4a30a63
Added music.spotify plugin and refactored MusicPlugin
2021-07-17 22:14:15 +02:00
f250681a78
Refactored documentation and changed theme
2021-07-17 14:41:35 +02:00
db8ea33b68
Removed deprecated setup.py web_build
command from platydock [see #195 ]
2021-07-05 20:07:55 +02:00
03631bcebc
Fixed import error in Adafruit.IO
2021-07-04 23:49:18 +02:00
ade3a7c2cf
Added plugin_name to weather.buienradar events
2021-07-04 18:04:51 +02:00
1f6c7aae60
get_redis() should be a general utility method
2021-06-26 11:14:26 +02:00
a6c7d64511
Removed audio_format option from Spotify Connect backend (not supported by all versions of Librespot)
2021-06-25 23:20:21 +02:00
af7977bcf7
Added music.spotify.connect backend
2021-06-25 22:47:40 +02:00
0762004838
Bump version: 0.21.0 → 0.21.1
2021-06-22 23:40:53 +02:00
Fabio Manganiello
c8bfbae4f0
Prevented an infinite recursion error on the Pushbullet on_error() handler in case close() failed
2021-05-20 02:06:43 +02:00
Fabio Manganiello
d35a9729a4
More robust reconnection logic for Pushbullet backend
2021-05-19 18:44:01 +02:00
a39452124d
Refactored PCA9685 backend
2021-05-17 15:32:43 +02:00
fc1d9ad3e6
Added joystick.linux backend
2021-05-17 14:52:08 +02:00
7ee869ce42
More robust logic for smooth transients on PCA9685
2021-05-16 18:14:02 +02:00
df36a9f811
s/execute/write/
2021-05-16 17:53:22 +02:00
abf793e703
Added get_channels() method to PCA9685 driver
2021-05-16 17:51:51 +02:00
132c659d3c
Reset self._pca to None on deinit()
2021-05-16 17:42:05 +02:00
acc4f1c0e3
Added PCA9685 PWM driver plugin
2021-05-16 17:29:03 +02:00
d7d5bcdd0c
Wait until the joystick device is readable after it appears to prevent race conditions where jstest fails with temporary "permission denied" errors
2021-05-16 00:26:28 +02:00
def8c0dd76
The joystick backend should properly jstest even when the jstest executable fails
2021-05-16 00:16:19 +02:00
6cc28a3c3b
More robust logic in case of joystick device lost while the backend is running
2021-05-16 00:06:20 +02:00
93c3327bcd
Map name typo fix
2021-05-15 23:53:24 +02:00
85d975edc6
Logic typo
2021-05-15 23:50:23 +02:00
d767cafafe
joystick.jstest
should actually run the parent run
method but not extend JoystickBackend
2021-05-15 23:48:17 +02:00
cee8f9f8e0
joystick.jstest
should not execute the parent run
method
2021-05-15 23:43:37 +02:00
b2e2ae9538
Proper initialization for device attribute in parent joystick backend class
2021-05-15 23:34:41 +02:00
f296f4b161
Added generic joystick.jstest
backend
2021-05-15 23:28:24 +02:00
9eab526e47
Specify propertyKey on set_value() if exposed/required by the value payload [see #188 ]
2021-05-13 22:38:04 +02:00
8f6404d0b1
Revert "Support for custom timeout on MQTT message publish" (already implemented in the current logic)
2021-05-13 21:49:24 +02:00
eac26b9b22
CHANGELOG edit
2021-05-13 21:37:45 +02:00
b42c491390
Support for custom timeout on MQTT message publish
2021-05-13 21:33:08 +02:00
c7fb97cdc7
Updated CHANGELOG
2021-05-10 21:23:15 +02:00
18e99c6f12
Added new Google Fit scopes for sleep and heart rate read
2021-05-10 21:21:03 +02:00
664ce4050d
Added Switchbot plugin
2021-05-10 18:43:00 +02:00
69583d2e15
Added support for Marshmallow schemas in responses
2021-05-10 18:42:13 +02:00
2f840200be
Updated UI files
2021-05-10 18:40:35 +02:00
46aef7c8b5
autodoc fixes
2021-05-08 21:38:32 +02:00
5ca15937e3
Bump version: 0.20.10 → 0.21.0
2021-05-06 23:21:11 +02:00
ce882381c0
Fixes to torrent search + SASS library migration
...
- Support for custom PopcornTime API mirror/base URL.
- Full support for TV series search.
- Fixed torrent search (now using a different PopcornTime API mirror).
- Migrated SASS engine from `node-sass` (currently deprecated and broken on Node 16) to `sass`.
- Fixed alignment of Z-Wave UI header on Chrome/Webkit.
2021-05-06 23:18:47 +02:00
99b35b292f
Merge pull request #180 from BlackLight/snyk-upgrade-8faf0370e1fe9c73606043b43c1f95fc
...
[Snyk] Upgrade core-js from 3.7.0 to 3.10.1
2021-05-04 01:10:12 +02:00
snyk-bot
174439a8ed
fix: upgrade core-js from 3.7.0 to 3.10.1
...
Snyk has created this PR to upgrade core-js from 3.7.0 to 3.10.1.
See this package in npm:
https://www.npmjs.com/package/core-js
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=upgrade-pr
2021-04-28 22:35:45 +00:00
3a18e9faf4
Upgraded npm dependencies
2021-04-28 23:55:01 +02:00
f8d76fe4eb
Bumped chalk/ssri versions
2021-04-28 23:43:45 +02:00
9fa3385766
Bump version: 0.20.9 → 0.20.10
2021-04-28 23:06:14 +02:00
Fabio Manganiello
4fe5322600
Explicitly case propertyKey to str
2021-04-22 23:23:41 +02:00
2224681e3c
Removed OZW type references altogether to prevent import errors
2021-04-18 02:27:33 +02:00
68c44c0c3c
OZW objects should be imported inside of the ZwavePlugin
class to prevent ImportError
on other Z-Wave plugins that don't depend on OZW
2021-04-18 02:19:53 +02:00
02a22d4a88
The zwave and zwave.mqtt plugins should extend a common abstract class instead of having a zwave.mqtt -> zwave functional dependency that introduces the PyOWZ dependency into zwave.mqtt
2021-04-16 20:54:07 +02:00
b9bc4b5fe0
Bump version: 0.20.8 → 0.20.9
2021-04-12 02:48:30 +02:00
c006c4b368
Added zwave.mqtt plugin and backend [ closes #186 ]
2021-04-12 02:45:59 +02:00
75e1f35523
Merge pull request #173 from BlackLight/snyk-upgrade-13988d07be83d12370897cdf2a722b2a
...
[Snyk] Upgrade @fortawesome/fontawesome-free from 5.15.1 to 5.15.3
2021-04-08 21:18:25 +02:00
9e08b731a5
Merge pull request #172 from BlackLight/snyk-upgrade-2c28692e689ab7a78e388455f598523f
...
[Snyk] Upgrade vue-router from 4.0.0-rc.3 to 4.0.5
2021-04-08 21:18:05 +02:00
snyk-bot
edfa5ed16f
fix: upgrade @fortawesome/fontawesome-free from 5.15.1 to 5.15.3
...
Snyk has created this PR to upgrade @fortawesome/fontawesome-free from 5.15.1 to 5.15.3.
See this package in npm:
https://www.npmjs.com/package/@fortawesome/fontawesome-free
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=upgrade-pr
2021-04-06 22:36:19 +00:00
snyk-bot
f2628f4f2c
fix: upgrade vue-router from 4.0.0-rc.3 to 4.0.5
...
Snyk has created this PR to upgrade vue-router from 4.0.0-rc.3 to 4.0.5.
See this package in npm:
https://www.npmjs.com/package/vue-router
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=upgrade-pr
2021-04-06 22:36:16 +00:00
f1faa1141e
More LINT fixes
2021-04-06 21:10:48 +02:00
2a78f81a7b
Major LINT fixes
2021-04-05 00:58:44 +02:00
86761e7088
Bump version: 0.20.7 → 0.20.8
2021-04-04 00:15:11 +02:00
89beab4767
Added controls to music dashboard widgets
2021-04-03 21:16:22 +02:00
8db8f3e6c4
Unparseable context variables should be logged on debug, not warning, level.
2021-04-03 16:12:51 +02:00
ee0685363e
Fixed regression on UI event handler callbacks
2021-04-02 19:48:13 +02:00
33276bf697
Updated CHANGELOG.md
2021-04-02 19:30:57 +02:00
99831bf0c7
Fix compatibility with all versions of websocket-client, regardless of the list of arguments required by the callbacks (either ws as a first argument or not)
2021-04-02 19:27:25 +02:00
641d9c0d41
Updated CHANGELOG.md
2021-04-01 22:46:45 +02:00
95625a401d
Skip MQTT message if it has no content [ closes #184 ]
2021-04-01 21:33:44 +02:00
a147a4d37a
Added <Camera> dashboard widget
2021-03-29 21:14:32 +02:00
177c697f83
Added support for custom dashboard components [see #129 ]
2021-03-28 17:34:11 +02:00
eb486df1ee
Bump version: 0.20.6 → 0.20.7
2021-03-26 23:09:33 +01:00
a4c70f1e4d
Fixed typo in README
2021-03-26 01:46:31 +01:00
c16f8aa39e
Added mobile app section to the README
2021-03-26 01:44:54 +01:00
570f1d0cf6
Passing expire_on_commit=False on sessionmaker() [see #181 ]
...
Accessing db objects outside of their session seems to fail on SQLAlchemy >= 1.4
with a `Instance `Instance <x> is not bound to a Session` error.
Setting expire_on_commit=False on the session seems to somehow fix the issue
(see https://stackoverflow.com/questions/3039567/sqlalchemy-detachedinstanceerror-with-regular-attribute-not-a-relation )
2021-03-25 20:30:51 +01:00
Fabio Manganiello
4313b6e883
media.vlc.status should synchronize on _stop_lock, or it may fail in the middle of its execution if the VLC session is being freed
2021-03-24 15:02:05 +01:00
00fabf3853
Reverted MQTT client reconnection logic until I find a more reliable way to identify the errors that caused the disconnections
2021-03-22 02:11:46 +01:00
cad184fc1f
MQTT_ERR_NOMEM should not result in a reconnection
2021-03-22 02:07:53 +01:00
928bb3667a
Reconnection logic for MQTT disconnections caused by temporary errors
2021-03-22 01:52:27 +01:00
782be7794b
More robust logic to deal with broken lines in HTTP logs
2021-03-21 10:12:27 +01:00
40dc739d09
Even more robust logic in case of missing HTTP version on the logged request - if anything is wrong with the format simply default to http_version = 1.0
2021-03-18 14:02:25 +01:00
4821fe086b
More robust logic in case of missing HTTP version on the logged request
2021-03-18 11:30:57 +01:00
8d621b2688
Updated CHANGELOG
2021-03-18 01:35:03 +01:00
1355f7a3f6
[Dashboards] The class value should only apply to the widget wrapper, not to the wrapped widget [see #179 ]
2021-03-18 01:30:29 +01:00
3ce98305f0
Support for on_moved handler on file/log monitor backends
2021-03-17 23:21:52 +01:00
0a4cadba3e
Fixed KeyError
2021-03-17 01:53:10 +01:00
9e46ab0b60
Wait for _on_stop_event in media.vlc.stop before releasing the instance
2021-03-16 22:34:03 +01:00
c74d2fb124
Bump version: 0.20.5 → 0.20.6
2021-03-16 21:33:08 +01:00
ca573cb980
Added possibility to pass id instead of name to the switch mixin toggle method
2021-03-16 21:03:58 +01:00
75deb0393d
Fixed class name typo
2021-03-16 20:56:34 +01:00
14f1c44378
- If a Z-Wave event includes an explicit value update then explicitly set that value on the node, in order to prevent issues with Z-Wave value updates not yet propagated to the node structure
...
- Added Z-Wave switch component
2021-03-16 20:52:30 +01:00
fdd46edb6a
Do not force type cohercion on bool values - !!parseInt(true) = false in JavaScript, for some reason
2021-03-16 20:11:49 +01:00
b9738d88df
Added some temporary debug lines to Z-Wave's Value.vue to investigate setValue issues
2021-03-16 20:00:25 +01:00
f92d19a24e
media.vlc.stop should be synchronized on the _stop_lock and should call _reset_state instead of simply setting self._player = None
2021-03-16 19:42:59 +01:00
ce0ca2e9ee
Explicitly pass the new value on the Z-Wave setValue handler in case of binary toggles, since the target element can't be reliably determined
2021-03-16 19:37:42 +01:00
7f157d0234
Dockerfile should be part of the examples/ folder
2021-03-16 00:29:52 +01:00
8a3df30001
Removed Travis-CI and ReadTheDocs integrations (replaced by Platypush CI hooks)
2021-03-16 00:28:25 +01:00
82274d3d12
Added updated reference to CONTRIBUTING.md in README
2021-03-16 00:20:21 +01:00
ab6c85c2a6
Updated CHANGELOG
2021-03-16 00:17:20 +01:00
f8564c19cd
Added log.http backend to monitor HTTP logs [ closes #167 ]
2021-03-16 00:03:32 +01:00
bf519babb0
Updated tests and docs build badges
2021-03-14 17:35:25 +01:00
632a7ab792
Added README for auto-generated docs and changed theme to sphinx-material
2021-03-14 15:07:10 +01:00
1d3d741212
Fixed Sphinx build warnings
2021-03-14 01:09:01 +01:00
b171cb1012
A click on a Z-Wave binary event should result in the value being toggled, not rewritten [see #176 ]
2021-03-14 01:05:02 +01:00
352d421e61
Added file.monitor backend [ closes #172 ]
...
The file.monitor backend leverages watchdog instead of the Linux-only
inotify API and it replaces the inotify backend.
2021-03-14 00:08:20 +01:00
6f224cbda9
Removed legacy "local" backend and pusher script
2021-03-13 01:52:15 +01:00
adb472da7f
Messages should always be posted to the Redis bus in valid JSON format - no need for ast.literal_eval fallback
2021-03-13 01:52:15 +01:00
Fabio Manganiello
347a4d2555
disable_logging=True for ZwaveNodeGroupEvent
2021-03-12 20:29:26 +01:00
cef310ffd7
Added missing methods docs
2021-03-12 01:53:16 +01:00
96588df83b
Bump version: 0.20.4 → 0.20.5
2021-03-12 01:40:03 +01:00
02f6845e72
- Added weather.openweathermap plugin and backend, as a replacement for Darksky [ closes #177 ]
...
- Added note to the Darksky plugin about the decomissioning of the API by the end of the year
2021-03-12 01:31:26 +01:00
40834f7ce5
The zigbee2mqtt backend should use a suffix for the default client_id to prevent clashes with the default client_id from the MQTT backend [see #175 ]
2021-03-11 19:24:13 +01:00
3d6af00ee6
Disable logging of ZwaveValueEvent objects, as they tend to be very verbose
2021-03-11 17:53:39 +01:00
b06867dc5d
Added CONTRIBUTING file
2021-03-11 01:50:24 +01:00
22dad79dd5
Merge pull request #166 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/elliptic-6.5.4
...
Bump elliptic from 6.5.3 to 6.5.4 in /platypush/backend/http/webapp
2021-03-10 11:38:07 +01:00
211025cedb
The redis_queue parameter is not necessarily defined on the app config
2021-03-10 11:15:06 +01:00
dependabot[bot]
da27ed7546
Bump elliptic from 6.5.3 to 6.5.4 in /platypush/backend/http/webapp
...
Bumps [elliptic](https://github.com/indutny/elliptic ) from 6.5.3 to 6.5.4.
- [Release notes](https://github.com/indutny/elliptic/releases )
- [Commits](https://github.com/indutny/elliptic/compare/v6.5.3...v6.5.4 )
Signed-off-by: dependabot[bot] <support@github.com>
2021-03-10 10:00:42 +00:00
775478fff0
Improvement management of Z-Wave value types from the web panel
2021-03-10 10:58:51 +01:00
093bac3a60
- Addressed comments in #174
...
- Replaced active_scan flag with a list of track_devices
2021-03-09 19:03:04 +01:00
b3606a8ac3
Changelog edit
2021-03-09 12:54:43 +01:00
4902475caf
Added active_scan mode to bluetooth.scanner backend to actively perform a lookup name on each device discovered at least once [see #174 ]
2021-03-09 11:50:59 +01:00
7687e52058
Added cron examples to README.md
2021-03-09 01:43:28 +01:00
eae4b4f62a
The tmp_file fixture destructor should clean up any temporary files (in case multiple tests import it)
2021-03-09 00:22:18 +01:00
296458ece3
Cron expressions should follow the machine local time, not UTC [ closes #173 ]
2021-03-09 00:18:33 +01:00
71af6e87e0
Bump version: 0.20.3 → 0.20.4
2021-03-08 01:51:39 +01:00
c659ec507f
Added tests/__main__.py entry point to run all the tests
2021-03-06 20:13:38 +01:00
fb1953ce34
Using tests status badge from ci.platypush.tech on README instead of the Travis-CI status badge
2021-03-06 20:04:58 +01:00
34a108bbcb
Clear log objects on teardown to prevent pytest logging errors
2021-03-06 20:02:25 +01:00
5be6ca50f0
Travis-CI pipeline migrated to pytest
2021-03-06 19:50:22 +01:00
090e7d6de8
Support for specifying the application Redis queue from the command line or service constructor
2021-03-06 19:22:13 +01:00
6f85318868
Use another Redis queue for the test app to prevent clashes with another Platypush service running on the same machine
2021-03-06 17:17:55 +01:00
8f256e4077
Check for file creation and content multiple times with timeout
2021-03-06 17:09:40 +01:00
4ed80a0945
More tests improvements
2021-03-06 17:03:50 +01:00
ca90060ba1
Tests improvements
2021-03-06 16:25:37 +01:00
49ad3261f1
Refactored tests to use pytest with fixtures instead of unittest.TestCase
2021-03-06 16:21:28 +01:00
73e16fa6b1
Updated web app files
2021-03-05 21:43:16 +01:00
d860d8aef1
Added SmartThings switch web plugin
2021-03-05 21:29:32 +01:00
Fabio Manganiello
36aee6f787
The same applies to procedures - don't dump context as a JSON in case of exceptions
2021-03-05 19:00:26 +01:00
Fabio Manganiello
04ff008800
Context shouldn't be dumped as json in case of exceptions - if some objects are not JSON serializable then we end up with an uncaught exception
2021-03-05 18:52:57 +01:00
Fabio Manganiello
47ba13d985
calendar.ical.get_upcoming_events should fail hard if there was any exception/unsuccessful response
...
The error should not be swallowed and it should be instead propagated up
to calendar.get_upcoming_events, if it's called from that context. And
calendar.get_upcoming_events should be in charge of handling the
exceptions and make sure that failing to retrieve the events for one
calendar doesn't make the whole method fail.
2021-03-05 11:16:14 +01:00
4ada1c663d
Added SmartThings plugin [ #148 ]
2021-03-05 02:23:28 +01:00
210cefc1a4
General improvements on the Zeroconf plugin and backend
2021-03-03 19:20:12 +01:00
e43147e6a3
Added CHANGELOG
2021-02-28 23:54:22 +01:00
66c1e59c61
Bump version: 0.20.2 → 0.20.3
2021-02-28 23:48:34 +01:00
0e3845ef88
The vlc _reset_state logic should be wrapped within a lock context to make sure that two threads don't try to deallocate the context at the same time
2021-02-28 20:56:32 +01:00
833f810d4b
Fixed stop handler for vlc plugin.
...
For some reason, vlc event handlers are not re-entrant (https://github.com/oaubert/python-vlc/issues/44#issuecomment-378520074 ).
This means that the vlc API can't be used from an event handler,
and that an event handler that reacts to stop/end-of-stream by
releasing the player and the vlc instance will likely get stuck
and the app may eventually die with SIGSEGV.
Because of this design limitation on the vlc side, the plugin has
to run another thread in the main app that monitors the stop event
set by the event handler and releases the resources appropriately.
2021-02-28 13:03:10 +01:00
d190560536
Support for media.vlc.play toggling paused state if called with no arguments, and MediaPlayRequestEvent should have player and plugin attributes set
2021-02-28 01:40:29 +01:00
e0e3081eb1
VLC volume should strictly be an integer
2021-02-28 01:31:00 +01:00
708ce210ba
Added missing vlc requirements
2021-02-28 01:09:35 +01:00
d0707b6479
Bump version: 0.20.1 → 0.20.2
2021-02-27 21:27:37 +01:00
66445cb4e4
- Do not parse Zeroconf info at all if not available
...
- Temporarily skip test_procedure until I find a proper way to clean up the status from the previous run and start a fresh platform
2021-02-27 21:11:37 +01:00
f93df2fd49
Avoid the loop on the Zeroconf addresses object if the object is None (e.g. in the context of some tests)
2021-02-27 20:55:38 +01:00
0d806eeb6e
- Removed setUp method from test_event_parse - let the parent setUp run and properly start the daemon
...
- More resilient logic in case some entries in the Zeroconf registry are still loading and the info object is still None
2021-02-27 20:51:48 +01:00
36fdcf6963
- The context should be properly expanded also when calling a Python procedure
...
- Refactored the logic for executing a request and wrapping the response common to procedures, crons and event hook decorators into platypush.common.exec_wrapper
- Added mock getvalue() method to Logger to prevent PyCharm failures in the tests when sys.stdout is redirected to the Logger object
2021-02-27 20:27:36 +01:00
3932fb56c4
test_event_parse must include a config_file, even if it doesn't use it, otherwise the service will fail to start
2021-02-27 17:01:47 +01:00
cde5e4e4f9
Bump version: 0.20.0 → 0.20.1
2021-02-27 15:01:38 +01:00
b4f9472fc5
- Proper expansion of the context variables on functional procedure call
...
- Expanded and refactored tests framework
- Added test_procedure
2021-02-27 15:01:25 +01:00
9e00428568
Don't fail silently if there were errors in parsing ${} variables or getting the context
2021-02-26 22:43:54 +01:00
b4258faa29
Fixed broken regular expressions after LINT refactor
2021-02-26 22:33:26 +01:00
9e4daacd74
Aligning flex elements to the right with justify-content: right doesn't work on Chromium-based browsers - use flex-end instead
2021-02-26 21:10:45 +01:00
61c5bae527
Bump version: 0.13.9 → 0.20.0
2021-02-24 22:41:16 +01:00
82fcf86900
Added README note on how to run tests
2021-02-24 22:40:39 +01:00
a5f02c6a30
The /hook route should not require token authentication - authentication is up to the hook implementation
2021-02-24 22:21:01 +01:00
076cc6a63e
Fixed regex format
2021-02-24 01:34:41 +01:00
d0a579cf4b
Fixed old regex sequences to r'' format
2021-02-24 01:28:46 +01:00
33af368940
Removed Gitlab CI - it requires too much set up for now
2021-02-24 01:03:09 +01:00
531be19a66
.context needs to be imported in test_event_parse to make sure that the configuration is properly initialized
2021-02-24 00:35:41 +01:00
ef36c76f10
Added CI pipeline script for Gitlab
2021-02-24 00:31:46 +01:00
571a8ca9d1
Improvements on HTTP integration test. Plus, removed ApplicationStoppedEvent - it's unreliable and it could be delivered when the bus has already been stopped
2021-02-24 00:23:32 +01:00
2800bac3fb
Make sure that all hanging threads, backends and services are stopped and their resources cleaned up when the application stops.
2021-02-23 23:09:26 +01:00
d1b7b1768c
Improved tests script
2021-02-23 01:09:03 +01:00
1a7d0a3b07
Added sub-section on procedures to README.md
2021-02-23 00:11:16 +01:00
Fabio Manganiello
b27c9ee630
Make sure to always run .quit() on the _player instance on stop/exit event, even if the player is already stopped, otherwise the OMXPlayer session may be hanging in the background and prevent new DBus connections
2021-02-22 14:22:45 +01:00
04a23d555d
Updated README (it hadn't been updated for ages)
2021-02-22 02:53:20 +01:00
dae8cf0111
Uncommented some sections of the example config.yaml
2021-02-22 02:08:26 +01:00
67702d3cc8
Rephrased disclaimer for the Google assistant backend
2021-02-22 01:41:54 +01:00
6df336465f
Fixed nested list style in backend.http documentation
2021-02-22 01:35:42 +01:00
ffb7a3e5a3
Extended and updated pieces of documentation on the HTTP server, Zigbee2mqtt and mpd. Also added example dashboard template and event hook script.
2021-02-22 01:20:01 +01:00
151d0008ee
Removed docs references to removed plugin media.ctrl
2021-02-21 23:34:47 +01:00
10eb0c12aa
Don't fail hard if the web app is initialized without access to a configuration file (e.g. from a ReadTheDocs build environment)
2021-02-21 23:30:05 +01:00
aa5cbbce28
pyjwt added to Travis-CI requirements list
2021-02-21 18:57:15 +01:00
53fb254c57
js dependencies updated
2021-02-21 18:47:26 +01:00
727094467d
Fixed some UI elements for Chrome on mobile
2021-02-21 18:10:22 +01:00
Fabio Manganiello
6f9428487f
Higher priority to gstreamer plugin over omxplayer for tts
2021-02-21 02:44:26 +01:00
3e777bd19f
Media buttons should have no background by default
2021-02-21 02:15:27 +01:00
7ab4da6156
Merge branch 'master' into vuejs
2021-02-21 00:47:02 +01:00
7922ae4801
Removed old templates/ and static/ web directories
2021-02-21 00:41:40 +01:00
94c35e210e
Migrated /plugin/<pluginName> route
2021-02-21 00:39:06 +01:00
34892e227a
The webapp dist/ folder should actually be under the webapp dir
2021-02-20 23:26:25 +01:00
856eb720b0
Migrated execute panel
2021-02-20 23:12:54 +01:00
94ad14f23f
Migrated Samsung TV web panel
2021-02-20 01:18:05 +01:00
c8fa61cc4f
Fixed navigator scrolling and style
2021-02-19 22:55:31 +01:00
8ab72e8f94
Upgraded axios and bulma
2021-02-19 21:06:58 +01:00
6b5b50d186
Migrated switches plugin
2021-02-19 20:47:29 +01:00
56f8d85feb
Migrated switches web panel and refactored switch plugins to expose a more consistent interface
2021-02-19 02:54:12 +01:00
51de11da25
Finalized migration of camera and sound plugins
2021-02-17 01:02:57 +01:00
ca2fd60950
Migrated camera.android.ipcam UI
2021-02-16 23:56:43 +01:00
e508d453ba
Set better default scaling for camera.ir.mlx90640 UI
2021-02-16 22:57:09 +01:00
12e1c60f6c
Fixed camera.ir.mlx90640 UI panel reference and RSS widget font
2021-02-16 22:42:43 +01:00
8c3ba9f367
Migrated camera.pi and camera.ir.mlx90640 UI panels
2021-02-16 20:14:20 +01:00
41acb02eb0
Migrated camera.cv/camera.ffmpeg/camera.gstreamer UI panels
2021-02-16 01:51:37 +01:00
748609c6f4
Migrated settings panel and logout button
2021-02-15 23:09:27 +01:00
ee7407a7cc
Don't create an MQTT client connection if there are no topics to subscribe.
...
If we open multiple connections from multiple MQTT-based backends to the
same host, with some of them having no topics subscribed, Paho-MQTT can
mess up which client is supposed to receive which message and we may end
up with lost messages on the platypush_bus_mqt/<host> topic.
2021-02-15 22:05:08 +01:00
201bb5986f
Don't create an MQTT client connection if there are no topics to subscribe.
...
If we open multiple connections from multiple MQTT-based backends to the
same host, with some of them having no topics subscribed, Paho-MQTT can
mess up which client is supposed to receive which message and we may end
up with lost messages on the platypush_bus_mqt/<host> topic.
2021-02-15 22:02:58 +01:00
51e6d95205
Fixed valueId lookup in Z-Wave filtered values
2021-02-14 22:02:17 +01:00
c78420749b
More Z-Wave UI fixes [WIP]
2021-02-14 21:43:11 +01:00
adbde5a681
Z-Wave UI style fixes [WIP]
2021-02-14 21:08:29 +01:00
80aa9b968d
More Z-Wave UI fixes [WIP]
2021-02-14 19:16:21 +01:00
b922f29bb8
Moar Z-Wave UI style fixes [WIP]
2021-02-14 18:53:59 +01:00
4dd5ea71d6
Style fixes for Z-Wave UI migration [WIP]
2021-02-14 18:07:40 +01:00
297c18e176
Fixed glitches in new Z-Wave panel [WIP]
2021-02-14 16:28:34 +01:00
a1e2bf9b3a
Fixed font size and ratio on new dashboard
2021-02-14 15:31:24 +01:00
c2784c400f
Added dist files for z-wave panel migration
2021-02-14 14:46:02 +01:00
b49865181b
Z-Wave plugin UI migration [WIP]
2021-02-14 02:29:39 +01:00
77c6f699a0
Keep track of the last state of the Zigbee controller so that new messages on the bridge/state
topic won't trigger new events unless the state has actually changed [see #183 ]
2021-02-13 15:55:29 +01:00
add1bd05cb
Keep track of the last state of the Zigbee controller so that new messages on the bridge/state
topic won't trigger new events unless the state has actually changed [see #183 ]
2021-02-13 15:54:21 +01:00
4c69a1e579
Merge branch 'master' into vuejs
2021-02-13 15:14:06 +01:00
5832bc68d5
Don't default on logging.INFO level if another level is set in the configuration, and apply the same logging level also to the web server [ closes #162 ]
2021-02-13 15:13:53 +01:00
8168cd3ab3
Don't default on logging.INFO level if another level is set in the configuration, and apply the same logging level also to the web server [ closes #162 ]
2021-02-13 15:13:07 +01:00
be497548c1
Merge branch 'master' into vuejs
2021-02-12 22:44:20 +01:00
b3c28f6773
Added support for JWT token-based authentication
2021-02-12 22:43:34 +01:00
9b9334682f
Still support default host/port fallback on mqtt.publish
2021-02-12 02:20:04 +01:00
06ca5be54b
Still support default host/port fallback on mqtt.publish
2021-02-12 02:19:36 +01:00
30d5cdcb00
Generated new dist files for the web app
2021-02-11 23:58:36 +01:00
2427cceb5e
Migration completed for the zigbee.mqtt web panel
2021-02-11 23:53:05 +01:00
73cc742dfb
Fixed backend.zigbee.mqtt to work with the new zigbee2mqtt API
2021-02-11 23:52:06 +01:00
ade04a6ea1
Refactored backend.mqtt to reuse connections whenever possible, as well as programmatically subscribe/unsubscribe topics at runtime
2021-02-11 23:52:06 +01:00
3cf91a3f27
Fixed backend.zigbee.mqtt to work with the new zigbee2mqtt API
2021-02-11 23:50:28 +01:00
f9598977db
Refactored backend.mqtt to reuse connections whenever possible, as well as programmatically subscribe/unsubscribe topics at runtime
2021-02-10 22:31:33 +01:00
7325c87068
Fixed remaining Zigbee groups and binding methods to work with the new zigbee2mqtt API [see #163 ]
2021-02-10 02:01:30 +01:00
1a70c6ea0b
Fixed remaining Zigbee groups and binding methods to work with the new zigbee2mqtt API [see #163 ]
2021-02-10 02:00:52 +01:00
021dd32190
Moved more zigbee2mqtt methods to the new API
2021-02-09 02:34:38 +01:00
db80240209
zigbee2mqtt web panel migration [WIP]
2021-02-09 02:33:56 +01:00
1eedcaf2be
Moved more zigbee2mqtt methods to the new API
2021-02-09 02:33:43 +01:00
86e6ffd18d
Zigbee web panel migration [WIP]
2021-02-08 02:04:59 +01:00
15d2e1116b
Fixed device_get and device_rename to use the new zigbee2mqtt API
2021-02-08 01:46:18 +01:00
452533db17
Fixed MQTT over SSL default version spec in case the parameter is not a string
2021-02-08 01:46:18 +01:00
b8979040da
Fixed device_get and device_rename to use the new zigbee2mqtt API
2021-02-08 01:45:21 +01:00
816492d3b2
Fixed MQTT over SSL default version spec in case the parameter is not a string
2021-02-08 01:44:26 +01:00
0bddbb0bca
Merge branch 'master' into vuejs
2021-02-06 14:46:08 +01:00
314c01ef97
Refactored Zigbee backend and remove unused logic for keeping devices up-to-date
2021-02-06 14:45:50 +01:00
4c5a52417e
Support for new zigbee2mqtt API and protocol (see #163 )
2021-02-06 02:19:15 +01:00
23a5cd519a
Merge branch 'master' into vuejs
2021-02-05 23:18:31 +01:00
b57a241f52
Changed base URL to platypush.tech
2021-02-05 23:18:18 +01:00
2abfb2964c
Merge branch 'master' into vuejs
2021-02-04 01:57:36 +01:00
4858dbc060
Back/forward seek changed from 60 to 30
2021-02-04 01:56:28 +01:00
Fabio Manganiello
2834ed2a7c
Refactored and fixed many bugs on the media.omxplayer plugin
2021-02-04 01:44:21 +01:00
Fabio Manganiello
165f85f8dc
Added support for background shell commands
2021-02-04 01:43:51 +01:00
Fabio Manganiello
7f24b82281
Removed deprecated media.ctrl plugin
2021-02-03 22:13:10 +01:00
7e1d232942
Another fix bites the dust
2021-02-03 17:47:33 +01:00
31a7ecee03
Quick fix
2021-02-03 17:46:05 +01:00
346bd9602d
The whole get_plugin/.status() block should be under try/except
2021-02-03 17:44:40 +01:00
673351db51
Don't fail if a media plugin can't be imported
2021-02-03 17:43:26 +01:00
86ebc4fae9
Get the plugin name, not the object
2021-02-03 17:42:20 +01:00
118540db8c
Fixed unreferenced var
2021-02-03 17:41:06 +01:00
a1d6c4fbe4
Added missing Config import
2021-02-03 17:39:55 +01:00
2bb07ae191
Fixed base class name
2021-02-03 17:39:16 +01:00
1920bd80a3
First search among the configured media plugins in media.ctrl plugin
2021-02-03 17:34:33 +01:00
269000ab85
Merge branch 'master' into vuejs
2021-02-02 22:18:07 +01:00
0ad4597daf
No need to keep the wiki as a submodule
2021-02-02 01:26:54 +01:00
e08d4c21b8
Documentation domain name moved to docs.platypush.tech
2021-02-02 01:05:07 +01:00
254045283b
Removed deprecated message.events.path module
2021-02-02 00:54:17 +01:00
41b8b738d6
Fixed links referenced in the documentation
2021-02-02 00:50:17 +01:00
0411145ebf
Updated blog link
2021-02-02 00:32:39 +01:00
cca4444af2
Updated README
2021-02-01 00:38:59 +01:00
3332c5c573
Updated README
2021-02-01 00:33:31 +01:00
dca81de5a3
Updated README
2021-02-01 00:33:20 +01:00
1c84891df6
Update README.md
2021-02-01 00:31:59 +01:00
fca0c2265c
Added extra alias "snowboy" for "hotword"
2021-01-31 12:42:02 +01:00
fda8872a15
Updated README
2021-01-31 01:28:58 +01:00
ef63c3769e
Cast request headers to dict before adding them to the event
2021-01-31 00:16:44 +01:00
fddf2006e4
Added headers argument to webhook event
2021-01-31 00:01:58 +01:00
a0bf227573
Fixed trailing column in wss: protocol
2021-01-30 23:21:52 +01:00
32ec76611a
Removed .github folder
2021-01-28 14:48:19 +01:00
13f4edbc92
Updated README
2021-01-28 14:48:09 +01:00
8a1a8bc9a0
Merge branch 'master' into vuejs
2021-01-25 15:38:05 +01:00
7d4d9eb438
Refactored submodules
2021-01-25 13:26:20 +01:00
e2415928a7
Added blog as submodule
2021-01-23 19:54:13 +01:00
80112652bf
Merge branch 'master' into vuejs
2021-01-23 16:31:45 +01:00
92c98f26e5
Moved wiki module
2021-01-23 16:31:31 +01:00
8e2d590e62
Merge branch 'master' into vuejs
2021-01-23 15:06:14 +01:00
e2e7011e53
s/github.com/git.platypush.tech/g
2021-01-23 15:03:43 +01:00
Fabio Manganiello
31b110a06c
FIX: zigbee2mqtt applies different logic to /<device_name> and /<device_name>/get
2021-01-22 16:24:43 +01:00
Fabio Manganiello
717ad5d88c
Revert "FIX: zigbee2mqtt /get calls require a property field specified on the message"
...
This reverts commit 7ff08a9587
.
2021-01-22 16:13:18 +01:00
Fabio Manganiello
cc839620cf
FIX: zigbee2mqtt /get calls require a property field specified on the message
2021-01-22 01:03:52 +01:00
Fabio Manganiello
cebd79079b
Merge branch 'master' into vuejs
2021-01-22 01:01:22 +01:00
Fabio Manganiello
7a7e00bea2
Migrated music.snapcast UI
2021-01-22 01:00:49 +01:00
Fabio Manganiello
7ff08a9587
FIX: zigbee2mqtt /get calls require a property field specified on the message
2021-01-22 00:45:52 +01:00
Fabio Manganiello
370a7d4c15
Added frontend support for Plex
2021-01-18 01:28:10 +01:00
Fabio Manganiello
85f56cf98c
New media panel [WIP]
2021-01-14 00:15:35 +01:00
Fabio Manganiello
6ae76f1f38
Migrating media plugins [WIP]
2021-01-05 00:50:24 +01:00
Fabio Manganiello
67d3b40772
Finalized new music.mpd web interface
2021-01-02 14:33:01 +01:00
Fabio Manganiello
d2887b7454
Implemented search in music.mpd
2021-01-01 15:58:56 +01:00
d10649e1f1
Support for token over Authorization: Bearer header
2020-12-31 15:36:48 +01:00
Fabio Manganiello
e127f2597c
music.mpd refactor WIP
2020-12-31 01:36:02 +01:00
Fabio Manganiello
1777ebb051
Retry logic in case of Pushbullet listener error
2020-12-30 19:44:30 +01:00
Fabio Manganiello
3eb7f01d38
Updated dist files
2020-12-26 17:43:00 +01:00
Fabio Manganiello
57304e8d7e
Music buttons should have no background
2020-12-26 17:41:12 +01:00
Fabio Manganiello
b4fc734a15
music.mpd panel migration - WIP
2020-12-26 15:03:12 +01:00
Fabio Manganiello
bc3e0b8634
Support for plugin panels embedded into dashboards
2020-12-17 02:09:23 +01:00
Fabio Manganiello
1726cbd96a
Optimized panel size for tablet
2020-12-16 22:31:04 +01:00
Fabio Manganiello
e5c8adfc1b
Fixed and expanded integration tests to deal with HTTP user authentication
2020-12-16 02:10:37 +01:00
Fabio Manganiello
049a48e156
Fixed modified property Vue warning
2020-12-15 21:32:39 +01:00
Fabio Manganiello
5d4f4b0378
Support for subscribe-once/unsubscribe frontend events mechanisms
2020-12-15 00:01:28 +01:00
Fabio Manganiello
0db997c6a0
transitiontime is not supported on hue/sat/bri change
2020-12-14 16:31:24 +01:00
Fabio Manganiello
5e7c6c26c9
Migrating lights panel WIP
2020-12-14 02:13:55 +01:00
Fabio Manganiello
2de1e3ebe6
Lights panel migration - WIP
2020-12-09 21:16:07 +01:00
Fabio Manganiello
79179746a7
Fixed websocket reconnection logic
2020-12-09 20:40:22 +01:00
Fabio Manganiello
fc718c907a
Migrating light.hue panel WIP
2020-12-03 00:59:35 +01:00
Fabio Manganiello
0cd120f492
New template for index panel
2020-11-30 20:57:00 +01:00
Fabio Manganiello
c3f01c198f
Keep track of the user authentication state
2020-11-28 15:32:07 +01:00
Fabio Manganiello
229b2de566
The /execute endpoint should require authentication as well
2020-11-28 15:28:09 +01:00
Fabio Manganiello
dea547a491
Migrated Pushbullet component
2020-11-28 01:12:54 +01:00
Fabio Manganiello
1036358b28
Use a $watch-based system to register subscribe handlers when the events component is not yet ready instead of relying on setTimeout hacks
2020-11-28 00:29:22 +01:00
Fabio Manganiello
8f477fa335
Migrated voice assistant component
2020-11-27 23:12:10 +01:00
Fabio Manganiello
3c6f3c5a21
Migrated login and register components
2020-11-26 23:43:16 +01:00
Fabio Manganiello
0902099855
Migrated RSS news widget
2020-11-26 17:11:03 +01:00
Fabio Manganiello
3c9a633907
Fixed carousel style
2020-11-26 12:53:34 +01:00
Fabio Manganiello
1e193f8346
Added new static files
2020-11-26 12:41:56 +01:00
Fabio Manganiello
9af02ba886
Carousel default font increased
2020-11-26 12:27:42 +01:00
Fabio Manganiello
221bcc058b
Need static/js and static/css as well
2020-11-26 12:02:41 +01:00
Fabio Manganiello
04cb2324aa
Removed dashboard configuration from HttpBackend, removed old HTTP
...
static files and replaced them with Vue app target dist/ directory.
2020-11-26 11:54:28 +01:00
Fabio Manganiello
887a0e5e88
Webapp dist files
2020-11-26 11:44:08 +01:00
Fabio Manganiello
cc3e52c69d
Migrated ImageCarousel widget
2020-11-26 00:26:10 +01:00
Fabio Manganiello
243e56b194
Added support for rows on dashboard and music widget
2020-11-23 00:44:31 +01:00
Fabio Manganiello
ecf6a844dd
Added support for refreshSeconds on dashboard level
2020-11-22 14:26:25 +01:00
Fabio Manganiello
62b651789a
Migrated DateTimeWeather and Calendar widgets
2020-11-22 12:57:28 +01:00
Fabio Manganiello
ba8e5ef6a0
Fixed croniter timezone offset logic mismatch
2020-11-21 01:38:07 +01:00
Fabio Manganiello
9dacd2d3c9
Fixed croniter timezone offset logic mismatch
2020-11-21 01:36:37 +01:00
Fabio Manganiello
39abdfe40a
New Vue.js template for dashbord WIP
2020-11-21 01:12:08 +01:00
Fabio Manganiello
0c0e7411f7
Bump version: 0.13.8 → 0.13.9
2020-11-11 22:31:47 +01:00
Fabio Manganiello
9179f35a82
Support for row height for dashboard widgets
2020-11-11 22:28:43 +01:00
Fabio Manganiello
470bd62af7
Parse actions in cron also from list
2020-11-11 17:09:36 +01:00
Fabio Manganiello
c7711d75a1
New pychromecast has replaced host/port with uri
2020-11-11 03:07:42 +01:00
Fabio Manganiello
711ea543bb
Use youtube-dl to extract the video URL instead of streaming its content to a local sock file
2020-11-11 03:07:23 +01:00
Fabio Manganiello
43f71ed47b
Bump version: 0.13.7 → 0.13.8
2020-11-10 22:55:03 +01:00
Fabio Manganiello
a07cb6ec3d
Explicit cast of possible dict_keys element to list() before copy()
2020-11-10 22:53:12 +01:00
Fabio Manganiello
45d998130b
Event import fixed
2020-10-28 23:29:34 +01:00
Fabio Manganiello
cc36325ca6
Added support for custom user events
2020-10-28 23:28:41 +01:00
Fabio Manganiello
c5dc9333f0
Extended light plugin status method signature
2020-10-28 23:19:16 +01:00
Fabio Manganiello
8a7f783032
Support for list args type in requests
2020-10-28 23:18:55 +01:00
Fabio Manganiello
77530b4a06
Use a threading Event to synchronize with the Hue animation thread instead of relying on the Redis backend
2020-10-14 00:18:23 +02:00
Fabio Manganiello
6d7f1502ce
Wiki updated
2020-10-13 23:47:10 +02:00
Fabio Manganiello
8279f22940
Bump version: 0.13.6 → 0.13.7
2020-10-13 23:26:13 +02:00
Fabio Manganiello
1c84659e34
Support for Python cronjobs in scripts folder - closes #156
2020-10-13 23:25:27 +02:00
Fabio Manganiello
37e006d86e
Refined Tensorflow train methods
2020-10-12 01:06:32 +02:00
Fabio Manganiello
8d7e790eda
More descriptive attribute names for the Tensorflow predict response.
...
Using `outputs` instead of `values` and `predictions` instead of `labels`.
2020-10-02 01:17:34 +02:00
Fabio Manganiello
daaa0050d1
Squeeze the extra dimensions in a grayscale image and pass the model name to the response objects
2020-10-01 18:50:36 +02:00
Fabio Manganiello
287b6303ae
More flexible module loading and better lock management for models in Tensorflow plugin
2020-10-01 17:41:12 +02:00
Fabio Manganiello
9b23ab7015
Only stop the loop if it is set
2020-09-30 13:53:32 +02:00
Fabio Manganiello
7947c1031d
More robust frontend reaction in case of race conditions on player state events
2020-09-29 15:58:23 +02:00
Fabio Manganiello
9e6c40d393
media.gstreamer added to the list of compatible media plugins
2020-09-29 15:37:46 +02:00
Fabio Manganiello
f3a9dc4ef5
Added navigator icon for media.gstreamer plugin
2020-09-29 15:35:29 +02:00
Fabio Manganiello
05b0a7f14d
Added GStreamer media plugin [ closes #151 ]
2020-09-29 15:32:40 +02:00
Fabio Manganiello
6ad5397a25
Removed unused import
2020-09-28 22:13:42 +02:00
Fabio Manganiello
0a9c4fc3a7
Added GStreamer camera plugin [relates to #151 ]
2020-09-28 22:10:56 +02:00
Fabio Manganiello
b30145dfc9
Copyright year update
2020-09-28 13:11:07 +02:00
Fabio Manganiello
e9d9ef252f
Frames directory should be created in 0o755 mode
2020-09-28 02:33:27 +02:00
Fabio Manganiello
f2a654bdec
Reset camera.android.ipcam stylesheet
2020-09-27 19:47:21 +02:00
Fabio Manganiello
d92e630314
Bump version: 0.13.5 → 0.13.6
2020-09-27 17:20:51 +02:00
Fabio Manganiello
07336d3272
Fixed login redirect page [ closes #154 ]
2020-09-27 17:20:14 +02:00
Fabio Manganiello
00012aacae
Added missing docs
2020-09-27 17:12:37 +02:00
Fabio Manganiello
959cc8b75b
Added navigator icon for ffmpeg camera
2020-09-27 17:09:52 +02:00
Fabio Manganiello
df1e03f0af
Added FFmpeg camera plugin [relates to #150 ]
2020-09-27 12:52:07 +02:00
Fabio Manganiello
b21193dc74
Added camera.ffmpeg plugin web panel
2020-09-27 03:09:14 +02:00
Fabio Manganiello
9ad6188b5d
New js file for camera.pi plugin
2020-09-27 02:52:20 +02:00
Fabio Manganiello
31f2c5152c
New template file for camera.pi
2020-09-27 02:47:38 +02:00
Fabio Manganiello
c269c62fe6
Refactored logging names
2020-09-27 01:33:38 +02:00
Fabio Manganiello
6e6092e4b2
Do proper decapsulation for PiCamera wrapped object when reinitialized
2020-09-25 18:25:33 +02:00
Fabio Manganiello
ac42f7eba4
Make sure that the PiCamera session is properly closed and re-opened on each stream request
2020-09-25 18:06:27 +02:00
Fabio Manganiello
258a9b57ce
release_device should not fail hard if stop_recording or close fail on ConnectionError
2020-09-25 17:42:21 +02:00
Fabio Manganiello
28409b8688
The device should be released after each streaming session
2020-09-25 17:34:53 +02:00
Fabio Manganiello
c12e7bab90
The streaming thread shouldn't fail and exit if it fails closing a client socket
2020-09-25 17:28:25 +02:00
Fabio Manganiello
09f9e974b1
Camera plugins refactor
2020-09-25 17:19:43 +02:00
Fabio Manganiello
c0f7cc0782
Added NextCloud integration [ closes #149 ]
2020-09-10 11:10:26 +02:00
Fabio Manganiello
0af326fa11
Refactored inotify backend
2020-09-09 02:16:13 +02:00
Fabio Manganiello
beeb7dca7c
Removed unneeded import
2020-09-09 02:15:52 +02:00
Fabio Manganiello
1e972ded99
More robust logic on the bus in case the message failed to parse (prevents the application from crashing)
2020-09-09 02:15:35 +02:00
Fabio Manganiello
a650840429
Refactored variable plugin
2020-09-09 02:14:59 +02:00
Fabio Manganiello
4d0d467292
PIL JPEG format name typo fix
2020-09-08 18:14:49 +02:00
Fabio Manganiello
83122becdb
Applied degrees -> PIL rotation ID conversion to the output image
2020-09-08 18:03:18 +02:00
Fabio Manganiello
9623752e19
Fixed module name typo
2020-09-08 17:57:18 +02:00
Fabio Manganiello
53ddbad7ce
Refactored MLX90640 plugin and HTTP route to work with direct BytesIO - it improves performance over using temporary files or base64-encoded responses
2020-09-08 17:51:46 +02:00
Fabio Manganiello
ac02becba8
Switched RSS HTML digests style to inline CSS for better client cross-compatibility and added docstring to RssUpdates
2020-09-05 16:54:08 +02:00
Fabio Manganiello
13642cc42e
Possibility to customize the CSS in the generated RSS digests
2020-09-05 01:48:28 +02:00
Fabio Manganiello
d6f653d834
Using named arguments for formatting the parsed content of a feed
2020-09-05 01:43:33 +02:00
Fabio Manganiello
dc254d6474
Also include the link in an RSS feed digest
2020-09-05 01:39:16 +02:00
Fabio Manganiello
8a1f49a906
Open the source file in read non-binary mode in case of MIMEText
2020-09-05 01:29:43 +02:00
Fabio Manganiello
6dce4c59f6
(Forgot to pass the new arguments to the MIME constructor)
2020-09-05 01:27:08 +02:00
Fabio Manganiello
ce42f5aada
MIMEText doesn't accept the Name parameter
2020-09-05 01:25:12 +02:00
Fabio Manganiello
e9d4ed3911
Added more source fields to the RSS NewFeedEvent
2020-09-05 00:50:04 +02:00
Fabio Manganiello
2ceb3511b3
More robust websocket retry handler for Todoist
2020-09-04 22:59:23 +02:00
Fabio Manganiello
d27b23ec5a
Bump version: 0.13.4 → 0.13.5
2020-09-03 17:17:47 +02:00
Fabio Manganiello
9402e4f65f
Removed trailing column
2020-09-03 17:16:35 +02:00
Fabio Manganiello
a4c6028dc4
Fixed wrong code-block syntax
2020-09-03 14:32:51 +02:00
Fabio Manganiello
aeed86e377
Added missing docs
2020-09-03 14:26:48 +02:00
Fabio Manganiello
907bc0f75b
Added rtorrent integration [ closes #120 ]
2020-09-03 13:08:42 +02:00
Fabio Manganiello
d7806757c5
Polished mail integration
2020-09-02 01:34:18 +02:00
Fabio Manganiello
ca168828de
Added events on IMAP flagged/starred messages and extended IMAP plugin with remaining methods [ closes #146 ]
2020-09-02 00:07:08 +02:00
Fabio Manganiello
6c24783df7
Log full exceptions in case of failures in a procedure
2020-09-01 10:33:56 +02:00
Fabio Manganiello
a65a6e9d02
Added missing docs
2020-09-01 02:23:58 +02:00
Fabio Manganiello
681e9f1703
Added SMTP plugin [links to #146 ]
2020-09-01 01:52:22 +02:00
Fabio Manganiello
737c135996
More robust logic to pass procedures to the index.html template
2020-08-31 21:32:00 +02:00
Fabio Manganiello
edd2235cbc
Removed old reference to __plugins__ in kodi.js - using inspect.get_config
endpoint instead.
2020-08-31 18:31:15 +02:00
Fabio Manganiello
dc1b54961f
Added inspect.get_config()
method to get the configuration programmatically
2020-08-31 18:26:08 +02:00
Fabio Manganiello
3c3ee09d90
Fixed auto-generated docs indentation and code blocks
2020-08-31 17:39:42 +02:00
Fabio Manganiello
e533484505
Added missing docs
2020-08-31 15:34:48 +02:00
Fabio Manganiello
1681f80728
Added IMAP plugin and generic mail check backend [links to #146 ]
2020-08-31 15:33:03 +02:00
Fabio Manganiello
f1ab923bfe
Option to reuse the MQTT configuration of the plugin if not provided on the backend
2020-08-27 17:39:22 +02:00
Fabio Manganiello
d7c3ad64f5
Use default MQTT settings for MQTT listeners if not provided
2020-08-27 17:16:33 +02:00
Fabio Manganiello
ca0c4e3089
Don't overwrite the client variable within the same scope
2020-08-27 16:59:35 +02:00
Fabio Manganiello
beceb39b0c
Added client_id in MQTT integrations
2020-08-27 16:41:51 +02:00
Fabio Manganiello
9f1128e2c0
typo fix
2020-08-27 16:30:18 +02:00
Fabio Manganiello
e77e5bb3d8
Only expand paths if set
2020-08-27 16:29:21 +02:00
Fabio Manganiello
0d182820e8
expanduser for TLS files in MQTT listeners
2020-08-27 16:25:52 +02:00
Fabio Manganiello
f7df1d2f6e
typo fix
2020-08-27 16:01:51 +02:00
Fabio Manganiello
cd8732dc8f
Added tls_insecure flag to MQTT
2020-08-27 15:56:43 +02:00
Fabio Manganiello
b8917de52f
TLS version in MQTT configuration parsed from string
2020-08-27 12:44:00 +02:00
Fabio Manganiello
aa631deb88
Fixed docs typo
2020-08-24 01:24:24 +02:00
Fabio Manganiello
2e6388f6f4
ReadTheDocs fixes
2020-08-24 01:14:40 +02:00
Fabio Manganiello
5d2e74eb97
LINT fixes for LCD plugins
2020-08-24 00:42:34 +02:00
Fabio Manganiello
40269ddaad
Added missing docs
2020-08-23 21:13:14 +02:00
Fabio Manganiello
af614480b8
Added LCD display integration ( closes #145 )
2020-08-23 20:00:08 +01:00
Fabio Manganiello
7a7c065754
Added missing docs
2020-08-23 00:49:51 +02:00
Fabio Manganiello
6bed284e8b
Added DHT temperature/humidity sensor integration [ closes #113 ]
2020-08-22 23:46:21 +01:00
Fabio Manganiello
289eebd6a0
Moved definition of workdir inside the constructor, otherwise readthedocs will fail for missing configuration file
2020-08-22 15:33:44 +02:00
Fabio Manganiello
f54a5cdf87
Minimum required Python version bumped (3.5->3.6) and readthedocs Python interpreter upgraded (3.6->3.7).
2020-08-22 15:28:52 +02:00
Fabio Manganiello
43ef4bccdf
LINT fixes
2020-08-22 14:31:00 +02:00
Fabio Manganiello
1bb22d818a
Added missing docs
2020-08-22 14:26:47 +02:00
Fabio Manganiello
fa0a5805be
LINT fixes
2020-08-22 14:25:31 +02:00
Fabio Manganiello
bf92d66be1
Bump version: 0.13.3 → 0.13.4
2020-08-22 14:08:14 +02:00
Fabio Manganiello
a9509fc959
Pass the repo reference to the Github event
2020-08-22 12:25:55 +02:00
Fabio Manganiello
2dc8fe9437
Added Github backend [ closes #95 ]
2020-08-22 12:09:24 +02:00
Fabio Manganiello
a0d97c0f18
service_type and service_name are actually needed even if empty
2020-08-20 00:48:01 +02:00
Fabio Manganiello
d8f7b15111
Post ZeroconfServiceRemovedEvent also if the zeroconf_info object has already been deallocated
2020-08-20 00:40:02 +02:00
Fabio Manganiello
ddedcd647c
The Zeroconf object might already be closed after unregister_service
2020-08-20 00:37:39 +02:00
Fabio Manganiello
63ad4bfdce
Doc fixes
2020-08-20 00:35:06 +02:00
Fabio Manganiello
1abcb1de4b
Added Zeroconf to Travis requirements
2020-08-20 00:32:01 +02:00
Fabio Manganiello
8eb457017a
Added missing docs
2020-08-20 00:10:11 +02:00
Fabio Manganiello
019bcbf90a
Replaced values.unset in Twilio methods signature with None for JSON compatibility
2020-08-20 00:08:10 +02:00
Fabio Manganiello
403076e6ab
Fixed method name
2020-08-19 23:56:23 +02:00
Fabio Manganiello
988601b10e
Added Twilio integration [ closes #132 ]
2020-08-19 23:30:26 +02:00
Fabio Manganiello
cbae8132ed
Python 3.5 compatibility
2020-08-19 22:20:00 +02:00
Fabio Manganiello
5302d3143e
Better reconnection logic for mopidy backend
2020-08-19 20:23:33 +02:00
Fabio Manganiello
4b86b8ef54
Fixed ndef submodules import
2020-08-17 17:16:53 +02:00
Fabio Manganiello
62e5d03931
Matching new ndef naming conventions
2020-08-17 17:10:28 +02:00
Fabio Manganiello
d5292e068d
Re-formatted header
2020-08-16 16:06:13 +02:00
Fabio Manganiello
40c2c157ec
typo
2020-08-16 16:04:25 +02:00
Fabio Manganiello
ead5b94942
Readthedocs link copied to the README header
2020-08-16 16:03:58 +02:00
Fabio Manganiello
9b2c6ef62d
Added more links to the README
2020-08-16 16:02:42 +02:00
Fabio Manganiello
ccc01e1823
Extended README badges
2020-08-16 14:36:48 +02:00
Fabio Manganiello
9c52d96c08
Bump version: 0.13.2 → 0.13.3
2020-08-16 02:01:41 +02:00
Fabio Manganiello
06258b8304
Added missing docs
2020-08-16 01:59:18 +02:00
Fabio Manganiello
0659996c48
Added DBus integration [ closes #141 ]
2020-08-16 01:57:30 +02:00
Fabio Manganiello
af2dbf899d
Importing Zeroconf inside of the method to prevent Travic-CI from breaking because of module not found
2020-08-14 20:53:20 +02:00
Fabio Manganiello
20b095232d
Support for extended information in zeroconf.discover_service
2020-08-14 15:52:24 +02:00
Fabio Manganiello
72bb159263
python-zeroconf introduced (even more) breaking changes in 0.27.0.
...
Give up and explicitly depend on zeroconf>=0.27.0, even if this can
break other packages. For any issues, please shout at the python-zeroconf
maintainers.
2020-08-14 02:16:46 +02:00
Fabio Manganiello
f35bacaae5
Bump version: 0.13.1 → 0.13.2
2020-08-14 02:02:29 +02:00
Fabio Manganiello
c057cd13fd
python-zeroconf has introduced too many breaking changes - giving up.
2020-08-14 02:01:31 +02:00
Fabio Manganiello
b79fd4e25d
Bump version: 0.13.0 → 0.13.1
2020-08-14 00:37:39 +02:00
Fabio Manganiello
7e8bef40cd
Added Zeroconf integration [ closes #105 ]
2020-08-14 00:36:39 +02:00
Fabio Manganiello
bc3c01254e
Created FUNDIG.yml
2020-08-12 01:15:14 +02:00
Fabio Manganiello
dc5afebd27
Bump version: 0.12.10 → 0.13.0
2020-08-12 00:59:04 +02:00
Fabio Manganiello
5bb4053ed8
New webext commits
2020-08-12 00:58:37 +02:00
Fabio Manganiello
6b43a5e592
Added luma.oled display support
2020-08-11 14:48:14 +02:00
Fabio Manganiello
d3e52ba944
Backends should be started with daemon=True
2020-08-01 17:20:46 +02:00
Fabio Manganiello
6883db7f8b
New webext commits
2020-07-28 22:42:14 +02:00
Fabio Manganiello
65bac0ccc5
Fix for pychromecast.get_chromecasts new return type.
...
On newer versions of pychromecast get_chromecasts returns
a tuple (devices, browser_service) instead of a list. The
software should be robust enough with both older and newer
versions of pychromecast.
2020-07-25 01:35:06 +02:00
Fabio Manganiello
cabc154252
systemd unit should depend on redis
2020-07-20 01:42:28 +02:00
Fabio Manganiello
20e67ffc93
Bump version: 0.12.9 → 0.12.10
2020-07-20 00:20:19 +02:00
Fabio Manganiello
1973d1a6b5
Created python-publish.yml workflow
2020-07-19 23:46:32 +02:00
Fabio Manganiello
a6730d5252
Added generated CSS folder (prevents pyScss dependencies for binary builds)
2020-07-19 22:41:37 +02:00
Fabio Manganiello
e85bd125a9
Using https link instead of git (not supported by readthedocs)
2020-07-19 00:04:31 +02:00
Fabio Manganiello
3521f75eab
Webext update
2020-07-15 00:54:38 +02:00
Fabio Manganiello
09a8533413
Using git@ link instead of https:// link for web extension submodule
2020-07-15 00:07:51 +02:00
Fabio Manganiello
1c6393be4c
Updated web extension version
2020-07-07 23:25:00 +02:00
Fabio Manganiello
a3a5a2b955
Updated web extension version
2020-07-07 20:03:17 +02:00
Fabio Manganiello
590d416682
Google Translate API supports a maximum of 2000 characters per API call.
...
Therefore it's a good idea to split the input text/html.
2020-07-05 21:04:54 +02:00
Fabio Manganiello
f1c9554b1b
Updated web extension version
2020-07-05 01:36:10 +02:00
Fabio Manganiello
1c1e92149a
Updated web extension version
2020-07-04 00:59:24 +02:00
Fabio Manganiello
adc94349c7
Missing commas
2020-07-04 00:31:24 +02:00
Fabio Manganiello
b716b1a0c1
More robust URL query for YouTube
2020-07-04 00:25:49 +02:00
Fabio Manganiello
93ac6c8af9
Regex format fix
2020-07-04 00:18:45 +02:00
Fabio Manganiello
03dc524f80
Fixed response type
2020-07-04 00:15:44 +02:00
Fabio Manganiello
c943acb9c2
Smarter logic for parsing YouTube URLs in Kodi
2020-07-04 00:12:16 +02:00
Fabio Manganiello
a4824a4e95
Google Cloud Translate API works through GOOGLE_APPLICATION_CREDENTIALS env variable
2020-07-02 02:24:54 +02:00
Fabio Manganiello
566fd42ee8
Added missing docs
2020-07-02 02:08:53 +02:00
Fabio Manganiello
46515020cf
Added Google Translate plugin
2020-07-02 02:07:57 +02:00
Fabio Manganiello
facc6e7c15
Added web extension as submodule
2020-07-01 01:33:37 +02:00
Fabio Manganiello
1e15bb5606
Changed favicon
2020-07-01 01:08:31 +02:00
Fabio Manganiello
b32232b46e
Prevent a tight loop in HttpPoll if one of the requests fails
2020-07-01 00:53:23 +02:00
Fabio Manganiello
3174db5776
Always convert content to string before writing it to a file
2020-06-30 11:41:38 +02:00
Fabio Manganiello
11709641d7
Extended file plugin with more util methods
2020-06-29 23:53:11 +02:00
Fabio Manganiello
d560823887
Replaced deprecated options in PiCamera module
2020-06-27 13:55:18 +02:00
Fabio Manganiello
96716dc872
Support for pre-fetched HTML/Markdown content.
...
HTML output can be too large for the process called over the command
line. HTML data exchange now happens through an intermediate temporary
file.
2020-06-25 01:37:59 +02:00
Fabio Manganiello
f50ad767e0
Support for more arguments passed to the Mercury parser
2020-06-23 01:54:35 +02:00
Fabio Manganiello
4d650da3e5
Updated setup dependencies
2020-06-21 13:09:41 +02:00
Fabio Manganiello
a1c20a52da
Defined get_procedures() method on inspect plugin
2020-06-17 22:31:07 +02:00
Fabio Manganiello
fb58c89911
More robust node_to_dict code in case of race conditions where some of the attributes required to generate id_on_network are not available
2020-06-11 14:50:41 +02:00
Fabio Manganiello
4e8876309c
One last attempt to get shit to work
2020-06-10 12:37:26 +02:00
Fabio Manganiello
929b7c9a5c
Still trying to get CSS generation to happen within install...
2020-06-10 12:31:23 +02:00
Fabio Manganiello
f607c6757f
Trying to get web_build to run in install - see https://stackoverflow.com/questions/20194565/running-custom-setuptools-build-during-install
2020-06-10 12:24:13 +02:00
Fabio Manganiello
bfdc9d7d46
First run web_build then install
2020-06-10 12:16:43 +02:00
Fabio Manganiello
7441c35566
SCSS compilation done in install command instead of build
2020-06-10 12:15:05 +02:00
Fabio Manganiello
a18002dea0
The command class of a Z-Wave value can also be null: prevent the plugin from breaking in such case
2020-06-09 16:14:02 +02:00
Fabio Manganiello
9d6375f381
More robust logic in case of Tplink device not available
2020-06-08 19:43:08 +02:00
Fabio Manganiello
526bca847b
Bump version: 0.12.8 → 0.12.9
2020-06-08 00:38:04 +02:00
Fabio Manganiello
0ced46058a
Always set check_same_thread=False in case of SQLite engines.
...
Platypush is heavily multi-threaded, and it can happen that some
transactions are handled in different threads - and consistency
is managed by the application itself.
2020-06-08 00:27:41 +02:00
Fabio Manganiello
6ba92e7fdd
Added missing doc line
2020-05-23 23:12:45 +02:00
Fabio Manganiello
82a9aa1232
Added clipboard backend
2020-05-23 23:11:42 +02:00
Fabio Manganiello
b5f0e2b4df
Bump version: 0.12.7 → 0.12.8
2020-05-23 21:39:26 +02:00
Fabio Manganiello
3cdd9e8474
Added SSH plugin [ closes #136 ]
2020-05-23 21:38:22 +02:00
Fabio Manganiello
f20cb4df5b
No need to override background-color in main for dashboard
2020-05-23 12:26:45 +02:00
Fabio Manganiello
97343e97de
background-image for dashboard CSS
2020-05-23 12:22:56 +02:00
Fabio Manganiello
1b47615100
More robust attribute checking before conversion, as the object can actually be either a ZWaveNode or a ZWaveController
2020-05-22 12:08:17 +02:00
Fabio Manganiello
98ced4b4e4
Don't push a ZwaveNetworkStoppedEvent directly to the event_queue - the object type is incompatible
2020-05-22 11:54:19 +02:00
Fabio Manganiello
d6b509e98a
Replaced fullscreen auto logic with button toggle
2020-05-20 16:15:08 +02:00
Fabio Manganiello
82162c3c5e
Apply fullscreen to document.documentElement instead of getting the body
2020-05-20 15:58:28 +02:00
Fabio Manganiello
7e0a91d839
Portable implementation of fullscreen JS methods
2020-05-20 15:47:17 +02:00
Fabio Manganiello
e44dfbc169
Added fullscreen support in webpanel and dashboard
2020-05-20 15:29:49 +02:00
Fabio Manganiello
d595688d55
Use the /total/country/<cc> endpoint instead of /total/dayone/country/<cc>
2020-05-17 16:52:37 +02:00
Fabio Manganiello
0c10825d2e
Bump version: 0.12.6 → 0.12.7
2020-05-17 12:56:36 +02:00
Fabio Manganiello
51f99026ac
The network object isn't always available on a ZWave event
2020-05-17 12:56:01 +02:00
Fabio Manganiello
aa66b81b7b
Fixed webhook event management
2020-05-09 01:47:12 +02:00
Fabio Manganiello
80d5a6ad19
Support for multiple torrent sessions
2020-05-07 23:34:56 +02:00
Fabio Manganiello
26f6feebb7
Implemented retry+sleep mechanism in Switchbot plugin in case of errors
...
This should prevent race conditions in case of command timeout+quick
disconnection and retry that can result in race conditions and double
free corruptions.
2020-05-06 00:25:19 +02:00
Fabio Manganiello
99fee9ce20
Parse countries from the official country list
2020-05-04 13:15:17 +00:00
Fabio Manganiello
07299e49e7
Bump version: 0.12.5 → 0.12.6
2020-05-03 18:10:25 +02:00
Fabio Manganiello
d0ccd65214
Added Samsung smart TV web plugin
2020-05-03 17:21:16 +02:00
Fabio Manganiello
2f57ccf412
Added Samsung smart TV plugin
2020-05-03 00:57:13 +02:00
Fabio Manganiello
1cf93199d0
Adaptive dashboard widget height
2020-05-01 15:03:13 +02:00
Fabio Manganiello
1d24c878e6
Use both country and country_code on the event
2020-05-01 00:03:55 +02:00
Fabio Manganiello
a387b84623
Don't swallow the exception if something goes wrong in a Python hook
2020-04-30 23:55:28 +02:00
Fabio Manganiello
9d0f43707a
Support for list of countries
2020-04-30 22:45:04 +02:00
Fabio Manganiello
15c9feee9c
Added missing docs
2020-04-30 01:15:19 +02:00
Fabio Manganiello
77e302cd4b
Using session.merge instead of session.add to handle insert/update logic
2020-04-30 00:59:33 +02:00
Fabio Manganiello
3bb4c4434c
Added Covid-19 country stats plugin and backend/monitor
2020-04-30 00:44:34 +02:00
Fabio Manganiello
3c209a800b
New popcorn time API URLs
2020-04-28 13:49:31 +02:00
Fabio Manganiello
42d29ca1f6
LINT fixes
2020-04-23 18:33:57 +02:00
Fabio Manganiello
d067553a3a
Removed typoed package from .travis.requirements
2020-04-23 00:01:37 +00:00
Fabio Manganiello
8440320031
Don't swallow the stack trace in backend.http.request if a request fails
2020-04-22 23:46:05 +00:00
Fabio Manganiello
01ce9284a1
Bump version: 0.12.4 → 0.12.5
2020-04-12 22:56:33 +02:00
Fabio Manganiello
f7d644c32d
get_procedures() can now return Python function objects as well.
...
This means that the JSON encoder must act accordingly and parse
the function object into an encodable string.
2020-04-12 22:56:12 +02:00
Fabio Manganiello
124269776d
Support for procedure imports from scripts base module
2020-04-10 20:59:32 +02:00
Fabio Manganiello
25ea0ea77c
Included scripts_dir parent dir on sys.path so scripts can import members through the "scripts" package
2020-04-10 00:40:46 +02:00
Fabio Manganiello
0cd28f7499
If the response contains errors in run() then raise a RuntimeError, otherwise return the output instead of the Response object
2020-04-10 00:06:36 +02:00
Fabio Manganiello
7b79e4b669
Support for multiple positional arguments on utils.run()
2020-04-09 23:50:08 +02:00
Fabio Manganiello
ca718d0748
Bump version: 0.12.3 → 0.12.4
2020-04-09 00:15:08 +02:00
Fabio Manganiello
d46385687f
Support for event filter on functional hook
2020-04-09 00:09:36 +02:00
Fabio Manganiello
0dae03551f
Implemented interface for custom Python scripts, procedures and hooks [ closes #131 ]
2020-04-08 23:22:54 +02:00
Fabio Manganiello
3e56666ba3
Added Reddit channel to README
2020-03-31 23:04:47 +02:00
Fabio Manganiello
b490344632
Fixed missing static_folder issue on settings page and JS document race condition
2020-03-29 13:47:22 +02:00
Fabio Manganiello
13c25f94d5
Better fix for the calendar widget font size
2020-03-24 17:23:48 +01:00
Fabio Manganiello
9e32f1fb42
Tweaked font-size for upcoming event and other events in calendar widget
2020-03-24 17:14:13 +01:00
Fabio Manganiello
a388e8dd83
Reduced font-size for calendar events to prevent overflow on smaller screens
2020-03-24 17:06:14 +01:00
Fabio Manganiello
03968928e7
Don't do QRcode plugin base imports, or the web app may fail if the dependencies are not installed
2020-03-24 10:29:22 +01:00
Fabio Manganiello
7ce5efaf2e
Removed numpy and PIL top-level imports that could break the HTTP server if not installed on the system
2020-03-24 10:25:25 +01:00
Fabio Manganiello
4ece49bfe7
Added missing string format parameter
2020-03-24 09:11:07 +01:00
Fabio Manganiello
83a3f127cc
Added HTTP client environment variables to .gitignore
2020-03-24 00:18:04 +01:00
Fabio Manganiello
7af8fb581b
A more robust logic to check whether the first dimension of the input tensor is None
2020-03-23 23:54:18 +01:00
Fabio Manganiello
30a5f7b297
Fixed docs typo
2020-03-23 01:25:35 +01:00
Fabio Manganiello
41ccf3e5dc
Bump version: 0.12.2 → 0.12.3
2020-03-23 01:19:49 +01:00
Fabio Manganiello
0f099158cc
Bump version: 0.12.1 → 0.12.2
2020-03-23 01:15:54 +01:00
Fabio Manganiello
375a8376dc
Don't use Config.get on __init__, or docs build will fail because of missing config.yaml
2020-03-23 01:14:44 +01:00
Fabio Manganiello
f4dcf688f0
Set default values for metrics for regression and networks
2020-03-23 01:10:59 +01:00
Fabio Manganiello
50e372be36
Implemented extensive support for neural networks, images and directories [ closes #121 ]
2020-03-23 01:00:25 +01:00
Fabio Manganiello
1f1fefca9d
Tensorflow plugin implementation WIP [ #121 ]
...
TODO: Extend neural network implementation to work
also with e.g. input from images, sounds or binary
2020-03-21 19:50:59 +01:00
Fabio Manganiello
d938017bf8
Added support for extra mplayer arguments for TTS plugins
2020-03-16 18:40:17 +01:00
Fabio Manganiello
f2b3000922
Handle numpy types in the JSON message encoder
2020-03-14 18:35:45 +01:00
Fabio Manganiello
e7084b5d6f
Added CSV plugin
2020-03-13 01:29:43 +01:00
Fabio Manganiello
a130edb74f
Made QR-code scan work also on picamera
2020-03-11 01:06:07 +01:00
Fabio Manganiello
2992d5f726
List of dependencies for qrcode plugin should also include numpy
2020-03-10 22:50:33 +01:00
Fabio Manganiello
141275ecdf
Support for scanning QR-codes and barcodes through a camera plugin
2020-03-10 22:35:50 +01:00
Fabio Manganiello
c9db887505
Added QR code/barcode integration [ closes #119 ]
2020-03-10 00:07:21 +01:00
Fabio Manganiello
c26d456109
Added Linode integration [ closes #116 ]
2020-03-09 21:34:06 +01:00
Fabio Manganiello
096f84c865
Added OTP integration [ closes #118 ]
2020-03-09 01:11:23 +01:00
Fabio Manganiello
fc7982378a
The bluetooth BLE plugin must also implement get_measurement to work with the scanner backend
2020-03-08 23:50:23 +01:00
Fabio Manganiello
59e3f81202
Added bluetooth scanner backends [ closes #112 ]
2020-03-08 23:37:57 +01:00
Fabio Manganiello
535b2ec083
Changed mpd filter to dict on the frontend as well
2020-03-08 13:07:35 +01:00
Fabio Manganiello
42c5bbe0e4
Fixed LINT warnings and changed MPD filter format (from list to dict)
2020-03-08 13:04:00 +01:00
Fabio Manganiello
ed02505dce
Bump version: 0.12.0 → 0.12.1
2020-03-07 20:37:41 +01:00
Fabio Manganiello
642d5117a1
Added note about the license for PicoVoice Cheetah
2020-03-07 20:28:42 +01:00
Fabio Manganiello
46c20e9327
Added missing docs
2020-03-07 20:22:40 +01:00
Fabio Manganiello
ce0f3227ec
Implemented PicoVoice speech-to-text integration [ closes #130 ]
2020-03-07 20:21:32 +01:00
Fabio Manganiello
a5c08ed3e4
Added PicoVoice plugin with support for hotwords [see #130 ]
2020-03-07 02:00:35 +01:00
Fabio Manganiello
e04c6fb921
Extracted common logic for speech-to-text integrations into abstract STT plugin
2020-03-06 23:11:19 +01:00
Fabio Manganiello
7ed847b646
Removed __future__ annotations (it breaks readthedocs build)
2020-03-06 00:53:24 +01:00
Fabio Manganiello
1533f7ee69
Added wave to mocks list in readthedocs conf.py
2020-03-06 00:51:55 +01:00
Fabio Manganiello
b0339754b2
Implemented Mozilla DeepSpeech speech-to-text integration [ closes #126 ]
2020-03-06 00:38:24 +01:00
Fabio Manganiello
fc949ed9f1
Skip base Response type
2020-03-05 23:19:26 +01:00
Fabio Manganiello
27f847eac6
Support for is_muted/toggle_muted on Google assistant
2020-03-05 18:13:44 +01:00
Fabio Manganiello
124d2e356d
Support for mic muted/unmuted event in Google assistant
2020-03-05 18:03:05 +01:00
Fabio Manganiello
e66c02f3de
Added documentation for response objects as well
2020-03-05 17:41:26 +01:00
Fabio Manganiello
5504048c22
Don't iterate on data if data is None
2020-02-26 11:33:50 +01:00
Fabio Manganiello
6e93c03438
Set success=True when we're able to retrieve data from the sensor
2020-02-26 11:27:34 +01:00
Fabio Manganiello
cb0dd900ab
Don't overwrite the original byte read from serial
2020-02-26 11:22:52 +01:00
Fabio Manganiello
a9cb834499
Be more robust in case we receive non-Unicode characters on the serial port
2020-02-26 11:19:59 +01:00
Fabio Manganiello
52a13f0511
Implemented retry mechanism in sensor backend
2020-02-26 11:12:46 +01:00
Fabio Manganiello
76800e00b1
Use the right handlers for Zigbee network online/offline events
2020-02-25 18:38:44 +01:00
Fabio Manganiello
f74c44c7fb
There can be many Zigbee property set events; don't trigger a full refresh on all of them and only update the impacted devices instead
2020-02-25 18:13:11 +01:00
Fabio Manganiello
87a51b391c
Support for custom TTS engine for rendering assistant response (see #86 )
2020-02-24 20:23:22 +01:00
Fabio Manganiello
40a29a8214
fire_event could also be called by an external web server or service with no access to the bus. Therefore don't fail hard if the bus is not available
2020-02-24 17:17:36 +01:00
Fabio Manganiello
6e60edf2e1
Added missing docs
2020-02-23 23:36:22 +01:00
Fabio Manganiello
ce66e0c855
Bump version: 0.11.5 → 0.12.0
2020-02-23 23:33:32 +01:00
Fabio Manganiello
fb17aafe53
Support for custom audio volume for alarms
2020-02-23 23:09:40 +01:00
Fabio Manganiello
2d3c61173d
Added Zigbee web panel ( closes #123 )
2020-02-23 22:54:50 +01:00
Fabio Manganiello
0643b7fade
Support for intervals in seconds on alarm add/set
2020-02-22 16:18:56 +01:00
Fabio Manganiello
f8f3d2e310
Show default node number instead of empty string if name is not set
2020-02-22 01:10:36 +01:00
Fabio Manganiello
424077fdbc
Completed ZWave web panel (see #123 )
2020-02-22 01:00:52 +01:00
Fabio Manganiello
a9dbda455f
Support for default media player volume
2020-02-21 18:40:46 +01:00
Fabio Manganiello
70fe2459de
_event_callbacks is a protected attribute of mpv.MPV
2020-02-21 18:29:40 +01:00
Fabio Manganiello
9ee81d7999
Removed header from documentation - pydoc can't handle headers in methods
2020-02-21 18:20:38 +01:00
Fabio Manganiello
98727c4f31
Added support for values in Z-Wave web panel (see #123 )
2020-02-20 02:34:35 +01:00
Fabio Manganiello
a0ceb560b4
Implemented alarm/timer plugin ( closes #111 )
2020-02-17 19:37:22 +01:00
Fabio Manganiello
8248b5353f
Added status action to MediaPlugin interface
2020-02-17 18:12:40 +01:00
Fabio Manganiello
9b2e4f9d0c
Added count parameter to the ping backend
2020-02-17 13:39:40 +01:00
Fabio Manganiello
30e51ee299
Network initialization for the Pushbullet backend should be done in the run method.
...
Network errors in the constructor cause the whole application to fail.
Better to do the initialization in the run method with retries.
2020-02-17 00:46:33 +01:00
Fabio Manganiello
b83f6539a5
Removed old config example
2020-02-16 01:52:31 +01:00
Fabio Manganiello
fcef7af6a4
Adding Z-Wave web panel ( #123 ) [WIP]
2020-02-10 00:39:32 +01:00
Fabio Manganiello
c5adc141ea
More robust mechanism for websocket message send section locking
2020-02-06 19:30:40 +01:00
Fabio Manganiello
ca030c9b25
Websocket notifications delivery should be thread-safe.
...
If multiple threads process events and notify the websocket
clients at the same time then we may end up with inconsistent
messages delivered on the websocket (and websockets is not
designed to handle such cases). Protecting the send call with
a per-socket lock makes sure that we only write one message
at the time for a certain client.
2020-02-06 01:04:36 +01:00
Fabio Manganiello
a6526a2a2d
Added Z-Wave docs
2020-02-05 23:24:20 +01:00
Fabio Manganiello
02246a48ae
Added Z-Wave integration ( closes #76 )
2020-02-05 22:26:52 +01:00
Fabio Manganiello
8d203723da
Added -a option for platydock to attach to the instance after booting it up
2020-02-03 16:57:40 +01:00
Fabio Manganiello
96bdefdaf3
Use Debian Buster image instead of Alpine for docker images
2020-02-03 16:50:51 +01:00
Fabio Manganiello
20feedaf07
Use --no-cache-dir for pip installations in Dockerfile
2020-02-03 15:06:16 +00:00
Fabio Manganiello
8caa170676
Don't consider the trailing / in pre-select tab mode
2020-02-01 00:17:11 +01:00
Fabio Manganiello
b02b30656c
Using /#[plugin.name] as a URL hint for selecting a tab on load.
...
Closes #83
2020-01-31 20:29:47 +01:00
Fabio Manganiello
eff21c0720
Added /plugin/<plugin_name> route for single plugin view (see #83 )
2020-01-23 00:27:36 +01:00
Fabio Manganiello
8255f9af28
Added zigbee2mqtt integration (see #76 )
2020-01-22 18:34:28 +01:00
Fabio Manganiello
976c4c4854
Fixed Github pip links
2020-01-20 22:48:07 +01:00
Fabio Manganiello
410fad3e18
Bump version: 0.11.4 → 0.11.5
2020-01-20 22:38:36 +01:00
Fabio Manganiello
f3b50d0de1
Using the Github link for the flag-icon.css instead of cloning the whole submodule
2020-01-20 22:38:13 +01:00
Fabio Manganiello
6ad997a239
Bump version: 0.11.3 → 0.11.4
2020-01-20 22:28:00 +01:00
Fabio Manganiello
f91fd00067
Removed old comment note for esp.file_download
2020-01-20 15:41:24 +01:00
Fabio Manganiello
b484fcf9ed
- New implementation of esp.file_get that also works with binary files
...
- New communication protocol for downloaded chunks based on queues
instead of events.
2020-01-20 15:39:23 +01:00
Fabio Manganiello
4b56431e2a
Added proper support for ESP file upload/download ( closes #110 )
2020-01-20 11:47:10 +01:00
Fabio Manganiello
b7d9917d1d
Cleaned up unused variables
2020-01-20 08:54:59 +01:00
Fabio Manganiello
f38121d176
Always pause/resume speech detection on backend level
2020-01-19 16:32:41 +01:00
Fabio Manganiello
6c797b0ad9
Implemented support for assistant pause/resume conversation ( closes #109 )
2020-01-19 16:21:29 +01:00
Fabio Manganiello
89ae86492f
If the latest build is still running then we should wait and not process events
2020-01-19 15:43:39 +01:00
Fabio Manganiello
db862d1d96
Datetime conversion should also support cases where the input is a float timestamp represented as a string
2020-01-19 15:39:57 +01:00
Fabio Manganiello
42eabcf661
More robust ISO date to timestamp conversion
2020-01-19 15:37:55 +01:00
Fabio Manganiello
bbb52ba191
Always convert datetime to UNIX timestamp in Travis-Ci backend.
...
Python can't perform comparisons between offset-aware and
offset-naive dateime objects. Instead, convert them to UTC
timestamps before comparisons.
2020-01-19 15:35:13 +01:00
Fabio Manganiello
c44de5e2d7
Grouped common CSS and JS includes into separate templates
2020-01-19 14:47:51 +01:00
Fabio Manganiello
5ae57e3aaf
Added action to retrieve temperature and pressure from a DHT11/DHT22 sensor on ESP plugin
2020-01-18 20:15:31 +01:00
Fabio Manganiello
4e45c1d0bc
Removed font-awesome full submodule clone. Use the CDN-provided all.css file instead.
...
It won't work if the webapp runs on a device not connected to the internet,
but it saves a lot of installation space.
2020-01-18 19:59:02 +01:00
Fabio Manganiello
2598e2fb30
Replace the \r\n sequence with \n in the processed response
2020-01-18 18:26:23 +01:00
Fabio Manganiello
2f63a861cb
Fixed ESP plugin extra args formatting
2020-01-18 18:11:35 +01:00
Fabio Manganiello
c3c88b23fe
Added ESP8266/ESP32 integration ( closes #108 )
2020-01-17 21:16:14 +01:00
Fabio Manganiello
02607bae97
Dumb Python won't convert perfectly finely formatted ISO dates unless I do some manual conversion
2020-01-12 14:05:58 +01:00
Fabio Manganiello
b920927dab
Added Travis-Ci integration ( closes #104 )
2020-01-12 13:53:46 +01:00
Fabio Manganiello
f5b010c15c
Added nmap integration ( closes #99 )
2020-01-11 18:51:54 +01:00
Fabio Manganiello
1e342cc8a5
New interface for implementing backends.
...
Backends that simply poll for changes and wait some time
between checks can just implement a `loop()` method and,
optionally, `__enter__` and `__exit__` methods, so they
can perform initialization/cleanup logic within a context
manager.
2020-01-11 18:13:25 +01:00
Fabio Manganiello
a7ca779870
Argument of int() can't be nullable
2020-01-11 16:24:35 +01:00
Fabio Manganiello
3b2ca4d70c
Added Foursquare backend
2020-01-11 16:11:35 +01:00
Fabio Manganiello
3daf39e3e0
Stop polluting Pushbullet messages with StopEvent JSON whenever the backend stops.
2020-01-11 12:31:32 +01:00
Fabio Manganiello
b0a5f1e272
Added Foursquare integration - closes #94
2020-01-10 22:51:07 +01:00
Fabio Manganiello
ddbe76646b
Throw an assert error (no reload/retry mechanism) instead of a runtime error when a method is called outside of the registered plugin actions
2020-01-10 00:07:40 +01:00
Fabio Manganiello
2541cab0f7
_static directory in docs is no longer used
2020-01-09 23:44:52 +01:00
Fabio Manganiello
4c3140c9b5
Fixed docs
2020-01-09 23:40:59 +01:00
Fabio Manganiello
f2de1015a8
Fixed doc URL
2020-01-09 22:24:15 +01:00
Fabio Manganiello
4e4cf06b62
Added missing docs
2020-01-09 22:18:18 +01:00
Fabio Manganiello
e709908d7e
Added Google Drive plugin - closes #91
2020-01-09 22:07:03 +01:00
Fabio Manganiello
40e65d882f
Support for while/break/continue/return statemnts - closes #107
2020-01-09 10:28:02 +01:00
Fabio Manganiello
35cefcc9f5
Improved consistency and robustness of sensors backend
2020-01-08 22:58:24 +01:00
Fabio Manganiello
9d592fe370
Added battery sensor backend
2020-01-08 14:55:58 +01:00
Fabio Manganiello
6738ff832a
get_data/get_measurement/close should be implemented in a base SensorPlugin
...
class, not specifically in GpioSensorPlugin
2020-01-08 00:20:00 +01:00
Fabio Manganiello
aa6bf5379a
Added process management actions
2020-01-08 00:07:15 +01:00
Fabio Manganiello
c53dfab246
Added pid_exists action
2020-01-07 23:03:30 +01:00
Fabio Manganiello
8fe34d541b
Added system monitor integration - closes #98
2020-01-07 22:44:59 +01:00
Fabio Manganiello
3e2a9c0401
Skip torrent status responses with no url.
2020-01-07 09:59:45 +01:00
Fabio Manganiello
9134a231b3
success=true will always be in the response: deal with it
2020-01-07 09:46:26 +01:00
Fabio Manganiello
3271759fba
Added Pi-hole integration - closes #100
2020-01-06 19:22:04 +01:00
Fabio Manganiello
e880f00498
Added Graphite integration - closes #96
2020-01-06 15:24:52 +01:00
Fabio Manganiello
d73df1454e
Added TCP and UDP plugins - closes #106
2020-01-05 20:52:42 +01:00
Fabio Manganiello
c3024fba2d
Commented pycups in requirements.txt
2020-01-05 19:46:11 +01:00
Fabio Manganiello
bcd05ecf4a
Added CUPS plugin - closes #93
2020-01-05 19:25:20 +01:00
Fabio Manganiello
a9fdbe7812
Fixed code-block format
2020-01-05 13:11:44 +01:00
Fabio Manganiello
084b5ba807
Stop also board iterators on close
2020-01-05 13:02:41 +01:00
Fabio Manganiello
f0a77c12a4
Added Arduino docs
2020-01-05 00:50:58 +01:00
Fabio Manganiello
d8a7c9c6e0
Added Arduino over Firmata integration - closes #92
2020-01-05 00:46:46 +01:00
Fabio Manganiello
42686f229e
Added Trello backend docs
2020-01-03 16:58:45 +01:00
Fabio Manganiello
cc424c6e7a
Bump version: 0.11.2 → 0.11.3
2020-01-03 16:31:00 +01:00
Fabio Manganiello
8aadd5569e
Added Trello backend: closes #90
2020-01-03 16:28:49 +01:00
Fabio Manganiello
1de3296c85
Support for group events and lists of authorized chat_ids
2020-01-01 23:28:21 +01:00
Fabio Manganiello
846d5ff2eb
Support for underscores and minuses in Telegram command names
2020-01-01 22:33:57 +01:00
Fabio Manganiello
77ff88360b
music.mpd.play should add the resource at the beginning of the
...
current tracklist and play it, not clear the whole tracklist.
2020-01-01 21:16:27 +01:00
Fabio Manganiello
135cfc606c
Added the right handler for location events
2020-01-01 21:06:51 +01:00
Fabio Manganiello
de429a5b7d
Extended Telegram integration
2020-01-01 20:59:22 +01:00
Fabio Manganiello
fd5abc748f
Added missing docs
2020-01-01 17:55:19 +01:00
Fabio Manganiello
753694a865
Added Telegram integration
2020-01-01 15:40:42 +01:00
Fabio Manganiello
5948784677
Added missing docs
2019-12-31 09:12:28 +01:00
Fabio Manganiello
49a7ee643e
- Added Buienradar integration
...
- Refactored weather plugin/backend as Darksky plugin/backend
2019-12-31 08:51:19 +01:00
Fabio Manganiello
9eed1014eb
Added keyboard/mouse plugin
2019-12-30 21:39:56 +01:00
Fabio Manganiello
dc2b3689a2
Fixes
2019-12-30 19:04:13 +01:00
Fabio Manganiello
952a8f2faf
Added generation for events docs
2019-12-30 18:50:01 +01:00
Fabio Manganiello
cfbf05be24
Fixed backend docs base dir
2019-12-30 10:26:33 +01:00
Fabio Manganiello
1c7ff1d09b
Directory name typo
2019-12-30 10:22:05 +01:00
Fabio Manganiello
9d961a265f
Generated missing docs
2019-12-30 10:16:55 +01:00
Fabio Manganiello
bc7c248f72
Added Google Pub/Sub integration
2019-12-30 09:33:26 +01:00
Fabio Manganiello
8f2eb1c4e0
Reimplemented workers as threads instead of processes
2019-12-29 23:18:58 +01:00
Fabio Manganiello
931ab9d673
Removed debug print
2019-12-29 16:55:50 +01:00
Fabio Manganiello
ba6c890a42
Refactored and improved camera plugin
2019-12-29 16:28:07 +01:00
Fabio Manganiello
663be43f06
Added ping plugin and backend
2019-12-27 23:26:39 +01:00
Fabio Manganiello
ce2b3ae849
LINT fixes
2019-12-27 19:22:48 +01:00
Fabio Manganiello
5ba18ea7d5
Added Trello integration
2019-12-27 19:18:56 +01:00
Fabio Manganiello
f0999c7375
Added is_streaming method to camera.pi
2019-12-27 17:10:36 +01:00
Fabio Manganiello
fb2ff7d1d6
Improved management of PiCamera start/stop streaming events
2019-12-27 16:56:07 +01:00
Fabio Manganiello
b880a02ef6
Fixed websocket on_error handler signature
2019-12-25 20:43:20 +01:00
Fabio Manganiello
29789461d7
Added Todoist integration
2019-12-25 20:33:26 +01:00
Fabio Manganiello
7ecb27463c
Added missing '@'
2019-12-24 14:04:23 +01:00
Fabio Manganiello
ba31d4f4c9
Fixed parameter access
2019-12-24 14:00:06 +01:00
Fabio Manganiello
2edb3f0944
Added button for refreshing available cameras
2019-12-24 13:52:14 +01:00
Fabio Manganiello
ef58cc9e32
Support for username/password in camera URLs if authentication is required
2019-12-24 13:52:14 +01:00
Fabio Manganiello
5d5e8b54ae
Other typing adjustments for dumb Python 3.5 compatibility
2019-12-23 21:49:16 +01:00
Fabio Manganiello
36835a1706
Fixed Python 3.5 compatibility for Zeroborg plugin
2019-12-23 21:40:30 +01:00
Fabio Manganiello
ff9e1c71a7
Prevent race condition on self._drive_thread = None
2019-12-23 18:48:01 +01:00
Fabio Manganiello
7f440a9160
s/or/and/
2019-12-23 18:43:59 +01:00
Fabio Manganiello
d5c2ae961a
Reset the mode if GPIO.getmode() returns None for any reason
2019-12-23 18:40:39 +01:00
Fabio Manganiello
9ffa04c666
Removed auto mode from Zeroborg plugin
2019-12-23 17:57:35 +01:00
Fabio Manganiello
50a7746bf0
Refactored ZeroBorg plugin
2019-12-23 00:36:53 +01:00
Fabio Manganiello
7a7acbe6b9
Support for Zeroborg events
2019-12-22 23:54:45 +01:00
Fabio Manganiello
b36a8095ab
Sleep for (default: 0.1 seconds) between reads when distance sensor runs in
...
continuous mode to prevent excessive CPU load
2019-12-22 19:56:43 +01:00
Fabio Manganiello
17d233b55d
Fixed __exit__ arguments list in GpioSensorDistance
2019-12-22 19:40:41 +01:00
Fabio Manganiello
470f4a8fc9
Added disable_web_clients_notification on Event for events
...
generated with high throughput that shouldn't be propagated
to the connected websockets.
2019-12-22 19:38:01 +01:00
Fabio Manganiello
d6515ed991
Added support for continuous checks on distance sensor and DistanceSensorEvent
2019-12-22 19:09:02 +01:00
Fabio Manganiello
9c4f917b53
LINT fixes
2019-12-22 18:18:41 +01:00
Fabio Manganiello
55d3f379d4
LINT fixes
2019-12-22 18:14:42 +01:00
Fabio Manganiello
a23f5446da
Added GPIO web panel
2019-12-22 18:10:30 +01:00
Fabio Manganiello
d33494419a
Added cleanup action on GPIO plugin
2019-12-21 23:36:09 +01:00
Fabio Manganiello
bdfe48fe32
Refactored integration between ZeroBorg and distance sensor plugin
2019-12-21 13:09:44 +01:00
Fabio Manganiello
58b0b48393
Added gpio.cleanup at the end of get_measurement in distance sensor plugin
2019-12-20 21:40:57 +01:00
Fabio Manganiello
4090570278
GpioSensorDistancePlugin should extend GpioPlugin
2019-12-20 21:24:52 +01:00
Fabio Manganiello
b375c9dd9f
Fixed docs
2019-12-20 21:22:48 +01:00
Fabio Manganiello
f0751cb37d
Fixed typo
2019-12-20 18:56:00 +01:00
Fabio Manganiello
1077dbcf71
Added mode (BOARD/BCM) parameter to GPIO plugins
2019-12-20 18:27:52 +01:00
Fabio Manganiello
93a3c72d4e
Added camera.android.ipcam web panel
2019-12-18 01:00:56 +01:00
Fabio Manganiello
416c9ceb93
Fixed picamera mjpeg stream
2019-12-17 22:44:15 +01:00
Fabio Manganiello
634aeec58d
Refactored camera.pi endpoints
2019-12-17 21:51:55 +01:00
Fabio Manganiello
17af488b32
Using an io memory buffer to write the streamed images instead of a
...
physical file to improve streaming performance
2019-12-17 21:32:56 +01:00
Fabio Manganiello
60d5e7a0f6
Response cast fix
2019-12-17 20:00:08 +01:00
Fabio Manganiello
fb744dbc74
Added picamera streaming route and web panel tab
2019-12-17 19:54:38 +01:00
Fabio Manganiello
bce4c7c51e
Support for static list of devices in switch.tplink plugin to reduce scanning time and prevent stupid "communication protocol errors" on scan
2019-12-17 10:56:00 +01:00
Fabio Manganiello
66d00ee428
Added Android IPCam support
2019-12-17 00:56:28 +01:00
Fabio Manganiello
0cef9c6070
No need to explicitly specify request_queue and response_queue on Worker derived classes
2019-12-15 19:55:14 +01:00
Fabio Manganiello
d1ea69262a
Prevent active wait on the list of workers
2019-12-15 19:50:47 +01:00
Fabio Manganiello
6082eb62d5
- Added support for device scanning in switch.wemo plugin
...
- Added generic interface for workers to run jobs in parallel
2019-12-15 19:42:48 +01:00
Fabio Manganiello
5481990834
Using scan_timeout value in switch.switchbot plugin when discovering a device characteristics
2019-12-14 15:57:00 +01:00
Fabio Manganiello
4d361b59a3
Bump version: 0.11.1 → 0.11.2
2019-12-13 09:35:43 +00:00
Fabio Manganiello
623bff0267
Added docs for bluetooth plugins and backends
2019-12-13 02:11:23 +01:00
Fabio Manganiello
af24f36519
- Added bluetooth LTE plugin
...
- Switchbot plugin rewritten as an implementation of bluetooth BLE
see #89
2019-12-13 02:08:43 +01:00
Fabio Manganiello
e1ed7f681c
Added bluetooth OBEX file browser service (see #89 )
2019-12-12 00:11:27 +01:00
Fabio Manganiello
5d2d7d55af
Added bluetooth OBEX file receiver service (see #89 )
2019-12-11 22:22:56 +01:00
Fabio Manganiello
8c41110145
Added bluetooth plugin (see #89 )
2019-12-11 18:05:17 +01:00
Fabio Manganiello
2c8993e67d
LINT fixes
2019-12-09 19:22:38 +01:00
Fabio Manganiello
f8a709fe98
Improved Pushbullet plugin
2019-12-09 11:00:31 +00:00
Fabio Manganiello
d7266b21e5
Added example config.yaml
2019-12-08 23:21:27 +01:00
Fabio Manganiello
93b378a430
Added examples for config.yaml and platypush.service files
2019-12-08 23:19:49 +01:00
Fabio Manganiello
09caa66317
Return immediately in _parse_records if tag.ndef is null
2019-12-08 21:25:39 +01:00
Fabio Manganiello
caa962c686
Added docs for nodered backend
2019-12-08 19:03:42 +01:00
Fabio Manganiello
d498c21518
Implemented Node-RED backend, solves #88
2019-12-08 19:02:08 +01:00
Fabio Manganiello
588e16df5d
Added docs for inspect plugin
2019-12-08 17:48:52 +01:00
Fabio Manganiello
a6488e15fe
Don't treat the execute tab as a special tab in the web panel,
...
otherwise configurations with enabled_plugins/disabled_plugins
won't work with it
2019-12-08 17:33:21 +01:00
Fabio Manganiello
be5c5d365c
Added execute tab to webpanel
2019-12-08 16:25:03 +01:00
Fabio Manganiello
f378fa8832
MPV.Event.IDLE should also be treated as a player stop event
2019-12-07 17:16:48 +01:00
Fabio Manganiello
d6f251989c
Added missing __init__.py
2019-12-05 00:46:05 +01:00
Fabio Manganiello
e3d44b56dd
Added Join plugin to control remote Android devices
2019-12-05 00:42:29 +01:00
Fabio Manganiello
0f0f8f8a94
LINT fixes
2019-12-05 00:42:29 +01:00
Fabio Manganiello
08119add97
Optimized WeMo plugin
2019-12-05 00:42:29 +01:00
Fabio Manganiello
fc360e3e43
Bump version: 0.11.0 → 0.11.1
2019-12-04 12:28:01 +00:00