Skip to Content
Client LibrariesPythonWeitere Clients & API

Weitere Clients & API

ProcessDefinitionClient

Prozesse starten und Definitionen verwalten.

from processcube_client import ClientFactory factory = ClientFactory() client = factory.create_process_definition_client("http://localhost:56100") result = client.start_process_instance_and_await_end_event( "MeinProzess", start_event_id="StartEvent_1", initial_token={"eingabe": "wert"} )
MethodeBeschreibung
start_process_instance(process_model_id, **options)Startet Prozess, gibt sofort zurück
start_process_instance_and_await_end_event(process_model_id, **options)Startet Prozess und wartet auf Ende
start_process_instance_and_await_specific_end_event(process_model_id, end_event_id=..., **options)Wartet auf bestimmtes End-Event
get_process_definition(process_model_id)Gibt die Prozessdefinition zurück

ProcessInstanceClient

client = factory.create_process_instance_client("http://localhost:56100") client.terminate(process_instance_id) client.retry(process_instance_id)
MethodeBeschreibung
terminate(process_instance_id)Bricht eine Prozessinstanz ab
retry(process_instance_id)Wiederholt eine fehlgeschlagene Instanz

EventClient

client = factory.create_event_client("http://localhost:56100") client.trigger_message("BestellungEingegangen", payload={"order_id": "123"}) client.trigger_signal("NotfallStop")
MethodeBeschreibung
trigger_message(event_name, payload={}, process_instance_id=None)Message-Event senden
trigger_signal(signal_name)Signal-Event broadcasten

NotificationClient

Echtzeit-Benachrichtigungen über Prozess-Events per Long Polling.

client = factory.create_notification_client("http://localhost:56100") client.on_process_started(lambda event: print(f"Prozess gestartet: {event}")) client.on_process_ended(lambda event: print(f"Prozess beendet: {event}")) client.on_user_task_waiting(lambda event: print(f"User Task wartet: {event}")) client.start()
MethodeBeschreibung
on_process_started(callback)Prozess gestartet
on_process_ended(callback)Prozess beendet
on_process_error(callback)Prozess-Fehler
on_activity_reached(callback)Aktivität erreicht
on_activity_finished(callback)Aktivität abgeschlossen
on_user_task_waiting(callback)User Task wartet
on_user_task_finished(callback)User Task abgeschlossen
on_user_task_reserved(callback)User Task reserviert
on_user_task_reservation_canceled(callback)Reservierung aufgehoben
on_manual_task_waiting(callback)Manual Task wartet
on_manual_task_finished(callback)Manual Task abgeschlossen
on_boundary_event_triggered(callback)Boundary Event ausgelöst
on_intermediate_throw_event_triggered(callback)Intermediate Throw Event
on_intermediate_catch_event_reached(callback)Intermediate Catch Event erreicht
on_intermediate_catch_event_finished(callback)Intermediate Catch Event abgeschlossen

FlowNodeInstanceClient

client = factory.create_flow_node_instance_client("http://localhost:56100") client.trigger_message_event("MeineNachricht", process_instance_id="...") client.trigger_signal_event("MeinSignal")

AppInfoClient

client = factory.create_app_info_client("http://localhost:56100") info = client.get_info() authority = client.get_authority()

Synchroner Client (core/api)

Für synchrone Kontexte (z.B. Robot Framework):

from processcube_client.core.api.client import Client client = Client("http://localhost:56100") # Engine-Info info = client.info() # Prozess starten from processcube_client.core.api.helpers.process_models import ProcessStartRequest result = client.process_model_start("MeinProzess", ProcessStartRequest( start_event_id="StartEvent_1" )) # BPMN-Dateien deployen result = client.deploy_bpmn_from_path("prozesse/")

API-Endpunkte

Alle Endpunkte liegen unter {engine_url}/atlas_engine/api/v1/.

MethodeEndpunktBeschreibung
GET/infoEngine-Informationen
GET/authorityAuthority-URL
POST/process_definitionsProzessdefinition hochladen
DELETE/process_definitions/{id}Prozessdefinition löschen
POST/process_models/{id}/startProzessinstanz starten
GET/process_instances/queryProzessinstanzen abfragen
PUT/process_instances/{id}/terminateProzessinstanz abbrechen
POST/external_tasks/fetch_and_lockExternalTasks abholen und locken
PUT/external_tasks/{id}/extend_lockLock verlängern
PUT/external_tasks/{id}/finishExternalTask abschließen
PUT/external_tasks/{id}/errorFehler melden
GET/user_tasksUser Tasks abfragen
PUT/user_tasks/{id}/finishUser Task abschließen
PUT/user_tasks/{id}/reserveUser Task reservieren
DELETE/user_tasks/{id}/cancel-reservationReservierung aufheben
PUT/manual_tasks/{id}/finishManual Task abschließen
POST/messages/{name}/triggerMessage-Event auslösen
POST/signals/{name}/triggerSignal-Event auslösen
GET/flow_node_instancesFlow-Node-Instanzen abfragen
GET/data_object_instances/queryDatenobjekt-Instanzen abfragen