carconnectivity-connector-seatcupra 0.1__tar.gz

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.
Files changed (39) hide show
  1. carconnectivity_connector_seatcupra-0.1/.flake8 +2 -0
  2. carconnectivity_connector_seatcupra-0.1/.github/ISSUE_TEMPLATE/bug_report.md +33 -0
  3. carconnectivity_connector_seatcupra-0.1/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  4. carconnectivity_connector_seatcupra-0.1/.github/dependabot.yml +11 -0
  5. carconnectivity_connector_seatcupra-0.1/.github/workflows/build.yml +63 -0
  6. carconnectivity_connector_seatcupra-0.1/.github/workflows/build_and_publish.yml +37 -0
  7. carconnectivity_connector_seatcupra-0.1/.github/workflows/codeql-analysis.yml +58 -0
  8. carconnectivity_connector_seatcupra-0.1/.gitignore +132 -0
  9. carconnectivity_connector_seatcupra-0.1/CHANGELOG.md +12 -0
  10. carconnectivity_connector_seatcupra-0.1/LICENSE +21 -0
  11. carconnectivity_connector_seatcupra-0.1/Makefile +18 -0
  12. carconnectivity_connector_seatcupra-0.1/PKG-INFO +127 -0
  13. carconnectivity_connector_seatcupra-0.1/README.md +83 -0
  14. carconnectivity_connector_seatcupra-0.1/doc/Config.md +29 -0
  15. carconnectivity_connector_seatcupra-0.1/pyproject.toml +43 -0
  16. carconnectivity_connector_seatcupra-0.1/setup.cfg +4 -0
  17. carconnectivity_connector_seatcupra-0.1/setup_requirements.txt +6 -0
  18. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connector_seatcupra.egg-info/PKG-INFO +127 -0
  19. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connector_seatcupra.egg-info/SOURCES.txt +37 -0
  20. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connector_seatcupra.egg-info/dependency_links.txt +1 -0
  21. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connector_seatcupra.egg-info/requires.txt +4 -0
  22. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connector_seatcupra.egg-info/top_level.txt +1 -0
  23. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/__init__.py +0 -0
  24. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/_version.py +21 -0
  25. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/auth/__init__.py +0 -0
  26. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/auth/auth_util.py +141 -0
  27. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/auth/helpers/blacklist_retry.py +29 -0
  28. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/auth/my_cupra_session.py +275 -0
  29. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/auth/openid_session.py +440 -0
  30. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/auth/session_manager.py +154 -0
  31. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/auth/vw_web_session.py +242 -0
  32. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/capability.py +138 -0
  33. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/charging.py +74 -0
  34. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/climatization.py +39 -0
  35. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/command_impl.py +74 -0
  36. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/connector.py +1470 -0
  37. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/ui/connector_ui.py +39 -0
  38. carconnectivity_connector_seatcupra-0.1/src/carconnectivity_connectors/seatcupra/vehicle.py +83 -0
  39. carconnectivity_connector_seatcupra-0.1/test/integration_test/carConnectivity.json +17 -0
