Mercurial > hg > orthanc-book
view Sphinx/source/plugins/python/periodic-execution.py @ 1013:ab270400aae1
python: overriding core API
author | Alain Mazy <am@osimis.io> |
---|---|
date | Tue, 09 Jan 2024 11:50:17 +0100 |
parents | ba2403ebd4b7 |
children |
line wrap: on
line source
import orthanc import threading TIMER = None def Hello(): global TIMER TIMER = None orthanc.LogWarning("In Hello()") # Do stuff... TIMER = threading.Timer(1, Hello) # Re-schedule after 1 second TIMER.start() def OnChange(changeType, level, resource): if changeType == orthanc.ChangeType.ORTHANC_STARTED: orthanc.LogWarning("Starting the scheduler") Hello() elif changeType == orthanc.ChangeType.ORTHANC_STOPPED: if TIMER != None: orthanc.LogWarning("Stopping the scheduler") TIMER.cancel() orthanc.RegisterOnChangeCallback(OnChange)