- Introduced compileWorkflowScripts function to parse and validate workflow scripts, supporting both linear and DAG execution modes. - Added runLinearSteps and runDagSteps functions for executing compiled workflows based on their structure. - Updated createRegistry function to utilize the new workflow compilation and execution logic. - Enhanced script sandbox with meta extraction and instantiation capabilities for better script management. - Improved API endpoints to return script metadata and handle errors more effectively. - Removed deprecated scripts and updated workflows to reflect new structure and functionality.
38 lines
908 B
YAML
38 lines
908 B
YAML
name: time and comic to ntfy
|
|
description: >
|
|
Fan-in from two scripts (current time + monkeyuser comic), then send to ntfy.
|
|
scripts:
|
|
- id: time
|
|
script: get-current-time.js
|
|
|
|
- id: comic
|
|
script: fetch-html.js
|
|
config:
|
|
url: "https://www.monkeyuser.com/"
|
|
outputVar: "httpResponse"
|
|
selector: ".comic img"
|
|
jsonata: |
|
|
{"url": "https://www.monkeyuser.com" & [attributes.src][0], "title": [attributes.title][0]}
|
|
|
|
- id: compose
|
|
script: jsonata.js
|
|
needs: [time, comic]
|
|
config:
|
|
expression: |
|
|
{"data": {
|
|
"title": comic.httpResponse.title,
|
|
"message": time.datetime & " " & comic.httpResponse.title,
|
|
"attach": comic.httpResponse.url
|
|
}}
|
|
|
|
- id: notify
|
|
script: ntfy.js
|
|
needs: [compose]
|
|
config:
|
|
url: https://ntfy.sh/scrunner
|
|
|
|
triggers:
|
|
- type: HTTP
|
|
method: POST
|
|
path: /time-and-comic
|