```txt
███████╗██████╗ ██████╗ ███████╗ ██████╗
██╔════╝██╔══██╗ ██╔══██╗██╔════╝██╔═══██╗
█████╗ ██████╔╝ ██║ ██║███████╗██║ ██║
██╔══╝ ██╔══██╗ ██║ ██║╚════██║██║ ██║
███████╗██████╔╝ ██████╔╝███████║╚██████╔╝
╚══════╝╚═════╝ ╚═════╝ ╚══════╝ ╚═════╝
```
# Introducción
Un programa de línea de comandos para preparar y empujar reportes de lectura desde el api de enerBit al MDM.
Se distribuye como un paquete de Python ejecutable.
# Como empezar
## Instalación
1. Crear un ambiente virtual de Python para aislar la instalación del paquete de otros paquetes.
```powershell
python3 -m venv venv
source ./venv/Scripts/activate
```
1. Instalar paquete usando pip (asegurarse de tener activo el ambiente virtual).
```powershell
python -m pip install enerbitdso
```
1. Comprobar la instalación con el comando de ayuda
```powershell
enerbitdso --help
```
# Uso
El comando es `enerbitdso`.
Se tiene una ayuda usando la opción `--help`.
Esta explica los sub-comandos y las opciones disponibles de cada uno.
Esta herramienta usa las variables de entorno para configurar su ejecución.
## Sub-comandos
### `enerbitdso usages fetch`
Consulta los consumos usando el API para DSO de enerBit para un conjunto de fronteras.
#### Variables de entorno **requeridas**
Para ejecutar este sub-comando se requieren tres variables de entorno configuradas con sus respectivos valores.
- ENERBIT_API_BASE_URL: La URL base del API del DSO, su valor debe ser `https://dso.enerbit.me/`
- ENERBIT_API_USERNAME: El nombre de usuario para autenticarse contra el API, ejemplo: `pedro.perez@example.com`
- ENERBIT_API_PASSWORD: La contraseña del usuario para autenticarse, ejemplo: `mIClaVeSUperseCRETa`
Para configurar estas variables de entorno se pueden ejecutar los siguientes comandos en la terminal de powershell:
```powershell
$env:ENERBIT_API_BASE_URL='https://dso.enerbit.me/'
$env:ENERBIT_API_USERNAME='pedro.perez@example.com'
$env:ENERBIT_API_PASSWORD='mIClaVeSUperseCRETa'
```
#### Especificación de fronteras a consultar
Las fronteras a consultar se pueden especificar como una lista al final del comando separadas por espacios:
```powershell
> enerbitdso usages fetch Frt00000 Frt00001
```
También se puede usar un archivo de texto con un código de frontera por línea usando la opción `--frt-file` y pasando la ubicación de dicho archivo.
```powershell
> enerbitdso usages fetch --frt-file "D://Mi CGM/misfronteras.txt"
```
#### Especificación de intervalo de tiempo para la consulta
El intervalo de tiempo se define a través de los parámetros de tipo fecha `--since` y `--until` (desde y hasta, respectivamente).
*Por defecto*, se consultan los 24 periodos del día de ayer.
Para consultar los periodos entre 2023-04-01 a las 09:00 y el 2023-04-05 a las 17:00:
```powershell
> enerbitdso usages fetch Frt00000 Frt00001 --since 20230401 --until 20230405
```
#### Opción de ayuda
También tiene opción `--help` que muestra la ayuda particular de este sub-comando.
```powershell
> enerbitdso usages fetch --help
Usage: enerbitdso usages fetch [OPTIONS] [FRTS]...
╭─ Arguments ────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ frts [FRTS]... List of frt codes separated by ' ' [default: None] │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ──────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ * --api-base-url TEXT [env var: ENERBIT_API_BASE_URL] [default: None] [required] │
│ * --api-username TEXT [env var: ENERBIT_API_USERNAME] [default: None] [required] │
│ * --api-password TEXT [env var: ENERBIT_API_PASSWORD] [default: None] [required] │
│ --since [%Y-%m-%d|%Y%m%d] [default: (yesterday)] │
│ --until [%Y-%m-%d|%Y%m%d] [default: (today)] │
│ --timezone TEXT [default: America/Bogota] │
│ --out-format [csv|jsonl] Output file format [default: jsonl] │
│ --frt-file PATH Path file with one frt code per line [default: None] │
│ --help Show this message and exit. │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
```
Raw data
{
"_id": null,
"home_page": "https://github.com/enerBit/enerbitdso",
"name": "enerbitdso",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9, <3.11",
"maintainer_email": "",
"keywords": "enerbit distribution system operator power colombia asic xm api client",
"author": "enerBit",
"author_email": "operacion-fronteras@enerbit.co",
"download_url": "https://files.pythonhosted.org/packages/0d/83/1403abc3e59e24e2613bdf82a6ee3b4fa8cf1939f1e4253236e6b0afb66f/enerbitdso-0.1.8.tar.gz",
"platform": null,
"description": "\n```txt\n\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \n\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255d\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557 \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255d\u2588\u2588\u2554\u2550\u2550\u2550\u2588\u2588\u2557\n\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255d \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2551\n\u2588\u2588\u2554\u2550\u2550\u255d \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557 \u2588\u2588\u2551 \u2588\u2588\u2551\u255a\u2550\u2550\u2550\u2550\u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\n\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255d \u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255d\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2551\u255a\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255d\n\u255a\u2550\u2550\u2550\u2550\u2550\u2550\u255d\u255a\u2550\u2550\u2550\u2550\u2550\u255d \u255a\u2550\u2550\u2550\u2550\u2550\u255d \u255a\u2550\u2550\u2550\u2550\u2550\u2550\u255d \u255a\u2550\u2550\u2550\u2550\u2550\u255d \n \n```\n\n# Introducci\u00f3n\n\nUn programa de l\u00ednea de comandos para preparar y empujar reportes de lectura desde el api de enerBit al MDM.\n\nSe distribuye como un paquete de Python ejecutable.\n\n# Como empezar\n\n## Instalaci\u00f3n\n\n1. Crear un ambiente virtual de Python para aislar la instalaci\u00f3n del paquete de otros paquetes.\n\n```powershell\npython3 -m venv venv\nsource ./venv/Scripts/activate\n```\n\n1. Instalar paquete usando pip (asegurarse de tener activo el ambiente virtual).\n\n```powershell\npython -m pip install enerbitdso\n```\n\n1. Comprobar la instalaci\u00f3n con el comando de ayuda\n\n```powershell\nenerbitdso --help\n```\n\n# Uso\n\nEl comando es `enerbitdso`.\n\nSe tiene una ayuda usando la opci\u00f3n `--help`.\nEsta explica los sub-comandos y las opciones disponibles de cada uno.\n\nEsta herramienta usa las variables de entorno para configurar su ejecuci\u00f3n.\n\n## Sub-comandos\n\n### `enerbitdso usages fetch`\n\nConsulta los consumos usando el API para DSO de enerBit para un conjunto de fronteras.\n\n#### Variables de entorno **requeridas**\n\nPara ejecutar este sub-comando se requieren tres variables de entorno configuradas con sus respectivos valores.\n\n- ENERBIT_API_BASE_URL: La URL base del API del DSO, su valor debe ser `https://dso.enerbit.me/`\n- ENERBIT_API_USERNAME: El nombre de usuario para autenticarse contra el API, ejemplo: `pedro.perez@example.com`\n- ENERBIT_API_PASSWORD: La contrase\u00f1a del usuario para autenticarse, ejemplo: `mIClaVeSUperseCRETa`\n\nPara configurar estas variables de entorno se pueden ejecutar los siguientes comandos en la terminal de powershell:\n\n```powershell\n$env:ENERBIT_API_BASE_URL='https://dso.enerbit.me/'\n$env:ENERBIT_API_USERNAME='pedro.perez@example.com'\n$env:ENERBIT_API_PASSWORD='mIClaVeSUperseCRETa'\n```\n\n#### Especificaci\u00f3n de fronteras a consultar\n\nLas fronteras a consultar se pueden especificar como una lista al final del comando separadas por espacios:\n\n```powershell\n> enerbitdso usages fetch Frt00000 Frt00001\n```\n\nTambi\u00e9n se puede usar un archivo de texto con un c\u00f3digo de frontera por l\u00ednea usando la opci\u00f3n `--frt-file` y pasando la ubicaci\u00f3n de dicho archivo.\n\n```powershell\n> enerbitdso usages fetch --frt-file \"D://Mi CGM/misfronteras.txt\"\n```\n\n#### Especificaci\u00f3n de intervalo de tiempo para la consulta\n\nEl intervalo de tiempo se define a trav\u00e9s de los par\u00e1metros de tipo fecha `--since` y `--until` (desde y hasta, respectivamente).\n*Por defecto*, se consultan los 24 periodos del d\u00eda de ayer.\n\nPara consultar los periodos entre 2023-04-01 a las 09:00 y el 2023-04-05 a las 17:00:\n\n```powershell\n> enerbitdso usages fetch Frt00000 Frt00001 --since 20230401 --until 20230405\n```\n\n#### Opci\u00f3n de ayuda\n\nTambi\u00e9n tiene opci\u00f3n `--help` que muestra la ayuda particular de este sub-comando.\n\n```powershell\n> enerbitdso usages fetch --help\n\n Usage: enerbitdso usages fetch [OPTIONS] [FRTS]...\n\n\u256d\u2500 Arguments \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502 frts [FRTS]... List of frt codes separated by ' ' [default: None] \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n\u256d\u2500 Options \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502 * --api-base-url TEXT [env var: ENERBIT_API_BASE_URL] [default: None] [required] \u2502\n\u2502 * --api-username TEXT [env var: ENERBIT_API_USERNAME] [default: None] [required] \u2502\n\u2502 * --api-password TEXT [env var: ENERBIT_API_PASSWORD] [default: None] [required] \u2502\n\u2502 --since [%Y-%m-%d|%Y%m%d] [default: (yesterday)] \u2502\n\u2502 --until [%Y-%m-%d|%Y%m%d] [default: (today)] \u2502\n\u2502 --timezone TEXT [default: America/Bogota] \u2502\n\u2502 --out-format [csv|jsonl] Output file format [default: jsonl] \u2502\n\u2502 --frt-file PATH Path file with one frt code per line [default: None] \u2502\n\u2502 --help Show this message and exit. \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n```\n",
"bugtrack_url": null,
"license": "",
"summary": "enerBit DSO (Distribution System Operator) API client",
"version": "0.1.8",
"project_urls": {
"Homepage": "https://github.com/enerBit/enerbitdso",
"Source": "https://github.com/enerBit/enerbitdso"
},
"split_keywords": [
"enerbit",
"distribution",
"system",
"operator",
"power",
"colombia",
"asic",
"xm",
"api",
"client"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fa4c3664c15ab3c53c22cd8789a2f3dc079f9951050550111049ffc7fbd0ef1a",
"md5": "c1d3756e6207ec94488ff6bdbba86bd7",
"sha256": "88bc8c5366406f223640f029f5798aa5ef776e354c1edc89f04ce0542f5aaf22"
},
"downloads": -1,
"filename": "enerbitdso-0.1.8-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c1d3756e6207ec94488ff6bdbba86bd7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9, <3.11",
"size": 8827,
"upload_time": "2024-02-27T20:53:16",
"upload_time_iso_8601": "2024-02-27T20:53:16.411180Z",
"url": "https://files.pythonhosted.org/packages/fa/4c/3664c15ab3c53c22cd8789a2f3dc079f9951050550111049ffc7fbd0ef1a/enerbitdso-0.1.8-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0d831403abc3e59e24e2613bdf82a6ee3b4fa8cf1939f1e4253236e6b0afb66f",
"md5": "385bcdc3dd80af28c645a7723240b50c",
"sha256": "f033364902c18741957eecafdf3fd9263497e09ef2a1229d4ef890d7a5332f1b"
},
"downloads": -1,
"filename": "enerbitdso-0.1.8.tar.gz",
"has_sig": false,
"md5_digest": "385bcdc3dd80af28c645a7723240b50c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9, <3.11",
"size": 11831,
"upload_time": "2024-02-27T20:53:18",
"upload_time_iso_8601": "2024-02-27T20:53:18.156322Z",
"url": "https://files.pythonhosted.org/packages/0d/83/1403abc3e59e24e2613bdf82a6ee3b4fa8cf1939f1e4253236e6b0afb66f/enerbitdso-0.1.8.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-27 20:53:18",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "enerBit",
"github_project": "enerbitdso",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "enerbitdso"
}