Skip to main content

Communicate with Skoda Connect

Project description

Version PyPi Downloads PyPi

Skoda Connect v1.0.48

Fork of https://github.com/robinostlund/volkswagencarnet where it was modified to support also Skoda Connect. Changes made to utilize the same API calls as the MySkoda mobile app.

Information

Retrieve statistics about your Skoda from the Skoda Connect online service.

  • Support for Skoda Connect services
  • Support for SmartLink
  • All (native) Skoda cars supported though newer cars (Skoda Enyaq iV) use newer API that's under development
  • If your Skoda car don't work with the MySkoda app it won't work with this integration

No licence, public domain, no guarantees, feel free to use for anything. Please contribute improvements/bugfixes etc.

Breaking changes

  • From version 1.0.40 and onwards there has been changes to Skoda API and this might break the integration for some cars.

  • From version 1.0.30 and onwards there might be breaking changes for the combustion heating/climatisation.

  • Parking Heater is the auxiliary/parking heater for non-PHEV vehicles. This uses the "legacy" remotestandheizung API function. Heating is what it sounds like and ventilation is used to ventilate/cool the car.

  • Auxiliary Heater is the auxiliary/parking heater for PHEV vehicles. This uses the climater API function, same as electric climatisation.

Thanks to

  • RobinostLund for initial project for Volkswagen Carnet which this is based on initially
  • Farfar for modifications related to electric engines
  • tanelvakker for modifications related to correct SPIN handling for various actions and using correct URLs also for MY2021
  • wieshka for help with Skoda Enyaq iV development

Other related repositories

Installation

[venv-python3] user@localhost:~
$ pip install skodaconnect

Example

For an extensive example, please use the code found in example/example.py. When logged in the library will automatically create a vehicle object for every car registered to the account. Initially no data is fetched other than basic information about the car. To update all available data use the update method of the Connect class. This will call the update function for all registered vehicles, which in turn will fetch data from all available API endpoints.

Attributes

The Vehicle class contains all of the attributes with values fetched from the API. To access a single attribute, please see and use the example/example.py. This will print all available methods, variables and properties as well as a list of supported attributes for discovered car.

Methods

Vehicle, in the following example the car object is an object of Vehicle class:

car.set_charger(action = "start")                          # action = "start" or "stop"
car.set_charger_current(value=<int/str>                    # value = integer 1-255 or Maximum/Reduced (For PHEV: 252=Reduced and 254=Maximum)
car.set_charge_limit(value=<int>)                          # value = integer 0-100 in 10 increments. Valid values is PHEV: 0-50, EV: 50-100.
car.set_battery_climatisation(mode = False)                # mode = False or True
car.set_climatisation(mode = "auxilliary", spin="1234")    # mode = "auxilliary", "electric" or "off". spin is S-PIN and only needed for aux heating
car.set_climatisation_temp(temperature = 22)               # temperature = integer from 16 to 30
car.set_window_heating(action = "start")                   # action = "start" or "stop"
car.set_lock(action = "unlock", spin = "1234")             # action = "unlock" or "lock". spin = SPIN, needed for both
car.set_pheater(mode = "heating", spin = "1234")           # action = "heating", "ventilation" or "off". spin = SPIN, not needed for off
car.set_charge_limit(limit = 30)                           # limit = 0,10,20,30,40,50
car.set_timer_active(id = 1, action = "on"}                # id = 1, 2, 3, action = "on" or "off".
car.set_timer_schedule(id = 1,  schedule = dict)           # id = 1, 2, 3, see example for full information about schedule variable
car.set_refresh()                                          # Takes no arguments, will trigger force update

Connection:

session = aiohttp.ClientSession(headers={'Connection': 'keep-alive'})   # Create a aiohttp session object
conn = Connection(session, username, password, fulldebug)               #
conn._login()                                                           # Attempt a login, returns true/false, variable conn._session_logged_in will tell if logged in or not
conn.update()                                                           # Calls update for all vehicle objects
conn.logout()                                                           # Logout from API, call for revoke of tokens
conn.terminate()                                                        # Terminate session, calls logout()
conn.validate_tokens()                                                  # Checks if tokens are OK, trys a refresh if expired

Further help or contributions

For questions, further help or contributions you can join the Discord server at https://discord.gg/826X9jEtCh

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skodaconnect-1.0.48.tar.gz (47.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

skodaconnect-1.0.48-py3-none-any.whl (45.0 kB view details)

Uploaded Python 3

File details

Details for the file skodaconnect-1.0.48.tar.gz.

File metadata

  • Download URL: skodaconnect-1.0.48.tar.gz
  • Upload date:
  • Size: 47.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.21.0 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.3

File hashes

Hashes for skodaconnect-1.0.48.tar.gz
Algorithm Hash digest
SHA256 85861cc78ae06d92dfe4a51de9b005a5ae492ba42eb4f4fd68253d234ffeed69
MD5 bbd6bc18fc9601ecd0b9deaa9b6031d8
BLAKE2b-256 c827aa5e26775be75c0f2b8db0ff6a83fafe4e4bae91edf78875f008b5d635a3

See more details on using hashes here.

File details

Details for the file skodaconnect-1.0.48-py3-none-any.whl.

File metadata

  • Download URL: skodaconnect-1.0.48-py3-none-any.whl
  • Upload date:
  • Size: 45.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.21.0 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.3

File hashes

Hashes for skodaconnect-1.0.48-py3-none-any.whl
Algorithm Hash digest
SHA256 d886c8b45ac9c1ff95c2182c67e088ef37c4f170fdb4e9d4edeb8fba10b57225
MD5 682ff12ec647e9cdff39ddaf334884e6
BLAKE2b-256 2fd2a8a95b4a96abfc57ea000d22679c331d0b2e14cfb3d0975aeefef5428019

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page