goecharger-api-lite


Namegoecharger-api-lite JSON
Version 1.5.1 PyPI version JSON
download
home_pagehttps://github.com/bkogler/goecharger-api-lite
SummaryLightweight Python API for accessing go-eCharger EV wallboxes using local HTTP API v2
upload_time2023-07-28 20:22:22
maintainer
docs_urlNone
authorBernhard Kogler
requires_python>=3.10
licenseMIT
keywords go-e ev wallbox electric charger gemini flex homefix home+ http api v2
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # [goecharger API (lite)](https://github.com/bkogler/goecharger-api-lite)
Lightweight Python API for accessing modern go-eCharger EV wallboxes using local HTTP API v2

[go-eCharger](https://go-e.com) models:
* Gemini
* Gemini flex
* HOMEfix
* HOME+

# Table of contents
<!-- TOC -->
* [Features](#features)
* [Installation](#installation)
* [Usage Examples](#usage-examples)
  * [Query Status](#query-status)
    * [Pretty Print Status](#pretty-print-status)
  * [Set Configuration](#set-configuration)
* [Links](#links)
<!-- TOC -->

# Features
* Query Charger Status
* Set Charger Configuration
* Uses asynchronous aiohttp requests for communication

# Installation
`pip install goecharger-api-lite`

# Usage Examples

## Query Status
````python
from goecharger_api_lite import GoeCharger

charger = GoeCharger("192.168.1.150") # --> change to your IP

# get full status
status = charger.get_status(status_type=GoeCharger.STATUS_FULL)

# essential status (car state, wallbox state, wallbox error)
status = charger.get_status(status_type=GoeCharger.STATUS_MINIMUM)

# status for custom API keys (friendly name, OEM manufacturer) 
status = charger.get_status(("fna", "oem"))
````

#### Hint: Pretty Print Status
````python
import json

print(json.dumps(status, indent=4))
````
````
{
    "fna": "myEVCharger",
    "oem": "go-e"
}
````

## Set Configuration

### Interrupt and restart EV charging session
````python
from goecharger_api_lite import GoeCharger

charger = GoeCharger("192.168.1.150") # --> change to your IP

# STOP current charging session
charger.set_charging_mode(charger.SettableValueEnums.ChargingMode.off)

# restart charging session again
charger.set_charging_mode(charger.SettableValueEnums.ChargingMode.neutral)
````

### Set charge rate (ampere) and number of phases
````python
from goecharger_api_lite import GoeCharger

charger = GoeCharger("192.168.1.150") # --> change to your IP

# set to 1 phase, 13 ampere
charger.set_phase_mode(charger.SettableValueEnum.PhaseMode.one)
charger.set_ampere(13)

# set to 3 phases, 16 ampere
charger.set_phase_mode(charger.SettableValueEnum.PhaseMode.three)
charger.set_ampere(16)

# set phase mode to auto
charger.set_phase_mode(charger.SettableValueEnum.PhaseMode.auto)

# set maximum possible charge rate of the charger (ampere)
# this will limit the maximum charge rate that can be set by the user, i.e. via the app
charger.set_absolute_max_current(10)
````

### Set cable lock mode
````python
from goecharger_api_lite import GoeCharger

charger = GoeCharger("192.168.1.150") # --> change to your IP

# set to require unlocking the car first
charger.set_cable_lock_mode(charger.SettableValueEnum.CableLockMode.unlockcarfirst)

# set to automatically unlock after charging
charger.set_cable_lock_mode(charger.SettableValueEnum.CableLockMode.automatic)

# set to always lock the cable
charger.set_cable_lock_mode(charger.SettableValueEnum.CableLockMode.locked)
````

### Set charge limit
````python
from goecharger_api_lite import GoeCharger

charger = GoeCharger("192.168.1.150") # --> change to your IP

# set charge limit to 2.5 kWh
charger.set_charge_limit(2500)

# Disable charge limit
charger.set_charge_limit(None)
````

### Set Generic API Key
````python
from goecharger_api_lite import GoeCharger

charger = GoeCharger("192.168.1.150") # --> change to your IP

# set generic API key (friendly name: "myEVCharger")
charger.set_key("fna", "myEVCharger")
````

# Links
[goecharger-api-lite GitHub repository](https://github.com/bkogler/goecharger-api-lite)

[goecharger-api-lite on Pypi](https://pypi.org/project/goecharger-api-lite)

[go-E Website (manufacturer)](https://go-e.com)

[go-E API v2 specification](https://github.com/goecharger/go-eCharger-API-v2/blob/main/introduction-en.md)

[go-E API Keys (query status, set configuration)](https://github.com/goecharger/go-eCharger-API-v2/blob/main/apikeys-en.md)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/bkogler/goecharger-api-lite",
    "name": "goecharger-api-lite",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "",
    "keywords": "go-e EV wallbox electric charger Gemini flex HOMEfix HOME+ HTTP API v2",
    "author": "Bernhard Kogler",
    "author_email": "bernhard.kogler@supersonnig.org",
    "download_url": "https://files.pythonhosted.org/packages/1e/a9/606e8f17e8841631da99ec6c4d2ddbb8689fd1a744b36bdbb83335a97608/goecharger-api-lite-1.5.1.tar.gz",
    "platform": null,
    "description": "# [goecharger API (lite)](https://github.com/bkogler/goecharger-api-lite)\nLightweight Python API for accessing modern go-eCharger EV wallboxes using local HTTP API v2\n\n[go-eCharger](https://go-e.com) models:\n* Gemini\n* Gemini flex\n* HOMEfix\n* HOME+\n\n# Table of contents\n<!-- TOC -->\n* [Features](#features)\n* [Installation](#installation)\n* [Usage Examples](#usage-examples)\n  * [Query Status](#query-status)\n    * [Pretty Print Status](#pretty-print-status)\n  * [Set Configuration](#set-configuration)\n* [Links](#links)\n<!-- TOC -->\n\n# Features\n* Query Charger Status\n* Set Charger Configuration\n* Uses asynchronous aiohttp requests for communication\n\n# Installation\n`pip install goecharger-api-lite`\n\n# Usage Examples\n\n## Query Status\n````python\nfrom goecharger_api_lite import GoeCharger\n\ncharger = GoeCharger(\"192.168.1.150\") # --> change to your IP\n\n# get full status\nstatus = charger.get_status(status_type=GoeCharger.STATUS_FULL)\n\n# essential status (car state, wallbox state, wallbox error)\nstatus = charger.get_status(status_type=GoeCharger.STATUS_MINIMUM)\n\n# status for custom API keys (friendly name, OEM manufacturer) \nstatus = charger.get_status((\"fna\", \"oem\"))\n````\n\n#### Hint: Pretty Print Status\n````python\nimport json\n\nprint(json.dumps(status, indent=4))\n````\n````\n{\n    \"fna\": \"myEVCharger\",\n    \"oem\": \"go-e\"\n}\n````\n\n## Set Configuration\n\n### Interrupt and restart EV charging session\n````python\nfrom goecharger_api_lite import GoeCharger\n\ncharger = GoeCharger(\"192.168.1.150\") # --> change to your IP\n\n# STOP current charging session\ncharger.set_charging_mode(charger.SettableValueEnums.ChargingMode.off)\n\n# restart charging session again\ncharger.set_charging_mode(charger.SettableValueEnums.ChargingMode.neutral)\n````\n\n### Set charge rate (ampere) and number of phases\n````python\nfrom goecharger_api_lite import GoeCharger\n\ncharger = GoeCharger(\"192.168.1.150\") # --> change to your IP\n\n# set to 1 phase, 13 ampere\ncharger.set_phase_mode(charger.SettableValueEnum.PhaseMode.one)\ncharger.set_ampere(13)\n\n# set to 3 phases, 16 ampere\ncharger.set_phase_mode(charger.SettableValueEnum.PhaseMode.three)\ncharger.set_ampere(16)\n\n# set phase mode to auto\ncharger.set_phase_mode(charger.SettableValueEnum.PhaseMode.auto)\n\n# set maximum possible charge rate of the charger (ampere)\n# this will limit the maximum charge rate that can be set by the user, i.e. via the app\ncharger.set_absolute_max_current(10)\n````\n\n### Set cable lock mode\n````python\nfrom goecharger_api_lite import GoeCharger\n\ncharger = GoeCharger(\"192.168.1.150\") # --> change to your IP\n\n# set to require unlocking the car first\ncharger.set_cable_lock_mode(charger.SettableValueEnum.CableLockMode.unlockcarfirst)\n\n# set to automatically unlock after charging\ncharger.set_cable_lock_mode(charger.SettableValueEnum.CableLockMode.automatic)\n\n# set to always lock the cable\ncharger.set_cable_lock_mode(charger.SettableValueEnum.CableLockMode.locked)\n````\n\n### Set charge limit\n````python\nfrom goecharger_api_lite import GoeCharger\n\ncharger = GoeCharger(\"192.168.1.150\") # --> change to your IP\n\n# set charge limit to 2.5 kWh\ncharger.set_charge_limit(2500)\n\n# Disable charge limit\ncharger.set_charge_limit(None)\n````\n\n### Set Generic API Key\n````python\nfrom goecharger_api_lite import GoeCharger\n\ncharger = GoeCharger(\"192.168.1.150\") # --> change to your IP\n\n# set generic API key (friendly name: \"myEVCharger\")\ncharger.set_key(\"fna\", \"myEVCharger\")\n````\n\n# Links\n[goecharger-api-lite GitHub repository](https://github.com/bkogler/goecharger-api-lite)\n\n[goecharger-api-lite on Pypi](https://pypi.org/project/goecharger-api-lite)\n\n[go-E Website (manufacturer)](https://go-e.com)\n\n[go-E API v2 specification](https://github.com/goecharger/go-eCharger-API-v2/blob/main/introduction-en.md)\n\n[go-E API Keys (query status, set configuration)](https://github.com/goecharger/go-eCharger-API-v2/blob/main/apikeys-en.md)\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Lightweight Python API for accessing go-eCharger EV wallboxes using local HTTP API v2",
    "version": "1.5.1",
    "project_urls": {
        "Homepage": "https://github.com/bkogler/goecharger-api-lite"
    },
    "split_keywords": [
        "go-e",
        "ev",
        "wallbox",
        "electric",
        "charger",
        "gemini",
        "flex",
        "homefix",
        "home+",
        "http",
        "api",
        "v2"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fc32198f8c8702e83869112f553612364898605d76109c5c9e2d84522d5f85ce",
                "md5": "fae8b847655388c893d1651e1d7fa6f0",
                "sha256": "0e573c90496fe279a955a86764f5532cd9678a9540dffa1262f06d72f2f4a996"
            },
            "downloads": -1,
            "filename": "goecharger_api_lite-1.5.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fae8b847655388c893d1651e1d7fa6f0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 8463,
            "upload_time": "2023-07-28T20:22:21",
            "upload_time_iso_8601": "2023-07-28T20:22:21.575314Z",
            "url": "https://files.pythonhosted.org/packages/fc/32/198f8c8702e83869112f553612364898605d76109c5c9e2d84522d5f85ce/goecharger_api_lite-1.5.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1ea9606e8f17e8841631da99ec6c4d2ddbb8689fd1a744b36bdbb83335a97608",
                "md5": "6d4c59db44b1d5c74da9e66c86517a72",
                "sha256": "cc175bc4d472bd1baf4eb76618fe7023d5cc79703fee482c8cefd7b5814aa6a5"
            },
            "downloads": -1,
            "filename": "goecharger-api-lite-1.5.1.tar.gz",
            "has_sig": false,
            "md5_digest": "6d4c59db44b1d5c74da9e66c86517a72",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 8843,
            "upload_time": "2023-07-28T20:22:22",
            "upload_time_iso_8601": "2023-07-28T20:22:22.993314Z",
            "url": "https://files.pythonhosted.org/packages/1e/a9/606e8f17e8841631da99ec6c4d2ddbb8689fd1a744b36bdbb83335a97608/goecharger-api-lite-1.5.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-28 20:22:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "bkogler",
    "github_project": "goecharger-api-lite",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "goecharger-api-lite"
}
        
Elapsed time: 0.11458s