Commit graph

94 commits

Author SHA1 Message Date
Sipke Schoorstra 67efc51ebb
Update Dial activity and fix Switch (#3753)
* Add GetCallStatus activity

* Update Dial activity

* Update Switch activity

* Fix missing ports
2023-03-02 10:37:16 +01:00
Sipke Schoorstra d2d7f23d73
Fix deadlock + multiple trigger support (#3720)
* Lock on specific hash for new workflows and split between trigger new /& existing workflows

* Update flowchart to take into account the triggered activity to start

* Use dispatcher for resuming parent workflows

* Update logging middleware (and remove it by default)
2023-02-20 12:05:57 +01:00
Sipke Schoorstra 50912a2762 Fix journal 2023-02-13 15:26:04 +01:00
Sipke Schoorstra 2a2b739568 Update activity categories 2023-02-06 17:32:35 +01:00
Sipke Schoorstra 0dd3e2bad8
Tweaks and fixes (#3672)
* Various additions and tweaks

* Fix WriteHttpResponse when no content type provided

* Bump designer version

* Return when sending response

* Remove faulty validation
2023-02-03 14:29:44 +01:00
gurkanguran 407bfa6913
Use workflow definition as activity (#3654)
* Implemented usage of workflow definitions as activities

* Updated designer

* Removed activity definitions module

* Allow user to mark workflow to be used as activity

* Refactor

* Refactor

* Cleanup csproj

* Cleanup WorkflowDefinitionActivity

* Pascalize typename

* Fix JS intellisense initial load issue

* Add XML comments

* Add Jobs dependency

* Hide Composite root port from designer

* Move finding workflow activities logic to lower level

* Generate unique identities across hierarchy

* Refactor

* Revert "Generate unique identities across hierarchy"

This reverts commit 74f5e7830309ee76af6ab3a000a5e1ec41f1e90c.

* Implement unique node IDs

* Introduce new VersionOptions option

* Remove unused namespaces

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-01-28 00:36:03 +01:00
Sipke Schoorstra 0caa4c3c49 Add XML comments to ForEach<T> 2023-01-23 15:58:49 +01:00
Sipke Schoorstra 354781e193 Rename Activity to CodeActivity and ActivityBase to Activity 2023-01-19 21:49:24 +01:00
Sipke Schoorstra 0f350a0359 Remove unused namespaces in Elsa.Workflows.Core 2023-01-17 12:23:06 +01:00
Sipke Schoorstra 750c2094cc
RunTask activity (#3594)
* Implement RunTask activity
2023-01-04 20:36:38 +01:00
Sipke Schoorstra b4dba6ffe5
Add PublishEvent activity and implement MassTransit dispatcher (#3593) 2023-01-04 15:28:28 +01:00
Sipke Schoorstra ebf693b33b Add icons and reorganize activity categories 2023-01-03 20:28:57 +01:00
Sipke Schoorstra cbbac57e6f
Implement variables panel on workflow instance viewer (#3589)
* Small visual improvement for embedded ports

* Implement variables view for workflow instance viewer
2023-01-03 19:15:05 +01:00
Sipke Schoorstra 06e62b3bcc
Restore workflow journal (#3582)
* Refactor identity options

* Delete templates

Will be created as part of a separate repo.

* Little cleanup

* Increase token lifetime for reference server app

* Cleanup workflow definition editor plugin

* Fix workflow instance viewer component

* Update identity generator to use hyphen format

* Improve workflow and activity execution pipeline registration API

* Fix workflow journal

* Update backend

* Prevent unnecessary re-render

* Restore autolayout function
2023-01-02 22:24:05 +01:00
Sipke Schoorstra 7a98cdf60d
Normalize extensions namespaces (#3577) 2022-12-31 16:16:43 +01:00
Sipke Schoorstra 9f9c20f553
Add support for workflows as a function (#3569)
* Add support for converting lists of things

* Add support for workflows returning a result

* Formatting

* Fix that While would complete twice

* Add convenience methods to access workflow input

* Schedule the workflow itself instead of just its root

* Add Output dictionary to workflow execution context

* Ad samples to demonstrate workflows returning results
2022-12-28 13:59:46 +01:00
Sipke Schoorstra c97457deea Cleanup 2022-12-26 18:38:41 +01:00
Sipke Schoorstra 65e7009e56 Implement Fault model 2022-12-26 18:37:29 +01:00
Sipke Schoorstra 8ac225520b
Improve variable vs non-variable persistence (#3568)
* Incremental fixes

* Fix base assignment of async delegate block reference

* Reuse existing memory blocks

* Remove PlaybackStarted child activity

The PlaybackStarted property is unnecessary, since the PlayAudio activity already completes right after playback has started.

* Add GetCallStatus API method

* Prevent variables on composite activities to be overwritten during deserialization

* Remove unnecessary variable declarations

Activity variables will be declared automatically during activity invocation.

* Add XML comments

* Remove unused references arg

* Streamline variable identity assignment

* Fix composite early exit completion

* Move identity assignment to workflow definition service
2022-12-25 22:02:28 +01:00
Sipke Schoorstra 24692586a5
Persistent variables (#3563)
* Stash

* Incremental work on persistent variables

* Move variable management to central service

* Implement variable cleanup upon composite activity completion
2022-12-23 16:05:37 +01:00
Sipke Schoorstra 193af7d9c8 Rename From to Inline 2022-12-21 19:55:07 +01:00
Sipke Schoorstra 97b4966233
Workflow activation strategies (#3559)
* Implement workflow activation strategies

* Rename activation strategy API

* Rename workflow activation strategy API and implement dynamic description display

* Fix trigger workflow correlation

* Expose correlation ID from liquid

* Update workflow runtimes to invoke activation strategies

* Update workflow definition builder API with support for activation strategies
2022-12-21 19:36:40 +01:00
Sipke Schoorstra 5f7f115c28 Fix Flowscope execution count logic 2022-12-16 22:02:19 +01:00
Sipke Schoorstra bc0bca2f51 Fix flowchart property storage 2022-12-16 21:09:14 +01:00
Sipke Schoorstra 764cd6187b
Fix workflow navigation (#3541)
* Incremental work

* Reimplement flowchart navigation

* Fix activity property editing

* Fix workflow property editor

* Fix designer lookup upon new activity added

* Restore Variables context

* Add Start event

* Add XML comments to WriteLine

* Implement variable getter and setters for JS
2022-12-15 22:53:56 +01:00
cristinamudura bb9ebef362
Added correlation activity (#3530)
* Added correlation activity

* Changed the category from "Control Flow" to "Primitives"
2022-12-14 13:05:45 +01:00
Sipke Schoorstra 3d4718ff76 Rename From to Inline 2022-12-11 22:34:24 +01:00
Sipke Schoorstra be3fda8acb Remove experimental fork break 2022-12-11 22:15:42 +01:00
Sipke Schoorstra fcc548e645 Refactor Event ctors 2022-12-11 22:15:28 +01:00
Sipke Schoorstra 95025ae144 Fix serialization for Event by making default ctor public 2022-12-09 12:50:14 +01:00
Sipke Schoorstra 17ff2d2c93 Apply [JsonConstructor] to fix deserialization 2022-12-09 12:26:07 +01:00
Sipke Schoorstra 272d6f03a7 Fix tests 2022-12-07 21:05:24 +01:00
Sipke Schoorstra 026430fd2d
Composite Activity fixes and improvements (#3512)
* Implement consistent input/output/variable memory block identifiers

* Telnyx fixes and improvements

* Fix bookmark burning

* Refactor AnswerCall

* Incremental work on source + line registration

* Handle missing bookmarks

* Fix bookmark persisted callback mechanism

* Implement distributed locking for default workflow runtime

* Fix recording bookmark

* Increase source file and line coverage
2022-12-07 20:47:36 +01:00
Sipke Schoorstra c70247e133 Fix memory referencing and some other stuff 2022-12-02 22:57:26 +01:00
Sipke Schoorstra 2ce5b34b70 Add support for Complete activity serialization using default ctor 2022-12-01 22:25:41 +01:00
Sipke Schoorstra 269627adf1 Fix If completion 2022-11-30 11:45:48 +01:00
Sipke Schoorstra 1cfe7b4181 Fix that composite roots were serialized 2022-11-28 21:34:49 +01:00
Sipke Schoorstra 4aa9f382ab Hide Root from being visible 2022-11-27 22:02:00 +01:00
Sipke Schoorstra 2876bb65bc Add FlowNode activity 2022-11-24 16:03:35 +01:00
Sipke Schoorstra 2567eb6535 Implement variable picker 2022-11-23 22:36:43 +01:00
Sipke Schoorstra 8a4e219e07 Minor renaming 2022-11-23 11:20:35 +01:00
Sipke Schoorstra 2df0dab39f Fix result propagation for Inline activity 2022-11-22 13:09:32 +01:00
Sipke Schoorstra 9981dc1f10 Add Complete activity for completing composite activities 2022-11-22 13:09:14 +01:00
Sipke Schoorstra be3e7ac707 Update Composite and remove completion callback 2022-11-22 12:36:32 +01:00
Sipke Schoorstra 03eba3f6ad Incremental work on composite activity completion 2022-11-21 22:49:11 +01:00
Sipke Schoorstra e40b987446 Small API improvements 2022-11-21 22:01:52 +01:00
Sipke Schoorstra 9dcae97a0e Add support for lazy initialization of output 2022-11-20 20:37:56 +01:00
Sipke Schoorstra 8cc8d1bcbf
Telnyx integration (#3453)
* Incremental work on Telnyx integration

* Incremental port of Telnyx activities

* Fix polymorphic JSON serialization for webhook data

* Fix IsFirstPass logic

* Fix trigger base to prevent activity auto completion

* Temporarily disable persistent snapshotting provider for testing

* Fix namespaces

* Add method to register activities in bulk using marker type

* Fix Telnyx refit client setup

* Register all Telnyx activities by default

* Incremental work on webhook driven resumption and correlation

* Incremental work on post-bookmark signaling

* Fix bookmark resolution

* Include correlation ID with bookmark

* Fix Telnyx resumption input

* Replace bookmark persisted signal with handler

* Fix SpeakText completion

* Add flow outcomes to SpeakText activity

* Update GatherUsingSpeak and GatherUsingaudio

* Refactor "is first pass" concept

* Fix WebhookEvent activity

* Add HTTP absolute URL provider

* Formatting and small changes

* Various API enhancements
2022-11-19 22:30:43 +01:00
Sipke Schoorstra 6947f45693 Remove unused namespaces 2022-11-13 12:45:34 +01:00
Sipke Schoorstra 7dd7e14745 Remove unused namespaces 2022-11-12 22:03:05 +01:00