You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: admin_manual/configuration_server/email_configuration.rst
+1
Original file line number
Diff line number
Diff line change
@@ -43,6 +43,7 @@ connect Nextcloud to a remote SMTP server:
43
43
44
44
* STARTTLS cannot be enforced. It will be used automatically if the mail server supports it. The encryption type should be set to 'None/STARTTLS' in this case. See :ref:`here<TLSPeerVerification>` for an example on how to configure self signed certificates.
45
45
* NTLM authentication for Microsoft Exchange is not supported by the new mailer library. Try using `basic authentication <https://learn.microsoft.com/en-us/exchange/client-developer/exchange-web-services/authentication-and-ews-in-exchange#basic-authentication>`_ instead.
46
+
* Outlook and Microsoft Exchange have discontinued support for Basic authentication. It is no longer possible to use their services as your default email handler.
Copy file name to clipboardexpand all lines: admin_manual/windmill_workflows/index.rst
+44-10
Original file line number
Diff line number
Diff line change
@@ -20,7 +20,10 @@ Installation
20
20
Selecting the right Workspace
21
21
-----------------------------
22
22
23
-
With Windmill installed as an ExApp, the first time one visits Windmill's web interface, make sure to select the right workspace on the first run: Only the pre-existing "nextcloud" workspace is hooked up to nextcloud's internal event system, all other workspaces will need manual webhook setups for each workflow.
23
+
With Windmill installed as an ExApp, the first time one visits Windmill's web interface,
24
+
make sure to select the right workspace on the first run:
25
+
Only the pre-existing "nextcloud" workspace is hooked up to nextcloud's internal event system,
26
+
all other workspaces will need manual webhook setups for each workflow.
24
27
If the wrong workspace is selected on the first run, it is always possible to switch workspace later in the left sidebar.
@@ -34,7 +37,11 @@ If you wish to change to a different workspace at a later time, you can do so vi
34
37
Building a workflow
35
38
-------------------
36
39
37
-
Each workflow in Windmill is a listener to a Nextcloud Webhook Event. If you are using the ExApp-packaged Windmill, it will automatically register webhooks for the workflows you build using the following mechanism. If you are not using the ExApp-packaged windmill install then you will have to register webhooks for your workflows manually via the webhook_listeners API: see https://docs.nextcloud.com/server/latest/developer_manual/_static/openapi.html#/operations/webhook_listeners-webhooks-index
40
+
Each workflow in Windmill is a listener to a Nextcloud Webhook Event.
41
+
If you are using the ExApp-packaged Windmill, it will automatically register webhooks for the workflows you build using the following mechanism.
42
+
If you are not using the ExApp-packaged windmill install then you will have to register
43
+
webhooks for your workflows manually via the webhook_listeners API:
44
+
see https://docs.nextcloud.com/server/latest/developer_manual/_static/openapi.html#/operations/webhook_listeners-webhooks-index
38
45
39
46
The magic listener script
40
47
~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -52,32 +59,59 @@ Nextcloud Scripts
52
59
-----------------
53
60
54
61
Nextcloud makes available a variety of scripts to be used in Windmill for interfacing with Nextcloud apps. You can find them
55
-
at https://hub.windmill.dev/integrations/nextcloud and https://hub.windmill.dev/integrations/nextcloud/approvals or in your windmill instance when selecting existing scripts for creating a new workflow.
62
+
at https://hub.windmill.dev/integrations/nextcloud and https://hub.windmill.dev/integrations/nextcloud/approvals
63
+
or in your windmill instance when selecting existing scripts for creating a new workflow.
64
+
65
+
To synchronize the scripts with the ones provided by the Windmill hub,
66
+
you can run a flow named "Synchronize Hub Resource types with instance" in the Windmill admin workspace.
67
+
68
+
You can create your own Nextcloud-related scripts by taking one of the existing ones as example.
69
+
In a script, when sending a request to Nextcloud, make sure that the ``EX-APP-ID`` header is set to ``flow``.
70
+
71
+
All the scripts we provide have a set of common input parameters:
72
+
73
+
* nextcloudResource: This should be set to the path of the Windmill resource that was automatically created and contains what is necessary to authenticate against Nextcloud with the AppAPI authentication method. For example "u/wapp_user/appapi_nextcloud". You can find this path by looking at the resource list in Windmill.
74
+
* userId: This is the ID of the user you want the request to be authenticated as.
75
+
* useAppApiAuth: This is a boolean to choose between using the AppAPI authentication or basic auth. More details in the next section.
56
76
57
77
Authentication
58
78
~~~~~~~~~~~~~~
59
79
60
-
All bricks have the option to use "AppAPI Authentication" or normal authentication using a Nextcloud resource in Windmill. When using normal authentication you will need to provide the correct password or app password of the user on behalf of whom you want to execute the script. When using "AppAPI Authentication" you can impersonate any Nextcloud user. This will only work when using the ExApp-packaged version of windmill.
80
+
All bricks have the option to use "AppAPI Authentication" or normal authentication using a Nextcloud resource in Windmill.
81
+
When using normal authentication you will need to provide the correct password or app password of the user
82
+
on behalf of whom you want to execute the script. When using "AppAPI Authentication" you can impersonate any Nextcloud user.
83
+
This will only work when using the ExApp-packaged version of windmill.
61
84
62
85
Passing values between blocks
63
86
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
64
87
65
88
When specifying script inputs you can either fill the parameters with static values or make references to the workflow input and the previous workflow steps.
66
89
67
-
In order to reference the workflow input, use the ``flow_input`` variable. For example, ``flow_input.event.form.hash`` will reference the hash of a form from a nextcloud Forms event.
90
+
In order to reference the workflow input, use the ``flow_input`` variable.
91
+
For example, ``flow_input.event.form.hash`` will reference the hash of a form from a nextcloud Forms event.
68
92
69
-
Each step in a workflow is automatically assigned a letter identifier. In order to reference results from previous steps in your parameters, use the ``results`` variable with the id of the step to reference as a sub property. For example, use ``results.e.submission.answers`` to use the answers of of a form submission retrieved via the "Get form submission from Nextcloud Forms" script identified with the letter "e".
93
+
Each step in a workflow is automatically assigned a letter identifier.
94
+
In order to reference results from previous steps in your parameters, use the ``results`` variable with the id of the step
95
+
to reference as a sub property. For example, use ``results.e.submission.answers`` to use the answers of of a form submission
96
+
retrieved via the "Get form submission from Nextcloud Forms" script identified with the letter "e".
70
97
71
98
Approval/Suspend steps
72
99
~~~~~~~~~~~~~~~~~~~~~~
73
100
74
-
Windmill allows using so-called approval steps, which are essentially asynchronous scripts that wait for the call to an additional webhook URL. The most prominent use case for this are approval workflows where you get automated input from somewhere which needs to be approved by a human. Once the human approves or disapproves by triggering the webhook URL the workflow will resume.
101
+
Windmill allows using so-called approval steps, which are essentially asynchronous scripts that wait for the call to an additional webhook URL.
102
+
The most prominent use case for this are approval workflows where you get automated input from somewhere which needs to be approved by a human.
103
+
Once the human approves or disapproves by triggering the webhook URL the workflow will resume.
75
104
76
-
In order to turn a newly added step into an approval step, the workflow edit screen, select the script and in the bottom right pan, go in the "Advanced" tab, "Suspend" sub tab and check "Suspend/Approval/Prompt".
105
+
In order to turn a newly added step into an approval step, the workflow edit screen,
106
+
select the script and in the bottom right pan, go in the "Advanced" tab, "Suspend" sub tab and check "Suspend/Approval/Prompt".
:alt:Screenshot of the workspace edit screen to turn a normal step into an Approval step
80
110
81
-
Using the scripts provided for Nextcloud, you can send approval links to the humans in charge of approving via Nextcloud Talk or a simple notification in Nextcloud. Of course, you may also use any of the other scripts for sending messages available in the Windmill hub.
111
+
Using the scripts provided for Nextcloud, you can send approval links to the humans in charge of approving
112
+
via Nextcloud Talk or a simple notification in Nextcloud.
113
+
Of course, you may also use any of the other scripts for sending messages available in the Windmill hub.
82
114
83
-
Windmill has a default approval user interface at a specific URL, but it is not very nice. We recommend using the `approve_links <https://apps.nextcloud.com/apps/approve_links>`_ app which allows creating a beautiful temporary approval page with a custom message and approve and disapprove buttons.
115
+
Windmill has a default approval user interface at a specific URL, but it looks very technical.
116
+
We recommend using the `approve_links <https://apps.nextcloud.com/apps/approve_links>`_ app
117
+
which allows creating a beautiful temporary approval page with a custom message and approve and disapprove buttons.
.. warning:: If the owner renames a shared file or folder, the new name will not be reflected on the recipient's side. This is needed to prevent overwriting existing files or folders on the recipient's end.
0 commit comments