ocpi-tariffs-cli

Crates.ioocpi-tariffs-cli
lib.rsocpi-tariffs-cli
version0.6.1
sourcesrc
created_at2023-03-28 15:09:29.418324
updated_at2024-08-20 11:45:09.659948
descriptionCLI application for OCPI tariff calculation
homepage
repositoryhttps://github.com/tandemdrive/ocpi-tariffs
max_upload_size
id823152
size46,591
Remo (remkop22)

documentation

README

OCPI tariffs CLI

This crate provides a binary for doing calculations with OCPI tariffs. Specifically for the OCPI 2.2.1 and OCPI 2.1.1 version.

Installation

First install Rust and then install the OCPI tariffs command line tool:

cargo install ocpi-tariffs-cli

Usage

The binary can be directly executed using ocpi-tariffs. Execute ocpi-tariffs --help for a list of subcommands.

Subcomamands

Analyze

To price a tariff and CDR (Charge detail record) and see a breakdown of the separate periods use analyze:

Analyze a given charge detail record (CDR) against either a provided tariff
structure or a tariff that is contained in the CDR itself.

This command will show you a breakdown of all the calculated costs.

Usage: ocpi-tariffs analyze [OPTIONS]

Options:
  -c, --cdr <CDR>
          A path to the charge detail record in json format.

          If no path is provided the CDR is read from standard in.

  -t, --tariff <TARIFF>
          A path to the tariff structure in json format.

          If no path is provided, then the tariff is inferred to be contained
          inside the provided CDR. If the CDR contains multiple tariff
          structures, the first valid tariff will be used.

  -o, --ocpi-version <OCPI_VERSION>
          The OCPI version that should be used for the input structures.

          If the input consists of version 2.1.1 structures they will be converted to 2.2.1 structures. 
          The actual calculation and output will always be according to OCPI 2.2.1.

          use `detect` to let to tool try to find the matching version.

          [default: v221]
          [possible values: v221, v211, detect]  


  -z, --timezone <TIMEZONE>
          Timezone for evaluating any local times contained in the tariff
          structure

          [default: Europe/Amsterdam]

  -h, --help
          Print help (see a summary with '-h')

Validate

To price a tariff and CDR and check if the calculation differs from the original CDR use validate:

Validate a given charge detail record (CDR) against either a provided tariff
structure or a tariff that is contained in the CDR itself.

This command will show the differences between the calculated totals and the
totals contained in the provided CDR.

Usage: ocpi-tariffs validate [OPTIONS]

Options:
  -c, --cdr <CDR>
          A path to the charge detail record in json format.

          If no path is provided the CDR is read from standard in.

  -t, --tariff <TARIFF>
          A path to the tariff structure in json format.

          If no path is provided, then the tariff is inferred to be contained
          inside the provided CDR. If the CDR contains multiple tariff
          structures, the first valid tariff will be used.

  -z, --timezone <TIMEZONE>
          Timezone for evaluating any local times contained in the tariff
          structure

          [default: Europe/Amsterdam]

  -o, --ocpi-version <OCPI_VERSION>
          The OCPI version that should be used for the input structures.

          If the input consists of version 2.1.1 structures they will be converted to 2.2.1 structures. 
          The actual calculation and output will always be according to OCPI 2.2.1.

          use `detect` to let to tool try to find the matching version.

          [default: v221]
          [possible values: v221, v211, detect]  

  -h, --help
          Print help (see a summary with '-h')
Commit count: 70

cargo fmt