Fabio Manganiello
56dc8d0972
Migrated the webapp to Tornado.
...
It was just too painful to find a combination of versions of gunicorn,
gevent, eventlet, pyuwsgi etc. that could work on all of my systems.
On the other hand, Tornado works out of the box with no headaches.
Also in this commit:
- Updated a bunch of outdated/required integration dependencies.
- Black'd and LINTed a couple of old plugins.
2023-05-08 02:06:45 +02:00
Fabio Manganiello
692180c653
Back to uvicorn workers from eventlet.
...
The eventlet API has way too many dependency issues with gunicorn.
Still TODO: Fix or at least mitigate the WSGI workers timeout issue when
they handle websocket connections.
2023-05-07 15:37:58 +02:00
Fabio Manganiello
f9b0bc905e
Migrated websocket service.
...
The websocket service is no longer provided by a different service,
controlled by a different thread running on another port.
Instead, it's now exposed directly over Flask routes, using
WSGI+eventlet+simple_websocket.
Also, the SSL context options have been removed from `backend.http`, for
sake of simplicity. If you want to enable SSL, you can serve Platypush
through a reverse proxy like nginx.
2023-05-07 12:08:28 +02:00
Fabio Manganiello
3aefc9607d
Migrated from waitress to gunicorn.
...
`waitress`, unlike `gunicorn`, doesn't provide an easy way to plug into
a WSGI socket that can be used for the websocket interface.
2023-05-07 00:42:57 +02:00
Fabio Manganiello
ca65db016e
Added description line to conf.py
.
2023-05-06 23:26:07 +02:00
Fabio Manganiello
285f3941d9
Always use an external uWSGI server to run the web service.
...
Added `waitress` dependency. For performance and security reasons, it's
better to always run the Flask application inside of a uWSGI server.
`waitress` also makes things easier by avoiding to ask the user to
manually provide the external executable arguments, as it was the case
with `uwsgi` and `gunicorn`.
2023-05-05 00:07:13 +02:00
Fabio Manganiello
9fd7f7db04
Fixed compatibility with new Sphinx version
2023-05-04 01:05:27 +02:00
Fabio Manganiello
0fc05135df
Updated docs
2023-04-23 02:14:57 +02:00
Fabio Manganiello
f9ce4b75e8
Updated docs
2023-04-03 01:36:12 +02:00
Fabio Manganiello
2781eb1fb1
Merge branch 'master' into 29-generic-entities-support
2023-03-27 00:36:50 +02:00
Fabio Manganiello
7a368ebbb8
[ #240 ] Migrated clipboard
plugin from pyperclip
to pyclip
.
...
Closes : #240
2023-03-26 23:52:15 +02:00
Fabio Manganiello
3bb2336b3a
Updated docs
2023-03-26 15:13:48 +02:00
Fabio Manganiello
3743ee4f00
s/TheengsGateway/TheengsDecoder/g now that the pip package has been published.
2023-03-20 01:41:21 +01:00
Fabio Manganiello
94c4e52154
Mock PyOBEX.client in readthedocs conf.py
2023-03-03 01:58:32 +01:00
Fabio Manganiello
aa0b909fff
Use the TheengsDecoder to parse Bluetooth packets and map services to native entities.
2023-02-20 20:27:17 +01:00
Fabio Manganiello
613e32e7c1
Extended number of supported events and data fields in Bluetooth integration.
2023-02-18 01:15:10 +01:00
Fabio Manganiello
b0cc80ceb0
Rewriting bluetooth.ble
plugin to use bleak
instead of gattlib
.
2023-02-10 17:40:20 +01:00
Fabio Manganiello
8469a1027f
Migrated/refactored switchbot.bluetooth
integration.
...
- Out `gattlib` + `pybluez`, in `bleak`. It's not platform-dependent, it doesn't
require libboost and other heavy build dependencies, and it doesn't require the
user that runs the service from having special privileges to access raw
Bluetooth sockets.
- Better integration with Platypush native entities. The devices are now mapped
to write-only `EnumSwitch` entities, and the status returns the serialized
representation of those entities instead of the previous intermediate
representation.
2023-02-08 22:42:00 +01:00
Fabio Manganiello
b7f266cd92
Merge branch 'master' into 29-generic-entities-support
2023-01-07 22:31:36 +01:00
Fabio Manganiello
a77206800d
Added HID plugin to support interaction with generic HID devices
2023-01-07 22:30:32 +01:00
Fabio Manganiello
2cc80e7f16
Merge branch 'master' into 191-support-for-general-entities-backend-and-plugin
2022-10-07 00:05:54 +02:00
Fabio Manganiello
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
Fabio Manganiello
ae226a5b01
Added tts.mimic3
integration.
...
Closes : #226
2022-09-30 10:51:17 +02:00
Fabio Manganiello
4bab9d2607
[ #224 ] Implemented Wallabag integration
2022-09-29 10:51:16 +02:00
Fabio Manganiello
deb25196d2
Merge branch 'master' into 191-support-for-general-entities-backend-and-plugin
2022-09-28 02:17:10 +02:00
Fabio Manganiello
1b405de0d5
Added missing docs
2022-09-17 06:09:39 +02:00
Fabio Manganiello
1880a99052
Merge branch 'master' into 191-support-for-general-entities-backend-and-plugin
2022-08-29 01:41:47 +02:00
Fabio Manganiello
540a7d469e
- Fixed documentation errors and warnings
...
- Split Matrix integration into `plugin` and `client` files.
2022-08-29 00:55:46 +02:00
Fabio Manganiello
4308024eef
Added missing docs
2022-08-28 15:18:23 +02:00
Fabio Manganiello
513195b396
Implemented support for file upload
2022-08-27 15:12:50 +02:00
Fabio Manganiello
cbe2e7bbfe
[WIP]
2022-08-04 03:08:54 +02:00
Fabio Manganiello
3513ee3e1c
Merge branch 'master' into 191-support-for-general-entities-backend-and-plugin
2022-07-08 23:13:36 +02:00
Fabio Manganiello
cbf8ba7fdd
Updated wiki URLs and replaced Gitlab references with Gitea
2022-07-06 22:01:25 +02:00
Fabio Manganiello
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
Fabio Manganiello
0919a0055d
Merge branch 'master' into 191-support-for-general-entities-backend-and-plugin
2022-06-02 00:13:43 +02:00
Fabio Manganiello
8be515c17b
[ closes #219 ] Added ntfy integration
2022-06-01 23:01:29 +02:00
Fabio Manganiello
e40b668380
Added missing docs
2022-04-07 01:49:13 +02:00
Fabio Manganiello
385914c04a
Added missing docs for gpio events
2022-03-27 18:30:46 +02:00
Fabio Manganiello
fdf6d8fb4e
Better auto-generated documentation and fixed docstring warnings
2022-03-03 20:26:25 +01:00
Fabio Manganiello
0d0797a465
Added Jellyfin integration
2022-03-01 01:32:50 +01:00
Fabio Manganiello
08b3cddb7b
Added missing docs for dbus events
2022-02-07 21:29:21 +01:00
Fabio Manganiello
530245733c
FIX: Fixed defusedxml module mock definition in docs/conf.py
2022-02-07 20:47:56 +01:00
Fabio Manganiello
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
Fabio Manganiello
e9f6d9a8bc
Refactored RSS integration into its own rss
plugin [ closes #199 ]
2022-01-06 00:46:05 +01:00
Fabio Manganiello
3e4b91cd6c
Removed pytz dependency
2022-01-05 18:04:32 +01:00
Fabio Manganiello
ea3b49a17f
Use inherited-members: true in autodoc_default_options to ensure documentation of inherited actions
2021-11-15 01:05:53 +01:00
Fabio Manganiello
6ba3128ac4
[ #201 ] Added Mailgun integration
2021-11-14 22:40:59 +01:00
Fabio Manganiello
d7b273434b
[ #203 ] Added IRC integration
2021-11-14 19:43:19 +01:00
Fabio Manganiello
acdc636b1f
Resolve "Mastodon integration"
2021-11-07 01:00:29 +01:00
Fabio Manganiello
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
Fabio Manganiello
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
Fabio Manganiello
d844890ab2
Bump version: 0.22.2 → 0.22.3
2021-10-01 23:53:05 +02:00
Fabio Manganiello
c4bd854be2
Added docs for ngrok plugin
2021-09-25 01:37:19 +02:00
Fabio Manganiello
68831e9e81
[ #196 ] Added ngrok integration
2021-09-25 01:34:45 +02:00
Fabio Manganiello
f147c44a8a
Fixed docs issues
2021-09-22 00:19:14 +02:00
Fabio Manganiello
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
Fabio Manganiello
3bfc5b83ef
Moved to manifest files for describing plugins and backends and their dependencies
2021-09-16 17:53:40 +02:00
Fabio Manganiello
90ec108580
Added Slack integration
2021-07-28 01:09:09 +02:00
Fabio Manganiello
371dd6da0a
Added sun
plugin [ closes #194 ]
2021-07-22 01:02:15 +02:00
Fabio Manganiello
f250681a78
Refactored documentation and changed theme
2021-07-17 14:41:35 +02:00
Fabio Manganiello
af7977bcf7
Added music.spotify.connect backend
2021-06-25 22:47:40 +02:00
Fabio Manganiello
fc1d9ad3e6
Added joystick.linux backend
2021-05-17 14:52:08 +02:00
Fabio Manganiello
f296f4b161
Added generic joystick.jstest
backend
2021-05-15 23:28:24 +02:00
Fabio Manganiello
664ce4050d
Added Switchbot plugin
2021-05-10 18:43:00 +02:00
Fabio Manganiello
69583d2e15
Added support for Marshmallow schemas in responses
2021-05-10 18:42:13 +02:00
Fabio Manganiello
c006c4b368
Added zwave.mqtt plugin and backend [ closes #186 ]
2021-04-12 02:45:59 +02:00
Fabio Manganiello
2a78f81a7b
Major LINT fixes
2021-04-05 00:58:44 +02:00
Fabio Manganiello
f8564c19cd
Added log.http backend to monitor HTTP logs [ closes #167 ]
2021-03-16 00:03:32 +01:00
Fabio Manganiello
632a7ab792
Added README for auto-generated docs and changed theme to sphinx-material
2021-03-14 15:07:10 +01:00
Fabio Manganiello
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
Fabio Manganiello
6f224cbda9
Removed legacy "local" backend and pusher script
2021-03-13 01:52:15 +01:00
Fabio Manganiello
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
Fabio Manganiello
4ada1c663d
Added SmartThings plugin [ #148 ]
2021-03-05 02:23:28 +01:00
Fabio Manganiello
151d0008ee
Removed docs references to removed plugin media.ctrl
2021-02-21 23:34:47 +01:00
Fabio Manganiello
0ad4597daf
No need to keep the wiki as a submodule
2021-02-02 01:26:54 +01:00
Fabio Manganiello
254045283b
Removed deprecated message.events.path module
2021-02-02 00:54:17 +01:00
Fabio Manganiello
41b8b738d6
Fixed links referenced in the documentation
2021-02-02 00:50:17 +01:00
Fabio Manganiello
0411145ebf
Updated blog link
2021-02-02 00:32:39 +01:00
fabio-eiq
7d4d9eb438
Refactored submodules
2021-01-25 13:26:20 +01:00
Fabio Manganiello
e2415928a7
Added blog as submodule
2021-01-23 19:54:13 +01:00
Fabio Manganiello
e2e7011e53
s/github.com/git.platypush.tech/g
2021-01-23 15:03:43 +01:00
Fabio Manganiello
cc36325ca6
Added support for custom user events
2020-10-28 23:28:41 +01:00
Fabio Manganiello
6d7f1502ce
Wiki updated
2020-10-13 23:47:10 +02:00
Fabio Manganiello
05b0a7f14d
Added GStreamer media plugin [ closes #151 ]
2020-09-29 15:32:40 +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
00012aacae
Added missing docs
2020-09-27 17:12:37 +02:00
Fabio Manganiello
c0f7cc0782
Added NextCloud integration [ closes #149 ]
2020-09-10 11:10:26 +02:00
Fabio Manganiello
aeed86e377
Added missing docs
2020-09-03 14:26:48 +02:00
Fabio Manganiello
a65a6e9d02
Added missing docs
2020-09-01 02:23:58 +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
2e6388f6f4
ReadTheDocs fixes
2020-08-24 01:14:40 +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
1bb22d818a
Added missing docs
2020-08-22 14:26:47 +02:00
Fabio Manganiello
2dc8fe9437
Added Github backend [ closes #95 ]
2020-08-22 12:09:24 +02:00