@@ -0,0 +1,2 @@
1
+ [flake8]
2
+ max-line-length=160
@@ -0,0 +1,33 @@
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: bug
6
+ assignees: tillsteinbach
7
+
8
+ ---
9
+
10
+ **Describe the bug**
11
+ A clear and concise description of what the bug is.
12
+
13
+ **To Reproduce**
14
+ Steps to reproduce the behavior:
15
+ 1. Go to '...'
16
+ 2. Click on '....'
17
+ 3. Scroll down to '....'
18
+ 4. See error
19
+
20
+ **Expected behavior**
21
+ A clear and concise description of what you expected to happen.
22
+
23
+ **Screenshots**
24
+ If applicable, add screenshots to help explain your problem.
25
+
26
+ **Logs**
27
+ IF applicable logs that show the problem. Please take care to remove any confidential data from the logs (e.g. your vehicles VIN number, usernames or passwords)
28
+
29
+ - OS: [e.g. Windows, Linux, MacOS, ...]
30
+ - Version used [e.g. 0.6.2]
31
+
32
+ **Additional context**
33
+ Add any other context about the problem here.
@@ -0,0 +1,20 @@
1
+ ---
2
+ name: Feature request
3
+ about: Suggest an idea for this project
4
+ title: ''
5
+ labels: enhancement
6
+ assignees: tillsteinbach
7
+
8
+ ---
9
+
10
+ **Is your feature request related to a problem? Please describe.**
11
+ A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12
+
13
+ **Describe the solution you'd like**
14
+ A clear and concise description of what you want to happen.
15
+
16
+ **Describe alternatives you've considered**
17
+ A clear and concise description of any alternative solutions or features you've considered.
18
+
19
+ **Additional context**
20
+ Add any other context or screenshots about the feature request here.
@@ -0,0 +1,11 @@
1
+ version: 2
2
+ updates:
3
+ # Maintain dependencies for GitHub Actions
4
+ - package-ecosystem: "github-actions"
5
+ directory: "/"
6
+ schedule:
7
+ interval: "daily"
8
+ - package-ecosystem: "pip"
9
+ directory: "/"
10
+ schedule:
11
+ interval: "daily"
@@ -0,0 +1,63 @@
1
+ name: Build Python Package
2
+
3
+ # Controls when the action will run.
4
+ on:
5
+ # Triggers the workflow on push or pull request events but only for the master branch
6
+ push:
7
+ branches: [ main ]
8
+ tags:
9
+ - "v*"
10
+ paths:
11
+ - .github/workflows/build.yml
12
+ - '**.py'
13
+ - 'pyproject.toml'
14
+ pull_request:
15
+ paths:
16
+ - .github/workflows/build.yml
17
+ - '**.py'
18
+ - 'pyproject.toml'
19
+
20
+ jobs:
21
+ build-python:
22
+ runs-on: ubuntu-latest
23
+ strategy:
24
+ matrix:
25
+ python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
26
+
27
+ steps:
28
+ - uses: actions/checkout@v4
29
+ - name: Set up Python ${{ matrix.python-version }}
30
+ uses: actions/setup-python@v5
31
+ with:
32
+ python-version: ${{ matrix.python-version }}
33
+ - name: Install dependencies
34
+ run: |
35
+ python -m pip install --upgrade pip
36
+ if [ -f setup_requirements.txt ]; then pip install -r setup_requirements.txt; fi
37
+ python -m pip install build
38
+ - name: Build
39
+ run: |
40
+ python -m build
41
+ - name: Install built package
42
+ run: |
43
+ pip install --pre dist/*.whl
44
+ - name: Run
45
+ run: |
46
+ set +e
47
+ output=$(carconnectivity test/integration_test/carConnectivity.json 2>&1)
48
+ echo "$output" | grep -q 'There was a problem when authenticating with one or multiple services'
49
+ if [ $? -ne 0 ]; then
50
+ echo "$output"
51
+ exit 1
52
+ fi
53
+ set -e
54
+ - name: Lint
55
+ run: |
56
+ make lint
57
+ # - name: Test
58
+ # run: |
59
+ # make test
60
+
61
+
62
+
63
+
@@ -0,0 +1,37 @@
1
+ name: Build and Upload Python Package
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - "v*"
7
+
8
+ jobs:
9
+ pypi-publish:
10
+ runs-on: ubuntu-latest
11
+ environment:
12
+ name: pypi
13
+ url: https://pypi.org/p/carconnectivity-connector-seatcupra
14
+ permissions:
15
+ id-token: write
16
+
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+ with:
20
+ fetch-depth: 0
21
+ - name: Set up Python
22
+ uses: actions/setup-python@v5
23
+ with:
24
+ python-version: "3.x"
25
+ - name: Install dependencies
26
+ run: |
27
+ python -m pip install --upgrade pip
28
+ python -m pip install build twine
29
+ - name: Build
30
+ run: |
31
+ python -m build
32
+ - name: Publish package distributions to PyPI
33
+ uses: pypa/gh-action-pypi-publish@release/v1
34
+
35
+
36
+
37
+
@@ -0,0 +1,58 @@
1
+ name: "CodeQL"
2
+
3
+ on:
4
+ pull_request:
5
+ paths:
6
+ - '**.py'
7
+ schedule:
8
+ - cron: '33 5 * * 0'
9
+
10
+ jobs:
11
+ analyze:
12
+ name: Analyze
13
+ runs-on: ubuntu-latest
14
+ permissions:
15
+ actions: read
16
+ contents: read
17
+ security-events: write
18
+
19
+ strategy:
20
+ fail-fast: false
21
+ matrix:
22
+ language: [ 'python' ]
23
+ # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
24
+ # Learn more:
25
+ # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
26
+
27
+ steps:
28
+ - name: Checkout repository
29
+ uses: actions/checkout@v4
30
+
31
+ # Initializes the CodeQL tools for scanning.
32
+ - name: Initialize CodeQL
33
+ uses: github/codeql-action/init@v3
34
+ with:
35
+ languages: ${{ matrix.language }}
36
+ # If you wish to specify custom queries, you can do so here or in a config file.
37
+ # By default, queries listed here will override any specified in a config file.
38
+ # Prefix the list here with "+" to use these queries and those in the config file.
39
+ # queries: ./path/to/local/query, your-org/your-repo/queries@main
40
+
41
+ # Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
42
+ # If this step fails, then you should remove it and run the build manually (see below)
43
+ - name: Autobuild
44
+ uses: github/codeql-action/autobuild@v3
45
+
46
+ # ℹ️ Command-line programs to run using the OS shell.
47
+ # 📚 https://git.io/JvXDl
48
+
49
+ # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
50
+ # and modify them (or add more) to build your code if your project
51
+ # uses a compiled language
52
+
53
+ #- run: |
54
+ # make bootstrap
55
+ # make release
56
+
57
+ - name: Perform CodeQL Analysis
58
+ uses: github/codeql-action/analyze@v3
@@ -0,0 +1,132 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ pip-wheel-metadata/
24
+ share/python-wheels/
25
+ *.egg-info/
26
+ .installed.cfg
27
+ *.egg
28
+ MANIFEST
29
+
30
+ # PyInstaller
31
+ # Usually these files are written by a python script from a template
32
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
33
+ *.manifest
34
+ *.spec
35
+
36
+ # Installer logs
37
+ pip-log.txt
38
+ pip-delete-this-directory.txt
39
+
40
+ # Unit test / coverage reports
41
+ htmlcov/
42
+ .tox/
43
+ .nox/
44
+ .coverage
45
+ .coverage.*
46
+ .cache
47
+ nosetests.xml
48
+ coverage.xml
49
+ *.cover
50
+ *.py,cover
51
+ .hypothesis/
52
+ .pytest_cache/
53
+
54
+ # Translations
55
+ *.mo
56
+ *.pot
57
+
58
+ # Django stuff:
59
+ *.log
60
+ local_settings.py
61
+ db.sqlite3
62
+ db.sqlite3-journal
63
+
64
+ # Flask stuff:
65
+ instance/
66
+ .webassets-cache
67
+
68
+ # Scrapy stuff:
69
+ .scrapy
70
+
71
+ # Sphinx documentation
72
+ docs/_build/
73
+
74
+ # PyBuilder
75
+ target/
76
+
77
+ # Jupyter Notebook
78
+ .ipynb_checkpoints
79
+
80
+ # IPython
81
+ profile_default/
82
+ ipython_config.py
83
+
84
+ # pyenv
85
+ .python-version
86
+
87
+ # pipenv
88
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
89
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
90
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
91
+ # install all needed dependencies.
92
+ #Pipfile.lock
93
+
94
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
95
+ __pypackages__/
96
+
97
+ # Celery stuff
98
+ celerybeat-schedule
99
+ celerybeat.pid
100
+
101
+ # SageMath parsed files
102
+ *.sage.py
103
+
104
+ # Environments
105
+ .env
106
+ .venv
107
+ env/
108
+ venv/
109
+ ENV/
110
+ env.bak/
111
+ venv.bak/
112
+
113
+ # Spyder project settings
114
+ .spyderproject
115
+ .spyproject
116
+
117
+ # Rope project settings
118
+ .ropeproject
119
+
120
+ # mkdocs documentation
121
+ /site
122
+
123
+ # mypy
124
+ .mypy_cache/
125
+ .dmypy.json
126
+ dmypy.json
127
+
128
+ # Pyre type checker
129
+ .pyre/
130
+ .DS_Store
131
+
132
+ _version.py
@@ -0,0 +1,12 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ ## [Unreleased]
6
+ - No unreleased changes so far
7
+
8
+ ## [0.1] - 2025-03-02
9
+ Initial release, let's go and give this to the public to try out...
10
+
11
+ [unreleased]: https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/compare/v0.1...HEAD
12
+ [0.1]: https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/releases/tag/v0.1
@@ -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.
@@ -0,0 +1,18 @@
1
+ BLUE='\033[0;34m'
2
+ NC='\033[0m' # No Color
3
+
4
+ test:
5
+ @pytest
6
+
7
+ lint:
8
+ @echo "\n${BLUE}Running Pylint against source and test files...${NC}\n"
9
+ @pylint ./src
10
+ @echo "\n${BLUE}Running Flake8 against source and test files...${NC}\n"
11
+ @flake8
12
+ @echo "\n${BLUE}Running Bandit against source files...${NC}\n"
13
+ @bandit -c pyproject.toml -r .
14
+
15
+ clean:
16
+ rm -rf .pytest_cache .coverage .pytest_cache coverage.xml coverage_html_report
17
+
18
+ .PHONY: clean test
@@ -0,0 +1,127 @@
1
+ Metadata-Version: 2.2
2
+ Name: carconnectivity-connector-seatcupra
3
+ Version: 0.1
4
+ Summary: CarConnectivity connector for Seat and Cupra services
5
+ Author: Till Steinbach
6
+ License: MIT License
7
+
8
+ Copyright (c) 2021 Till Steinbach
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in all
18
+ copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
+ SOFTWARE.
27
+
28
+ Classifier: Development Status :: 3 - Alpha
29
+ Classifier: License :: OSI Approved :: MIT License
30
+ Classifier: Intended Audience :: Developers
31
+ Classifier: Programming Language :: Python :: 3.9
32
+ Classifier: Programming Language :: Python :: 3.10
33
+ Classifier: Programming Language :: Python :: 3.11
34
+ Classifier: Programming Language :: Python :: 3.12
35
+ Classifier: Programming Language :: Python :: 3.13
36
+ Classifier: Topic :: Software Development :: Libraries
37
+ Requires-Python: >=3.9
38
+ Description-Content-Type: text/markdown
39
+ License-File: LICENSE
40
+ Requires-Dist: carconnectivity>=0.4
41
+ Requires-Dist: oauthlib~=3.2.2
42
+ Requires-Dist: requests~=2.32.3
43
+ Requires-Dist: jwt~=1.3.1
44
+
45
+
46
+
47
+ # CarConnectivity Connector for Seat and Cupra Vehicles
48
+ [![GitHub sourcecode](https://img.shields.io/badge/Source-GitHub-green)](https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/)
49
+ [![GitHub release (latest by date)](https://img.shields.io/github/v/release/tillsteinbach/CarConnectivity-connector-seatcupra)](https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/releases/latest)
50
+ [![GitHub](https://img.shields.io/github/license/tillsteinbach/CarConnectivity-connector-seatcupra)](https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/blob/master/LICENSE)
51
+ [![GitHub issues](https://img.shields.io/github/issues/tillsteinbach/CarConnectivity-connector-seatcupra)](https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/issues)
52
+ [![PyPI - Downloads](https://img.shields.io/pypi/dm/carconnectivity-connector-seatcupra?label=PyPI%20Downloads)](https://pypi.org/project/carconnectivity-connector-seatcupra/)
53
+ [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/carconnectivity-connector-seatcupra)](https://pypi.org/project/carconnectivity-connector-seatcupra/)
54
+ [![Donate at PayPal](https://img.shields.io/badge/Donate-PayPal-2997d8)](https://www.paypal.com/donate?hosted_button_id=2BVFF5GJ9SXAJ)
55
+ [![Sponsor at Github](https://img.shields.io/badge/Sponsor-GitHub-28a745)](https://github.com/sponsors/tillsteinbach)
56
+
57
+
58
+ ## Due to lack of access to a Cupra car the development of this conenctor is currently stuck. If you want to help me with access to your account, please contact me!
59
+
60
+ [CarConnectivity](https://github.com/tillsteinbach/CarConnectivity) is a python API to connect to various car services. This connector enables the integration of seat and cupra vehicles through the MyCupra API. Look at [CarConnectivity](https://github.com/tillsteinbach/CarConnectivity) for other supported brands.
61
+
62
+ ## Configuration
63
+ In your carconnectivity.json configuration add a section for the seatcupra connector like this:
64
+ ```
65
+ {
66
+ "carConnectivity": {
67
+ "connectors": [
68
+ {
69
+ "type": "seatcupra",
70
+ "config": {
71
+ "brand": "cupra",
72
+ "username": "test@test.de",
73
+ "password": "testpassword123"
74
+ }
75
+ }
76
+ ]
77
+ }
78
+ }
79
+ ```
80
+ `brand` (`seat` or `cupra`) defines what login is used. MyCupra or MySeat account. Your credentials will work with both, but you may need to consent again to the terms and conditions when you use the "wrong" brand.
81
+
82
+ ### Credentials
83
+ If you do not want to provide your username or password inside the configuration you have to create a ".netrc" file at the appropriate location (usually this is your home folder):
84
+ ```
85
+ # For MyCupra
86
+ machine seatcupra
87
+ login test@test.de
88
+ password testpassword123
89
+ ```
90
+ In this case the configuration needs to look like this:
91
+ ```
92
+ {
93
+ "carConnectivity": {
94
+ "connectors": [
95
+ {
96
+ "type": "seatcupra",
97
+ "config": {
98
+ }
99
+ }
100
+ ]
101
+ }
102
+ }
103
+ ```
104
+
105
+ You can also provide the location of the netrc file in the configuration.
106
+ ```
107
+ {
108
+ "carConnectivity": {
109
+ "connectors": [
110
+ {
111
+ "type": "seatcupra",
112
+ "config": {
113
+ "netrc": "/some/path/on/your/filesystem"
114
+ }
115
+ }
116
+ ]
117
+ }
118
+ }
119
+ ```
120
+ The optional S-PIN needed for some commands can be provided in the account section of the netrc:
121
+ ```
122
+ # For MyCupra
123
+ machine seatcupra
124
+ login test@test.de
125
+ password testpassword123
126
+ account 1234
127
+ ```
@@ -0,0 +1,83 @@
1
+
2
+
3
+ # CarConnectivity Connector for Seat and Cupra Vehicles
4
+ [![GitHub sourcecode](https://img.shields.io/badge/Source-GitHub-green)](https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/)
5
+ [![GitHub release (latest by date)](https://img.shields.io/github/v/release/tillsteinbach/CarConnectivity-connector-seatcupra)](https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/releases/latest)
6
+ [![GitHub](https://img.shields.io/github/license/tillsteinbach/CarConnectivity-connector-seatcupra)](https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/blob/master/LICENSE)
7
+ [![GitHub issues](https://img.shields.io/github/issues/tillsteinbach/CarConnectivity-connector-seatcupra)](https://github.com/tillsteinbach/CarConnectivity-connector-seatcupra/issues)
8
+ [![PyPI - Downloads](https://img.shields.io/pypi/dm/carconnectivity-connector-seatcupra?label=PyPI%20Downloads)](https://pypi.org/project/carconnectivity-connector-seatcupra/)
9
+ [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/carconnectivity-connector-seatcupra)](https://pypi.org/project/carconnectivity-connector-seatcupra/)
10
+ [![Donate at PayPal](https://img.shields.io/badge/Donate-PayPal-2997d8)](https://www.paypal.com/donate?hosted_button_id=2BVFF5GJ9SXAJ)
11
+ [![Sponsor at Github](https://img.shields.io/badge/Sponsor-GitHub-28a745)](https://github.com/sponsors/tillsteinbach)
12
+
13
+
14
+ ## Due to lack of access to a Cupra car the development of this conenctor is currently stuck. If you want to help me with access to your account, please contact me!
15
+
16
+ [CarConnectivity](https://github.com/tillsteinbach/CarConnectivity) is a python API to connect to various car services. This connector enables the integration of seat and cupra vehicles through the MyCupra API. Look at [CarConnectivity](https://github.com/tillsteinbach/CarConnectivity) for other supported brands.
17
+
18
+ ## Configuration
19
+ In your carconnectivity.json configuration add a section for the seatcupra connector like this:
20
+ ```
21
+ {
22
+ "carConnectivity": {
23
+ "connectors": [
24
+ {
25
+ "type": "seatcupra",
26
+ "config": {
27
+ "brand": "cupra",
28
+ "username": "test@test.de",
29
+ "password": "testpassword123"
30
+ }
31
+ }
32
+ ]
33
+ }
34
+ }
35
+ ```
36
+ `brand` (`seat` or `cupra`) defines what login is used. MyCupra or MySeat account. Your credentials will work with both, but you may need to consent again to the terms and conditions when you use the "wrong" brand.
37
+
38
+ ### Credentials
39
+ If you do not want to provide your username or password inside the configuration you have to create a ".netrc" file at the appropriate location (usually this is your home folder):
40
+ ```
41
+ # For MyCupra
42
+ machine seatcupra
43
+ login test@test.de
44
+ password testpassword123
45
+ ```
46
+ In this case the configuration needs to look like this:
47
+ ```
48
+ {
49
+ "carConnectivity": {
50
+ "connectors": [
51
+ {
52
+ "type": "seatcupra",
53
+ "config": {
54
+ }
55
+ }
56
+ ]
57
+ }
58
+ }
59
+ ```
60
+
61
+ You can also provide the location of the netrc file in the configuration.
62
+ ```
63
+ {
64
+ "carConnectivity": {
65
+ "connectors": [
66
+ {
67
+ "type": "seatcupra",
68
+ "config": {
69
+ "netrc": "/some/path/on/your/filesystem"
70
+ }
71
+ }
72
+ ]
73
+ }
74
+ }
75
+ ```
76
+ The optional S-PIN needed for some commands can be provided in the account section of the netrc:
77
+ ```
78
+ # For MyCupra
79
+ machine seatcupra
80
+ login test@test.de
81
+ password testpassword123
82
+ account 1234
83
+ ```
@@ -0,0 +1,29 @@
1
+
2
+
3
+ # CarConnectivity Connector for Seat Cupra Config Options
4
+ The configuration for CarConnectivity is a .json file.
5
+ ## Seat Cupra Connector Options
6
+ These are the valid options for the Seat Cupra Connector
7
+ ```json
8
+ {
9
+ "carConnectivity": {
10
+ "connectors": [
11
+ {
12
+ "type": "seatcupra", // Definition for the Seat Cupra Connector
13
+ "config": {
14
+ "log_level": "error", // set the connectos log level
15
+ "interval": 300, // Interval in which the server is checked in seconds
16
+ "brand": "seat", //Brand of the vehicle ("seat" or "cupra"), defines if MySeat or MyCupra account is used
17
+ "username": "test@test.de", // Username of your Seat/Cupra Account
18
+ "password": "testpassword123", // Username of your Seat/Cupra Account
19
+ "spin": 1234, //S-Pin used for some special commands like locking/unlocking
20
+ "netrc": "~/.netr", // netrc file if to be used for passwords
21
+ "api_log_level": "debug", // Show debug information regarding the API
22
+ "max_age": 300 //Cache requests to the server vor MAX_AGE seconds
23
+ }
24
+ }
25
+ ],
26
+ "plugins": []
27
+ }
28
+ }
29
+ ```