Connection Module

class Taipower.connection.TaipowerTokens(access_token: str, refresh_token: str, expiration: float)[source]

Bases: object

class Taipower.connection.TaipowerConnection(account, password, taipower_tokens=None, proxy=None, print_response=False)[source]

Bases: object

Connecting to Taipower API.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.

  • taipower_tokens (TaipowerTokens, optional) – If taipower_tokens is given, it is used by request; otherwise, a login procedure is performed to obtain new taipower_tokens, by default None.

  • proxy (str, optional) – Proxy setting. Format:”IP:port”, by default None.

  • print_response (bool, optional) – If set, all responses of httpx will be printed, by default False.

login(use_refresh_token=False)[source]

Login API.

Parameters:

use_refresh_token (bool, optional) – Whether or not to use TaipowerTokens.refresh_token to login. If TaipowerTokens is not provided, fallback to email and password, by default False

Returns:

(status, Taipower tokens).

Return type:

(str, TaipowerTokens)

class Taipower.connection.CheckToken(account, password, **kwargs)[source]

Bases: TaipowerConnection

API internal endpoint. Note: Uses application/x-www-form-urlencoded content type.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.

class Taipower.connection.CheckVersion(account, password, **kwargs)[source]

Bases: TaipowerConnection

API internal endpoint.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.

class Taipower.connection.Greeting(account, password, **kwargs)[source]

Bases: TaipowerConnection

API internal endpoint.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.

class Taipower.connection.GetMember(account, password, **kwargs)[source]

Bases: TaipowerConnection

API internal endpoint.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.

class Taipower.connection.GetAMIBill(account, password, taipower_tokens=None, proxy=None, print_response=False)[source]

Bases: TaipowerConnection

API internal endpoint.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.

class Taipower.connection.GetAMIPowerRate(account, password, **kwargs)[source]

Bases: TaipowerConnection

API internal endpoint.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.

class Taipower.connection.GetAMI(account, password, **kwargs)[source]

Bases: TaipowerConnection

API internal endpoint.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.

class Taipower.connection.GetAMIUnbilled(account, password, **kwargs)[source]

Bases: TaipowerConnection

API internal endpoint.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.

class Taipower.connection.GetBillRecords(account, password, **kwargs)[source]

Bases: TaipowerConnection

API internal endpoint.

Parameters:
  • account (str) – User phone number.

  • password (str) – User password.