configure_user_absence()
Markiert einen oder mehrere Benutzer in einer Workflow-Organisation als
abwesend oder anwesend über wfm.ConfigUserAbsence. Der Server benachrichtigt
zusätzlich alle laufenden Server und verbundenen
enaio® editor-for-workflow-Instanzen über die Statusänderung.
1. Signatur
-
Sync
-
Async
ecm.workflow.configure_user_absence(
organisation: str | ECMOrganisation,
absences: Mapping[ECMOrganisationObjectIdLike, bool],
) -> None
await ecm.workflow.configure_user_absence(
organisation: str | ECMOrganisation,
absences: Mapping[ECMOrganisationObjectIdLike, bool],
) -> None
Der Typ-Alias ECMOrganisationObjectIdLike steht für str | ECMOrganisationObject | ECMOrganisationObjectRef — d. h. überall, wo eine GUID erwartet wird, kann auch direkt eine Objekt-Instanz oder Referenz übergeben werden.
2. Parameter
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
|
|
— |
Organisations-ID als String oder eine |
|
|
— |
Mapping |
4. Beispiele
4.1. Einen Benutzer als abwesend markieren
-
Sync
-
Async
org = ecm.workflow.active_organisation()
ecm.workflow.configure_user_absence(
org,
{"46E29564BC464929A0A2ECA5387B4855": True},
)
org = await ecm.workflow.active_organisation()
await ecm.workflow.configure_user_absence(
org,
{"46E29564BC464929A0A2ECA5387B4855": True},
)
4.2. Mehrere Benutzer in einem Aufruf umschalten
-
Sync
-
Async
org = ecm.workflow.active_organisation()
users = {o.name: o for o in ecm.workflow.organisation_objects(org)}
ecm.workflow.configure_user_absence(
org,
{
users["USER_WITH_RIGHTS"]: True, # abwesend
users["USER_WITHOUT_RIGHTS"]: False, # anwesend
},
)
org = await ecm.workflow.active_organisation()
users = {o.name: o for o in await ecm.workflow.organisation_objects(org)}
await ecm.workflow.configure_user_absence(
org,
{
users["USER_WITH_RIGHTS"]: True,
users["USER_WITHOUT_RIGHTS"]: False,
},
)
4.3. Abwesenheit mit absent_users() verifizieren
-
Sync
-
Async
org = ecm.workflow.active_organisation()
user_id = "46E29564BC464929A0A2ECA5387B4855"
ecm.workflow.configure_user_absence(org, {user_id: True})
assert user_id in ecm.workflow.absent_users(org)
ecm.workflow.configure_user_absence(org, {user_id: False})
assert user_id not in ecm.workflow.absent_users(org)
org = await ecm.workflow.active_organisation()
user_id = "46E29564BC464929A0A2ECA5387B4855"
await ecm.workflow.configure_user_absence(org, {user_id: True})
assert user_id in await ecm.workflow.absent_users(org)
await ecm.workflow.configure_user_absence(org, {user_id: False})
assert user_id not in await ecm.workflow.absent_users(org)
5. Hinweise
-
Pro Aufruf können beliebig viele Benutzer aktualisiert werden.
-
Der Server benachrichtigt automatisch alle anderen Server und verbundenen enaio® editor-for-workflow-Instanzen.
-
Abwesende Benutzer können anschließend über
absent_users()abgefragt werden.
6. Siehe auch
-
absent_users() — Abwesende Benutzer einer Organisation abfragen
-
organisations() — Workflow-Organisationen abfragen
-
set_substitutes() — Stellvertreter setzen