pybragerone.models.api.module_events

Module alarm / activity list DTOs for BragerOne REST responses.

Classes

ModuleActivity(**data)

One module activity (parameter change / remote action) row.

ModuleActivityUser(**data)

Author of a module activity row when the API returns a user object.

ModuleAlarm(**data)

One active or historical module alarm row.

class pybragerone.models.api.module_events.ModuleActivity(**data: Any)[source]

Bases: BaseModel

One module activity (parameter change / remote action) row.

Live POST /v1/modules/activity rows typically include:

Parameters:
  • id (int | None)

  • devid (str)

  • module_id (int | None)

  • name (str)

  • unit (int | None)

  • value (JsonValue)

  • prevValue (JsonValue)

  • prev_value (JsonValue)

  • state (str)

  • created_at (str | None)

  • user (ModuleActivityUser | str | None)

  • user_id (int | None)

  • extra_data (Any)

created_at: str | None
devid: str
id: int | None
model_config: ClassVar[ConfigDict] = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

module_id: int | None
name: str
prev_value_snapshot: JsonValue
previous_value: JsonValue
state: str
unit: int | None
user: ModuleActivityUser | str | None
user_id: int | None
value: JsonValue
class pybragerone.models.api.module_events.ModuleActivityUser(**data: Any)[source]

Bases: BaseModel

Author of a module activity row when the API returns a user object.

Parameters:
id: int
model_config: ClassVar[ConfigDict] = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str
class pybragerone.models.api.module_events.ModuleAlarm(**data: Any)[source]

Bases: BaseModel

One active or historical module alarm row.

id is the SPA alarm type code (mapped via AlarmNameerrors.*), not a unique row primary key.

Parameters:
  • id (int)

  • devid (str)

  • created_at (str | None)

  • finished_at (str | None)

  • extra_data (Any)

created_at: str | None
devid: str
finished_at: str | None
id: int
model_config: ClassVar[ConfigDict] = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].