Name | carconnectivity-cli JSON |
Version |
0.5
JSON |
| download |
home_page | None |
Summary | Library for retrieving information from car connectivity services |
upload_time | 2025-04-02 20:42:09 |
maintainer | None |
docs_url | None |
author | Till Steinbach |
requires_python | >=3.9 |
license | MIT License
Copyright (c) 2021 Till Steinbach
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
|
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# CarConnectivity Command Line Interface
[](https://github.com/tillsteinbach/CarConnectivity-cli/)
[](https://github.com/tillsteinbach/CarConnectivity-cli/releases/latest)
[](https://github.com/tillsteinbach/CarConnectivity-cli/blob/master/LICENSE)
[](https://github.com/tillsteinbach/CarConnectivity-cli/issues)
[](https://pypi.org/project/carconnectivity-cli/)
[](https://pypi.org/project/carconnectivity-cli/)
[](https://www.paypal.com/donate?hosted_button_id=2BVFF5GJ9SXAJ)
[](https://github.com/sponsors/tillsteinbach)
## CarConnectivity will become the successor of [WeConnect-python](https://github.com/tillsteinbach/WeConnect-python) in 2025 with similar functionality but support for other brands beyond Volkswagen!
## Supported Car Brands
CarConenctivity uses a plugin architecture to enable access to the services of various brands. Currently known plugins are:
| Brand | Connector |
|-----------------------------------|---------------------------------------------------------------------------------------------------------------|
| Skoda | [CarConnectivity-connector-skoda](https://github.com/tillsteinbach/CarConnectivity-connector-skoda) |
| Volkswagen | [CarConnectivity-connector-volkswagen](https://github.com/tillsteinbach/CarConnectivity-connector-volkswagen) |
| [Tronity](https://www.tronity.io) | [CarConnectivity-connector-tronity](https://github.com/tillsteinbach/CarConnectivity-connector-tronity) |
If you know of a connector not listed here let me know and I will add it to the list.
If you are a python developer and willing to implement a connector for a brand not listed here, let me know and I try to support you as good as possible
## How to install
You first need a running [Python](https://www.python.org/downloads/) installation. Afterwards you can install CarConnectivity-cli with:
```
pip install carconnectivity-cli
```
You also need the right connector for your vehicle, e.g.
```
pip install carconnectivity-connector-skoda
```
or you installed CarConnectivity-cli with all known connectors and plugins:
```
pip3 install 'carconnectivity-cli[connectors,plugins]'
```
The plugins will then become active when you add them to your configuration.
## How to use
Start by creating a carconnectivity.json configuration file
### Configuration
In your carconnectivity.json configuration add a section for the connectors you like to use like this:
```
{
"carConnectivity": {
"connectors": [
{
"type": "volkswagen",
"config": {
"username": "test@test.de"
"password": "testpassword123"
}
},
{
"type": "skoda",
"config": {
"username": "test@test.de"
"password": "testpassword123"
}
}
]
}
}
```
The detailed configuration options of the connectors can be found in their README files.
### How to use the commandline interface
Start carconnectivity-cli from the commandline, by default you will enter the interactive shell:
```bash
carconnectivity-cli mycarconnectivity_config.json
```
You get all the usage information by using the --help command
```bash
carconnectivity-cli mycarconnectivity_config.json --help
```
With the "list" command you can get a list of all available information you can query (use "list -s" if you want to see which attributes can be changed)
```bash
carconnectivity-cli mycarconnectivity_config.json list
/garage/WVWABCE1ZSD057394
/garage/WVWABCE1ZSD057394/vin
/garage/WVWABCE1ZSD057394/type
/garage/WVWABCE1ZSD057394/odometer
/garage/WVWABCE1ZSD057394/model
/garage/WVWABCE1ZSD057394/name
...
```
You can then pass the addresses to the "get" command:
```bash
carconnectivity-cli mycarconnectivity_config.json get /garage/WVWABCE1ZSD057394/model
ID.3
```
or the "set" command:
```bash
carconnectivity-cli mycarconnectivity_config.json /garage/WVWABCE1ZSD057394/climatisation/command stop
```
The "events" command allows you to monitor what is happening on the WeConnect Interface:
```bash
carconnectivity-cli mycarconnectivity_config.json events
2021-05-26 16:49:58.698570: /garage/WVWABCE1ZSD057394/doors/lock_state: new value: unlocked
2021-05-26 16:49:58.698751: /garage/WVWABCE1ZSD057394/doors/bonnet/lock_state: new value: unknown lock state
2021-05-26 16:49:58.698800: /garage/WVWABCE1ZSD057394/doors/bonnet/open_state: new value: closed
2021-05-26 16:49:58.698980: /garage/WVWABCE1ZSD057394/doors/frontLeft/lock_state: new value: unlocked
2021-05-26 16:49:58.699056: /garage/WVWABCE1ZSD057394/doors/frontLeft/open_state: new value: closed
```
### S-PIN
For some commands (e.g. locking/unlocking supported on some cars) you need in addition to your login the so called S-PIN, you can provide it with the spin config option:
### Interactive Shell
You can also use an interactive shell:
```
carconnectivity-cli --username user@mail.de --password test123 shell
Welcome! Type ? to list commands
user@mail.de@weconnect-sh:/$update
update done
user@mail.de@weconnect-sh:/$cd garage
user@mail.de@weconnect-sh:/garage$ ls
..
WVWABCE1ZSD057394
WVWABCE13SD057505
user@mail.de@weconnect-sh:/garage$ cd /garage/WVWABCE13SD057505/status/parkingPosition
user@mail.de@weconnect-sh:/garage/WVWABCE13SD057505/status/parkingPosition$ cat
[parkingPosition] (last captured 2021-06-01T19:05:04+00:00)
Latitude: 51.674535
Longitude: 16.154376
user@mail.de@weconnect-sh:/garage/WVWABCE13SD057505/parking/parkingPosition$ exit
Bye
```
### Caching
By default carconnectivity-cli will cache (store) the data for 300 seconds before retrieving new data from the servers. This makes carconnectivity-cli more responsive and at the same time does not cause unneccessary requests to the vw servers. If you want to increase the cache duration use max_age config option. If you do not want to cache use no_cache option. Please use the no_cache option with care. You are generating traffic with subsequent requests. If you request too often you might be blocked for some time until you can generate requests again.
### Credentials
If you do not want to provide your username or password all the time you have to create a ".netrc" file at the appropriate location (usually this is your home folder):
```
machine volkswagen.de
login test@test.de
password testpassword123
```
You can also provide the location of the netrc file in the configuration.
The optional S-PIN needed for some commands can be provided in the account section:
```
# For WeConnect
machine volkswagen.de
login test@test.de
password testpassword123
account 1234
```
## Tested with
- Volkswagen ID.3 Modelyear 2021
- Volkswagen Passat GTE Modelyear 2021
- Skoda Enyaq RS Modelyear 2025
## Reporting Issues
Please feel free to open an issue at [GitHub Issue page](https://github.com/tillsteinbach/carconnectivity-cli/issues) to report problems you found.
### Known Issues
- The Tool is in alpha state and may change unexpectedly at any time!
## Related Projects:
- [CarConnectivity-plugin-mqtt](https://github.com/tillsteinbach/CarConnectivity-plugin-mqtt): MQTT Client that publishes data from CarConnectivity to any MQTT broker.
- [CarConnectivity](https://github.com/tillsteinbach/CarConnectivity): The underlying python API behind CarConnectivity-cli. If you are a developer and want to implement an application or service with vehicle telemetry data you can use [CarConnectivity-Library](https://github.com/tillsteinbach/CarConnectivity).
Raw data
{
"_id": null,
"home_page": null,
"name": "carconnectivity-cli",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": null,
"author": "Till Steinbach",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/64/ac/5c6195d0ed46b7c5f1fe3478656fa152ea9f8702cd600f7d7c54ef2a5382/carconnectivity_cli-0.5.tar.gz",
"platform": null,
"description": "\n\n# CarConnectivity Command Line Interface\n[](https://github.com/tillsteinbach/CarConnectivity-cli/)\n[](https://github.com/tillsteinbach/CarConnectivity-cli/releases/latest)\n[](https://github.com/tillsteinbach/CarConnectivity-cli/blob/master/LICENSE)\n[](https://github.com/tillsteinbach/CarConnectivity-cli/issues)\n[](https://pypi.org/project/carconnectivity-cli/)\n[](https://pypi.org/project/carconnectivity-cli/)\n[](https://www.paypal.com/donate?hosted_button_id=2BVFF5GJ9SXAJ)\n[](https://github.com/sponsors/tillsteinbach)\n\n## CarConnectivity will become the successor of [WeConnect-python](https://github.com/tillsteinbach/WeConnect-python) in 2025 with similar functionality but support for other brands beyond Volkswagen!\n\n## Supported Car Brands\nCarConenctivity uses a plugin architecture to enable access to the services of various brands. Currently known plugins are:\n\n| Brand | Connector |\n|-----------------------------------|---------------------------------------------------------------------------------------------------------------|\n| Skoda | [CarConnectivity-connector-skoda](https://github.com/tillsteinbach/CarConnectivity-connector-skoda) |\n| Volkswagen | [CarConnectivity-connector-volkswagen](https://github.com/tillsteinbach/CarConnectivity-connector-volkswagen) |\n| [Tronity](https://www.tronity.io) | [CarConnectivity-connector-tronity](https://github.com/tillsteinbach/CarConnectivity-connector-tronity) |\n\nIf you know of a connector not listed here let me know and I will add it to the list.\nIf you are a python developer and willing to implement a connector for a brand not listed here, let me know and I try to support you as good as possible\n\n## How to install\nYou first need a running [Python](https://www.python.org/downloads/) installation. Afterwards you can install CarConnectivity-cli with:\n```\npip install carconnectivity-cli\n```\nYou also need the right connector for your vehicle, e.g.\n```\npip install carconnectivity-connector-skoda\n```\nor you installed CarConnectivity-cli with all known connectors and plugins:\n```\npip3 install 'carconnectivity-cli[connectors,plugins]'\n```\nThe plugins will then become active when you add them to your configuration.\n\n## How to use\nStart by creating a carconnectivity.json configuration file\n\n### Configuration\nIn your carconnectivity.json configuration add a section for the connectors you like to use like this:\n```\n{\n \"carConnectivity\": {\n \"connectors\": [\n {\n \"type\": \"volkswagen\",\n \"config\": {\n \"username\": \"test@test.de\"\n \"password\": \"testpassword123\"\n }\n },\n {\n \"type\": \"skoda\",\n \"config\": {\n \"username\": \"test@test.de\"\n \"password\": \"testpassword123\"\n }\n }\n ]\n }\n}\n```\nThe detailed configuration options of the connectors can be found in their README files.\n\n### How to use the commandline interface\nStart carconnectivity-cli from the commandline, by default you will enter the interactive shell:\n```bash\ncarconnectivity-cli mycarconnectivity_config.json\n```\nYou get all the usage information by using the --help command\n```bash\ncarconnectivity-cli mycarconnectivity_config.json --help\n```\nWith the \"list\" command you can get a list of all available information you can query (use \"list -s\" if you want to see which attributes can be changed)\n```bash\ncarconnectivity-cli mycarconnectivity_config.json list\n/garage/WVWABCE1ZSD057394\n/garage/WVWABCE1ZSD057394/vin\n/garage/WVWABCE1ZSD057394/type\n/garage/WVWABCE1ZSD057394/odometer\n/garage/WVWABCE1ZSD057394/model\n/garage/WVWABCE1ZSD057394/name\n...\n```\nYou can then pass the addresses to the \"get\" command:\n```bash\ncarconnectivity-cli mycarconnectivity_config.json get /garage/WVWABCE1ZSD057394/model\nID.3\n```\nor the \"set\" command:\n```bash\ncarconnectivity-cli mycarconnectivity_config.json /garage/WVWABCE1ZSD057394/climatisation/command stop\n```\nThe \"events\" command allows you to monitor what is happening on the WeConnect Interface:\n```bash\ncarconnectivity-cli mycarconnectivity_config.json events\n2021-05-26 16:49:58.698570: /garage/WVWABCE1ZSD057394/doors/lock_state: new value: unlocked\n2021-05-26 16:49:58.698751: /garage/WVWABCE1ZSD057394/doors/bonnet/lock_state: new value: unknown lock state\n2021-05-26 16:49:58.698800: /garage/WVWABCE1ZSD057394/doors/bonnet/open_state: new value: closed\n2021-05-26 16:49:58.698980: /garage/WVWABCE1ZSD057394/doors/frontLeft/lock_state: new value: unlocked\n2021-05-26 16:49:58.699056: /garage/WVWABCE1ZSD057394/doors/frontLeft/open_state: new value: closed\n```\n\n### S-PIN\nFor some commands (e.g. locking/unlocking supported on some cars) you need in addition to your login the so called S-PIN, you can provide it with the spin config option:\n\n### Interactive Shell\nYou can also use an interactive shell:\n```\ncarconnectivity-cli --username user@mail.de --password test123 shell\nWelcome! Type ? to list commands\nuser@mail.de@weconnect-sh:/$update\nupdate done\nuser@mail.de@weconnect-sh:/$cd garage\nuser@mail.de@weconnect-sh:/garage$ ls\n..\nWVWABCE1ZSD057394\nWVWABCE13SD057505\nuser@mail.de@weconnect-sh:/garage$ cd /garage/WVWABCE13SD057505/status/parkingPosition\nuser@mail.de@weconnect-sh:/garage/WVWABCE13SD057505/status/parkingPosition$ cat\n[parkingPosition] (last captured 2021-06-01T19:05:04+00:00)\n\tLatitude: 51.674535\n\tLongitude: 16.154376\nuser@mail.de@weconnect-sh:/garage/WVWABCE13SD057505/parking/parkingPosition$ exit\nBye\n```\n### Caching\nBy default carconnectivity-cli will cache (store) the data for 300 seconds before retrieving new data from the servers. This makes carconnectivity-cli more responsive and at the same time does not cause unneccessary requests to the vw servers. If you want to increase the cache duration use max_age config option. If you do not want to cache use no_cache option. Please use the no_cache option with care. You are generating traffic with subsequent requests. If you request too often you might be blocked for some time until you can generate requests again.\n\n### Credentials\nIf you do not want to provide your username or password all the time you have to create a \".netrc\" file at the appropriate location (usually this is your home folder):\n```\nmachine volkswagen.de\nlogin test@test.de\npassword testpassword123\n```\nYou can also provide the location of the netrc file in the configuration.\n\nThe optional S-PIN needed for some commands can be provided in the account section:\n```\n# For WeConnect\nmachine volkswagen.de\nlogin test@test.de\npassword testpassword123\naccount 1234\n```\n\n## Tested with\n- Volkswagen ID.3 Modelyear 2021\n- Volkswagen Passat GTE Modelyear 2021\n- Skoda Enyaq RS Modelyear 2025\n\n## Reporting Issues\nPlease feel free to open an issue at [GitHub Issue page](https://github.com/tillsteinbach/carconnectivity-cli/issues) to report problems you found.\n\n### Known Issues\n- The Tool is in alpha state and may change unexpectedly at any time!\n\n## Related Projects:\n- [CarConnectivity-plugin-mqtt](https://github.com/tillsteinbach/CarConnectivity-plugin-mqtt): MQTT Client that publishes data from CarConnectivity to any MQTT broker.\n- [CarConnectivity](https://github.com/tillsteinbach/CarConnectivity): The underlying python API behind CarConnectivity-cli. If you are a developer and want to implement an application or service with vehicle telemetry data you can use [CarConnectivity-Library](https://github.com/tillsteinbach/CarConnectivity).\n",
"bugtrack_url": null,
"license": "MIT License\n \n Copyright (c) 2021 Till Steinbach\n \n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n \n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n \n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n ",
"summary": "Library for retrieving information from car connectivity services",
"version": "0.5",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "da1aead4c2a127f910ea1ccc6412703f3f6cfa9cc8ef7f73460e8380fe1cb6e6",
"md5": "e4fb5f22eaa9e9f29b37b3c7021cd14a",
"sha256": "e96495e90b4f30aaa88861749ccc03363f91465798fc00c06248310c4ef06ea7"
},
"downloads": -1,
"filename": "carconnectivity_cli-0.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e4fb5f22eaa9e9f29b37b3c7021cd14a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 12617,
"upload_time": "2025-04-02T20:42:08",
"upload_time_iso_8601": "2025-04-02T20:42:08.736241Z",
"url": "https://files.pythonhosted.org/packages/da/1a/ead4c2a127f910ea1ccc6412703f3f6cfa9cc8ef7f73460e8380fe1cb6e6/carconnectivity_cli-0.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "64ac5c6195d0ed46b7c5f1fe3478656fa152ea9f8702cd600f7d7c54ef2a5382",
"md5": "f653146397c05425022ae1fa119b2d60",
"sha256": "3db364a91d479a4935ea624a1fb1ce5a410744d33ffdbf188f3df052d59a9cdd"
},
"downloads": -1,
"filename": "carconnectivity_cli-0.5.tar.gz",
"has_sig": false,
"md5_digest": "f653146397c05425022ae1fa119b2d60",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 19013,
"upload_time": "2025-04-02T20:42:09",
"upload_time_iso_8601": "2025-04-02T20:42:09.869091Z",
"url": "https://files.pythonhosted.org/packages/64/ac/5c6195d0ed46b7c5f1fe3478656fa152ea9f8702cd600f7d7c54ef2a5382/carconnectivity_cli-0.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-04-02 20:42:09",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "carconnectivity-cli"
}