get_os_events()

Lists the server-side scripting events (OsEvents) configured on the server via dms.GetOsEvents. Each event ties an event code (trigger) to script code (VBScript or JavaScript) and a scope (object type, UI context, target platform).

All filters are optional and combined with AND. Without any filter the server returns all configured events.

1. Signature

  • Sync

  • Async

ecm.system.get_os_events(
    *,
    os_event_id: int | None = None,
    event_code: int | ECMOsEventCode | None = None,
    os_class_name: str | None = None,
    object_class: int | ECMOsObjectClass | None = None,
    app_class: int | ECMOsAppClass | None = None,
    event_params: str | None = None,
) -> list[ECMOsEvent]
await ecm.system.get_os_events(
    *,
    os_event_id: int | None = None,
    event_code: int | ECMOsEventCode | None = None,
    os_class_name: str | None = None,
    object_class: int | ECMOsObjectClass | None = None,
    app_class: int | ECMOsAppClass | None = None,
    event_params: str | None = None,
) -> list[ECMOsEvent]

2. Parameters

Parameter Type Default Description

os_event_id

int

None

Filter by the internal event id (database primary key).

event_code

int | ECMOsEventCode

None

Filter by the event trigger. ECMOsEventCode lists well-known codes (e.g. KERNEL_BEFORE_JOB=5000); a plain int is also accepted.

os_class_name

str

None

Filter by target object type: "Application" for application/server-wide events, otherwise the type_id as string.

object_class

int | ECMOsObjectClass

None

Filter by UI context, see ECMOsObjectClass.

app_class

int | ECMOsAppClass

None

Filter by target platform: CLIENT=1, SERVER=2, WEBCLIENT=3.

event_params

str

None

Filter by the context parameter (field GUID, job name, or library name).

3. Return value

A list of ECMOsEvent. Empty when no event matches the filters.

The ECMOsEvent model has the following fields:

Field Type Description

id

int

Internal primary key; handle for update_os_event() and delete_os_event().

event_code

int

Event trigger; comparable to ECMOsEventCode values.

os_class_name

str

Target object type ("Application" or type_id).

object_class

int

UI context, comparable to ECMOsObjectClass.

app_class

int

Target platform, comparable to ECMOsAppClass.

is_js

bool

True for JavaScript, False for VBScript.

vb_code

str

Script code (despite the field name, JavaScript when is_js is true).

os_event_params

str

Context parameter (field GUID, job name, or library name); empty when none.

modify_user

str

Login name of the user who last modified the event.

last_modified

datetime

Timestamp of the last modification (UTC).

4. Examples

4.1. List all server events

  • Sync

  • Async

from ecmind_blue_client.ecm import ECMOsAppClass

for event in ecm.system.get_os_events(app_class=ECMOsAppClass.SERVER):
    print(event.id, event.event_code, event.os_class_name)
from ecmind_blue_client.ecm import ECMOsAppClass

for event in await ecm.system.get_os_events(app_class=ECMOsAppClass.SERVER):
    print(event.id, event.event_code, event.os_class_name)

4.2. Load a single event by id

events = ecm.system.get_os_events(os_event_id=9)
event = events[0] if events else None

5. Important note

These operations access the enaio scripting infrastructure directly. Misconfigured events can disrupt the client or server. Test and version your changes.

6. See also