HostHandler

class secsgem.gem.hosthandler.GemHostHandler(settings)[source]

Baseclass for creating host models. Inherit from this class and override required functions.

clear_collection_events()[source]

Clear all collection events.

Return type:

None

subscribe_collection_event(ceid, dvs, report_id=None)[source]

Subscribe to a collection event.

Parameters:
  • ceid (int | str) – ID of the collection event

  • dvs (list[int | str]) – DV IDs to add for collection event

  • report_id (int | str | None) – optional - ID for report, autonumbering if None

send_remote_command(rcmd, params)[source]

Send a remote command.

Parameters:
  • rcmd (int | str) – Name of command

  • params (list[str]) – DV IDs to add for collection event

Return type:

SecsStreamFunction

Returns:

response from remote

delete_process_programs(ppids)[source]

Delete a list of process program.

Parameters:

ppids (list[int | str]) – Process programs to delete

Returns:

response from remote

get_process_program_list()[source]

Get process program list.

Returns:

response from remote

go_online()[source]

Set control state to online.

Returns:

response text or None if no response text

go_offline()[source]

Set control state to offline.

Returns:

response text or None if no response text

enable_alarm(alid)[source]

Enable alarm.

Parameters:

alid (int | str) – alarm id to enable

Returns:

response from remote

disable_alarm(alid)[source]

Disable alarm.

Parameters:

alid (int | str) – alarm id to disable

Returns:

response from remote

list_alarms(alids=None)[source]

List alarms.

Parameters:

alids (list[int | str] | None) – alarms to list details for

Returns:

response from remote

list_enabled_alarms()[source]

List enabled alarms.

Returns:

response from remote

are_you_there()

Check if remote is still replying.

Return type:

Message | None

property callbacks: CallbackHandler

Property for callback handling.

property communication_state: CommunicationStateMachine

Get the communication state model.

property data_items: DataItems

Get data item container.

Returns:

data item container

disable()

Disable the connection.

Return type:

None

disable_ceid_reports()

Disable all Collection Event Reports.

Return type:

Message | None

disable_ceids()

Disable all Collection Events.

Return type:

Message | None

enable()

Enable the connection.

Return type:

None

property events: EventProducer

Wrapper for connections events.

list_ecs(ecs=None)

Get list of available Equipment Constants.

Parameters:

ecs (list[str | int] | None) – Equipment Constants to list

Return type:

SecsStreamFunction

Returns:

available Equipment Constants

list_svs(svs=None)

Get list of available Status Variables.

Parameters:

svs (list[str | int] | None) – Status Variables to list

Return type:

SecsStreamFunction

Returns:

available Status Variables

on_commack_requested()

Get the acknowledgement code for the connection request.

override to accept or deny connection request

Return type:

int

Returns:

0 when connection is accepted, 1 when connection is denied

on_connection_closed(_connection)

Handle connection was closed event.

Parameters:

connection – connection that was closed

property protocol: Protocol

Get the connection for the handler.

register_stream_function(stream, function, callback)

Register the function callback for stream and function.

Parameters:
  • stream (int) – stream to register callback for

  • function (int) – function to register callback for

  • callback (Callable) – method to call when stream and functions is received

request_ec(ec_id)

Request contents of one Equipment Constant.

Parameters:

ec_id (int | str) – id of Equipment Constant

Return type:

SecsStreamFunction

Returns:

value of requested Equipment Constant

request_ecs(ecs)

Request contents of supplied Equipment Constants.

Parameters:

ecs (list[int | str]) – Equipment Constants to request

Return type:

SecsStreamFunction

Returns:

values of requested Equipment Constants

request_process_program(ppid)

Request a process program.

ppid: Transferred process programs ID

Return type:

tuple[int | str, str]

request_sv(sv_id)

Request contents of one Status Variable.

Parameters:

sv_id (int | str) – id of Status Variable

Return type:

int | str | None

Returns:

value of requested Status Variable

request_svs(svs)

Request contents of supplied Status Variables.

Parameters:

svs (list[str | int]) – Status Variables to request

Return type:

SecsStreamFunction

Returns:

values of requested Status Variables

send_and_waitfor_response(function)

Wrapper for connections send_and_waitfor_response function.

Return type:

Message | None

send_equipment_terminal(terminal_id, text)

Set text to equipment terminal.

Parameters:
  • terminal_id (int) – ID of terminal

  • text (str) – text to send

Return type:

Message | None

send_process_program(ppid, ppbody)

Send a process program.

Parameters:
  • ppid (int | str) – Transferred process programs ID

  • ppbody (str) – Content of process program

Return type:

int

Returns:

Send result

send_response(function, system)

Wrapper for connections send_response function.

Return type:

bool

send_stream_function(function)

Wrapper for connections send_stream_function function.

Return type:

bool

serialize_data()

Get serialized data.

Return type:

dict[str, Any]

Returns:

data to serialize for this object

set_ec(ec_id, value)

Set contents of one Equipment Constant.

Parameters:
  • ec_id (int | str) – id of Equipment Constant

  • value (int | str | float) – new content of Equipment Constant

Return type:

int

set_ecs(ecs)

Set contents of supplied Equipment Constants.

Parameters:

ecs (list[list[str | int | float]]) – list containing list of id / value pairs

Return type:

int

property settings: Settings

Get the setting object.

stream_function(stream, function)

Get class for stream and function.

Parameters:
  • stream (int) – stream to get class for

  • function (int) – function to get class for

Return type:

type[SecsStreamFunction]

Returns:

class for function

unregister_stream_function(stream, function)

Unregister the function callback for stream and function.

Parameters:
  • stream (int) – stream to unregister callback for

  • function (int) – function to register callback for

waitfor_communicating(timeout=None)

Wait until connection gets into communicating state. Returns immediately if state is communicating.

Parameters:

timeout (float | None) – seconds to wait before aborting

Return type:

bool

Returns:

True if state is communicating, False if timed out