carconnectivity-plugin-database 0.1a19__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- carconnectivity_database/__init__.py +0 -0
- carconnectivity_database/carconnectivity_database_base.py +26 -0
- carconnectivity_plugin_database-0.1a19.dist-info/METADATA +74 -0
- carconnectivity_plugin_database-0.1a19.dist-info/RECORD +48 -0
- carconnectivity_plugin_database-0.1a19.dist-info/WHEEL +5 -0
- carconnectivity_plugin_database-0.1a19.dist-info/entry_points.txt +2 -0
- carconnectivity_plugin_database-0.1a19.dist-info/licenses/LICENSE +21 -0
- carconnectivity_plugin_database-0.1a19.dist-info/top_level.txt +2 -0
- carconnectivity_plugins/database/__init__.py +0 -0
- carconnectivity_plugins/database/_version.py +34 -0
- carconnectivity_plugins/database/agents/base_agent.py +2 -0
- carconnectivity_plugins/database/agents/charging_agent.py +523 -0
- carconnectivity_plugins/database/agents/climatization_agent.py +80 -0
- carconnectivity_plugins/database/agents/drive_state_agent.py +368 -0
- carconnectivity_plugins/database/agents/state_agent.py +162 -0
- carconnectivity_plugins/database/agents/trip_agent.py +225 -0
- carconnectivity_plugins/database/model/__init__.py +19 -0
- carconnectivity_plugins/database/model/alembic.ini +100 -0
- carconnectivity_plugins/database/model/base.py +4 -0
- carconnectivity_plugins/database/model/carconnectivity_schema/README +1 -0
- carconnectivity_plugins/database/model/carconnectivity_schema/__init__.py +0 -0
- carconnectivity_plugins/database/model/carconnectivity_schema/env.py +78 -0
- carconnectivity_plugins/database/model/carconnectivity_schema/script.py.mako +24 -0
- carconnectivity_plugins/database/model/carconnectivity_schema/versions/__init__.py +0 -0
- carconnectivity_plugins/database/model/charging_power.py +52 -0
- carconnectivity_plugins/database/model/charging_rate.py +52 -0
- carconnectivity_plugins/database/model/charging_session.py +144 -0
- carconnectivity_plugins/database/model/charging_state.py +57 -0
- carconnectivity_plugins/database/model/charging_station.py +66 -0
- carconnectivity_plugins/database/model/climatization_state.py +57 -0
- carconnectivity_plugins/database/model/connection_state.py +57 -0
- carconnectivity_plugins/database/model/datetime_decorator.py +44 -0
- carconnectivity_plugins/database/model/drive.py +89 -0
- carconnectivity_plugins/database/model/drive_consumption.py +48 -0
- carconnectivity_plugins/database/model/drive_level.py +50 -0
- carconnectivity_plugins/database/model/drive_range.py +53 -0
- carconnectivity_plugins/database/model/drive_range_full.py +53 -0
- carconnectivity_plugins/database/model/location.py +85 -0
- carconnectivity_plugins/database/model/migrations.py +24 -0
- carconnectivity_plugins/database/model/outside_temperature.py +52 -0
- carconnectivity_plugins/database/model/state.py +56 -0
- carconnectivity_plugins/database/model/tag.py +31 -0
- carconnectivity_plugins/database/model/timedelta_decorator.py +33 -0
- carconnectivity_plugins/database/model/trip.py +85 -0
- carconnectivity_plugins/database/model/vehicle.py +186 -0
- carconnectivity_plugins/database/plugin.py +167 -0
- carconnectivity_plugins/database/ui/plugin_ui.py +48 -0
- carconnectivity_plugins/database/ui/templates/database/status.html +8 -0
|
File without changes
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"""Module containing the commandline interface for the carconnectivity package."""
|
|
2
|
+
from __future__ import annotations
|
|
3
|
+
from typing import TYPE_CHECKING
|
|
4
|
+
|
|
5
|
+
import logging
|
|
6
|
+
|
|
7
|
+
from carconnectivity.carconnectivity_base import CLI
|
|
8
|
+
|
|
9
|
+
from carconnectivity_plugins.database._version import __version__
|
|
10
|
+
|
|
11
|
+
if TYPE_CHECKING:
|
|
12
|
+
pass
|
|
13
|
+
|
|
14
|
+
LOG = logging.getLogger("carconnectivity-database")
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def main() -> None:
|
|
18
|
+
"""
|
|
19
|
+
Entry point for the car connectivity database application.
|
|
20
|
+
|
|
21
|
+
This function initializes and starts the command-line interface (CLI) for the
|
|
22
|
+
car connectivity application using the specified logger and application name.
|
|
23
|
+
"""
|
|
24
|
+
cli: CLI = CLI(logger=LOG, name='carconnectivity-database', description='Commandline Interface to interact with Car Services of various brands',
|
|
25
|
+
subversion=__version__)
|
|
26
|
+
cli.main()
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: carconnectivity-plugin-database
|
|
3
|
+
Version: 0.1a19
|
|
4
|
+
Summary: CarConnectivity plugin for storing data to Databases
|
|
5
|
+
Author: Till Steinbach
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Classifier: Development Status :: 3 - Alpha
|
|
8
|
+
Classifier: Intended Audience :: End Users/Desktop
|
|
9
|
+
Classifier: Intended Audience :: System Administrators
|
|
10
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
16
|
+
Classifier: Topic :: Utilities
|
|
17
|
+
Classifier: Topic :: System :: Monitoring
|
|
18
|
+
Classifier: Topic :: Home Automation
|
|
19
|
+
Requires-Python: >=3.9
|
|
20
|
+
Description-Content-Type: text/markdown
|
|
21
|
+
License-File: LICENSE
|
|
22
|
+
Requires-Dist: carconnectivity>=0.10
|
|
23
|
+
Requires-Dist: sqlalchemy~=2.0.45
|
|
24
|
+
Requires-Dist: psycopg2-binary~=2.9.11
|
|
25
|
+
Requires-Dist: alembic~=1.17.2
|
|
26
|
+
Requires-Dist: SQLAlchemy-Utc~=0.14.0
|
|
27
|
+
Dynamic: license-file
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
# CarConnectivity Plugin for Database storage
|
|
32
|
+
[](https://github.com/tillsteinbach/CarConnectivity-plugin-database/)
|
|
33
|
+
[](https://github.com/tillsteinbach/CarConnectivity-plugin-database/releases/latest)
|
|
34
|
+
[](https://github.com/tillsteinbach/CarConnectivity-plugin-database/blob/master/LICENSE)
|
|
35
|
+
[](https://github.com/tillsteinbach/CarConnectivity-plugin-database/issues)
|
|
36
|
+
[](https://pypi.org/project/carconnectivity-plugin-database/)
|
|
37
|
+
[](https://pypi.org/project/carconnectivity-plugin-database/)
|
|
38
|
+
[](https://www.paypal.com/donate?hosted_button_id=2BVFF5GJ9SXAJ)
|
|
39
|
+
[](https://github.com/sponsors/tillsteinbach)
|
|
40
|
+
|
|
41
|
+
[CarConnectivity](https://github.com/tillsteinbach/CarConnectivity) is a python API to connect to various car services. If you want to store the data collected from your vehicle to a relational database (e.g. MySQL, PostgreSQL, or SQLite) this plugin will help you.
|
|
42
|
+
|
|
43
|
+
### Install using PIP
|
|
44
|
+
If you want to use the CarConnectivity Plugin for Databases, the easiest way is to obtain it from [PyPI](https://pypi.org/project/carconnectivity-plugin-database/). Just install it using:
|
|
45
|
+
```bash
|
|
46
|
+
pip3 install carconnectivity-plugin-database
|
|
47
|
+
```
|
|
48
|
+
after you installed CarConnectivity
|
|
49
|
+
|
|
50
|
+
## Configuration
|
|
51
|
+
In your carconnectivity.json configuration add a section for the database plugin like this. A documentation of all possible config options can be found [here](https://github.com/tillsteinbach/CarConnectivity-plugin-database/tree/main/doc/Config.md).
|
|
52
|
+
```
|
|
53
|
+
{
|
|
54
|
+
"carConnectivity": {
|
|
55
|
+
"connectors": [
|
|
56
|
+
...
|
|
57
|
+
]
|
|
58
|
+
"plugins": [
|
|
59
|
+
{
|
|
60
|
+
"type": "database",
|
|
61
|
+
"config": {
|
|
62
|
+
"db_url": "sqlite:///carconnectivity.db"
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
]
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Updates
|
|
71
|
+
If you want to update, the easiest way is:
|
|
72
|
+
```bash
|
|
73
|
+
pip3 install carconnectivity-plugin-database --upgrade
|
|
74
|
+
```
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
carconnectivity_database/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
+
carconnectivity_database/carconnectivity_database_base.py,sha256=tsCWJJlBody2IDSw55WPkl-q4sAGNWHgid1iK7nQ5Jk,842
|
|
3
|
+
carconnectivity_plugin_database-0.1a19.dist-info/licenses/LICENSE,sha256=PIwI1alwDyOfvEQHdGCm2u9uf_mGE8030xZDfun0xTo,1071
|
|
4
|
+
carconnectivity_plugins/database/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
|
+
carconnectivity_plugins/database/_version.py,sha256=Pt3Dp3r88K0S3a46O7-utRUsEDhRZkIRs91ylk2rrFU,709
|
|
6
|
+
carconnectivity_plugins/database/plugin.py,sha256=DXR8UNNA49FYs0nsKCPpTALpq3hm_UL0pKqj2IsxP88,9314
|
|
7
|
+
carconnectivity_plugins/database/agents/base_agent.py,sha256=WsEoB-dIZ6le3vuObwPDOBQ5WJUyfzqrE8SQIJD5X4I,28
|
|
8
|
+
carconnectivity_plugins/database/agents/charging_agent.py,sha256=UaW29u5qNQEOjNJOpei7weaFPa-DJsnwWooYDYxtIaU,41510
|
|
9
|
+
carconnectivity_plugins/database/agents/climatization_agent.py,sha256=MJBFUiIJa648dFQfSN0eMeXc5R4EcaHS-IX_wLvXxJM,4488
|
|
10
|
+
carconnectivity_plugins/database/agents/drive_state_agent.py,sha256=ID6ekXhZT1peU1k4e3kgPQIlYQmv2ALqNEX5u7qgxNI,25766
|
|
11
|
+
carconnectivity_plugins/database/agents/state_agent.py,sha256=9VLEA1guXhK7OdU31pK6ZburtlhxEfDQgNxGJ2UC6KI,11110
|
|
12
|
+
carconnectivity_plugins/database/agents/trip_agent.py,sha256=HqG5xZ0Q64jUJTiQRkxFCvOHw0nchaXW6sYszkvIAGE,15620
|
|
13
|
+
carconnectivity_plugins/database/model/__init__.py,sha256=WKVECA03XXyHsghKCA0eGj76nAp6pADMsezx-o48ggw,962
|
|
14
|
+
carconnectivity_plugins/database/model/alembic.ini,sha256=_cT30ZkhLipi-fFq1NOPzBfpd_FTqj55co53TMuLGSM,2702
|
|
15
|
+
carconnectivity_plugins/database/model/base.py,sha256=bYej-MB6Xp4On2hQA3k5BRvwxz5frKjFLKX7Arq61HQ,147
|
|
16
|
+
carconnectivity_plugins/database/model/charging_power.py,sha256=KzE7MkEdSA40K6m7ycQrvinKKuLkGlziNmJowo86pWQ,2242
|
|
17
|
+
carconnectivity_plugins/database/model/charging_rate.py,sha256=pTRKsYcoggSSyzTL6hRuU4GWSJ11GfFGEXisZkDoIwQ,2226
|
|
18
|
+
carconnectivity_plugins/database/model/charging_session.py,sha256=6uNpYkgZpJFIJn04OR0IDIzi8xTW_KaMvh5RSkGL70c,7989
|
|
19
|
+
carconnectivity_plugins/database/model/charging_state.py,sha256=m2mgz4LLh5XYqq4ip2A25uCfqrRPO7gyIADPk_2Ka0Y,2503
|
|
20
|
+
carconnectivity_plugins/database/model/charging_station.py,sha256=Trm_p3-7MO7K9oOEpQzl5D763g3f9NBVGek7iZS_uX0,3211
|
|
21
|
+
carconnectivity_plugins/database/model/climatization_state.py,sha256=82kTZt-JvsJN81xgpq8KJ9GyRewmeM-UI-SyhIfRnPw,2618
|
|
22
|
+
carconnectivity_plugins/database/model/connection_state.py,sha256=4sBnUQDsVFNABV_DBOswUnt4rzecKyybJxQAuOBHJ40,2759
|
|
23
|
+
carconnectivity_plugins/database/model/datetime_decorator.py,sha256=284bx5oQ5ACErm26qnif171QtKtF8efI2IBDXlyffzw,1444
|
|
24
|
+
carconnectivity_plugins/database/model/drive.py,sha256=m962ByS0fOVez2cLzXuyFMLJV-Q36s2jD1DSeah4yUE,4227
|
|
25
|
+
carconnectivity_plugins/database/model/drive_consumption.py,sha256=Sdw_dn7OE_iiIJ0cyYSkfU0BLF70cFHLmpcjslYAWQw,2200
|
|
26
|
+
carconnectivity_plugins/database/model/drive_level.py,sha256=hRvJmwKGTBBpEDp_Ti6rFoOUojdlq7kOhuLr60ihoHY,2252
|
|
27
|
+
carconnectivity_plugins/database/model/drive_range.py,sha256=HAY9WCb-URR2rKf5dJQhfHCC1T0907qBy8FCgm2G-S0,2419
|
|
28
|
+
carconnectivity_plugins/database/model/drive_range_full.py,sha256=JDyWXUzZaa7fMT2qQvG32QEsOaID5kwAYguGChCcKgI,2552
|
|
29
|
+
carconnectivity_plugins/database/model/location.py,sha256=jvAMeKVqo5eGnBD_Vk6RYdxZ_XT44VeNGRDKEfvnD8I,3671
|
|
30
|
+
carconnectivity_plugins/database/model/migrations.py,sha256=x6XMnzTFfhIDRvEZ4B1jR73dFdrNUcpMCWeyAi324QI,897
|
|
31
|
+
carconnectivity_plugins/database/model/outside_temperature.py,sha256=FF9Z2-T6YtqmsZMiTFk7N8Ow76LNs_YJss_EBLeJ9OU,2606
|
|
32
|
+
carconnectivity_plugins/database/model/state.py,sha256=QAaQQVRaghAwHMhfty3PpsfHxbrxwkEbgLaVLlF292o,2627
|
|
33
|
+
carconnectivity_plugins/database/model/tag.py,sha256=ag_-xewOPAaLdLobPwp7Q5SgOZi_lgW-sBuXI2qawnY,1170
|
|
34
|
+
carconnectivity_plugins/database/model/timedelta_decorator.py,sha256=mdB9ZibJV-4v5H4EY25yxg407O2r6b5D960wMmCqLuE,976
|
|
35
|
+
carconnectivity_plugins/database/model/trip.py,sha256=JyqdXuEvapM3j58nqwkeTm3RHrqd60_ypZoZy0SQzmg,4561
|
|
36
|
+
carconnectivity_plugins/database/model/vehicle.py,sha256=japRs4OUMXgT4YLZleWCo4F0EFDFMf3VlsVXOmkgOsQ,10767
|
|
37
|
+
carconnectivity_plugins/database/model/carconnectivity_schema/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
|
|
38
|
+
carconnectivity_plugins/database/model/carconnectivity_schema/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
|
+
carconnectivity_plugins/database/model/carconnectivity_schema/env.py,sha256=trMAoTgw_EWjjTPnw1fWbKyDGEpAtbvd1exqznTozaE,2093
|
|
40
|
+
carconnectivity_plugins/database/model/carconnectivity_schema/script.py.mako,sha256=8_xgA-gm_OhehnO7CiIijWgnm00ZlszEHtIHrAYFJl0,494
|
|
41
|
+
carconnectivity_plugins/database/model/carconnectivity_schema/versions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
42
|
+
carconnectivity_plugins/database/ui/plugin_ui.py,sha256=LQOuXIeBOLH4Gg0Qqjmzu9BOHI0Rir9KLq3gZF5Rlr4,1815
|
|
43
|
+
carconnectivity_plugins/database/ui/templates/database/status.html,sha256=OypmDrRib6tBM1fC7ijyTmF9HI53XlpF4tq_diXiLKc,162
|
|
44
|
+
carconnectivity_plugin_database-0.1a19.dist-info/METADATA,sha256=9ewuxUzIC5Mjwgnkj28WluubDlxAIZfp6c2_ApUEo2A,3625
|
|
45
|
+
carconnectivity_plugin_database-0.1a19.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
46
|
+
carconnectivity_plugin_database-0.1a19.dist-info/entry_points.txt,sha256=YB5RERxEA_pxYQesyAyzV8hmPM2o3_F9FZbnSQaSuLQ,105
|
|
47
|
+
carconnectivity_plugin_database-0.1a19.dist-info/top_level.txt,sha256=836FhYp_OWsQq5Vyjb95dilEMQPHUYCTZa2GBgNFEVE,49
|
|
48
|
+
carconnectivity_plugin_database-0.1a19.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2021 Till Steinbach
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
File without changes
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# file generated by setuptools-scm
|
|
2
|
+
# don't change, don't track in version control
|
|
3
|
+
|
|
4
|
+
__all__ = [
|
|
5
|
+
"__version__",
|
|
6
|
+
"__version_tuple__",
|
|
7
|
+
"version",
|
|
8
|
+
"version_tuple",
|
|
9
|
+
"__commit_id__",
|
|
10
|
+
"commit_id",
|
|
11
|
+
]
|
|
12
|
+
|
|
13
|
+
TYPE_CHECKING = False
|
|
14
|
+
if TYPE_CHECKING:
|
|
15
|
+
from typing import Tuple
|
|
16
|
+
from typing import Union
|
|
17
|
+
|
|
18
|
+
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
+
COMMIT_ID = Union[str, None]
|
|
20
|
+
else:
|
|
21
|
+
VERSION_TUPLE = object
|
|
22
|
+
COMMIT_ID = object
|
|
23
|
+
|
|
24
|
+
version: str
|
|
25
|
+
__version__: str
|
|
26
|
+
__version_tuple__: VERSION_TUPLE
|
|
27
|
+
version_tuple: VERSION_TUPLE
|
|
28
|
+
commit_id: COMMIT_ID
|
|
29
|
+
__commit_id__: COMMIT_ID
|
|
30
|
+
|
|
31
|
+
__version__ = version = '0.1a19'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 1, 'a19')
|
|
33
|
+
|
|
34
|
+
__commit_id__ = commit_id = None
|