Open I-Dont-Remember opened 1 year ago
This could create a lot of headache in 1) having necessary packages to support it, 2) people running into issues with with their query output as variables later in Workflow - either it's too big, not in the shape they expect, etc. Needs some thought before adding.
AI is big right now - people want to use it. Make it dead simple to do so?
🧠hypothetically the Outgoing Webhook
step should be able to do this already, maybe we just need an example to show it off.
Current step hits API just fine! Issues:
secret token
just sitting in plaintext in the Headers
section of Workflow Step - that means if you export/share the Workflow, it will leak that token. Also anyone that is a collaborator would be able to see it. Not necessarily a show-stopper for now, but important to stay aware of it.Done in #41
When we get a response body from the Outgoing Webhook
step (or wherever else JSON could come from), right now we just have a variable for the raw response, but don't have a way to easily let people parse out specific variables.
This might be useful as an option in the webhook step, as well as potentially a standalone. Letting people define a JSONPATH
for a variable they want parsed out.
We are able to get creative with specifying outputs
- we do this already by changing which "Action" is happening for our Step, we just need a simple way for user to specify a variable number of variables (ha! :D) they want parsed and what they want them called.
save step
step, we define the inputs
and outputs
that will happen during execution. Users could give us JSONPath
expression and the variable name they want it called, then we can extract it and pass it as an output
.There are some Slack API methods that seem like they make sense to expose through Workflow builder - I would hope Slack will eventually get to them, but for now may as well track if we build out any as measures to bridge the gap when/if that time comes to pass.
channels:manage
scope.usergroup_id
to call usergroups.users.list()
, append our new user(s), then submit comma-separated list to usergroups.users.update()
.usergroup
by name - but then we gotta use the list endpoint and search. This then becomes 3 API calls to list & search for ID, pull current users, and update with new user.conversations.invite
. Not really a wrapper, more just a handy utility.Slack's built-in Send a message
doesn't return a ts
variable or permalink to it, so if you want to use that message, you need to search for it. Some users are using Zapier's Find message
functionality as a workaround to get the link of that recent message, but we should be able to handle it well within a Slack tool.
This would be if you have ts
, but really need the contents of the message for whatever you're doing. User has to provide the channel ID as well as the message ts - see "retrieving Slack messages with conversations.history"
Extending the already in place Wait for manual completion
step - workflow sits until some processing tool, like Zapier, has finished whatever it needs to do, then sends a webhook back to Buddy so it can continue the Slack workflow. Wouldn't need to save any state for execution, because we can require the execution_id
to come in the request. We will need to come up with a simple way to tie the incoming request to the correct Slack bot_token
, since we won't have that handled by Bolt.
⚠ _In the longer-term, we should add some sort of secret key or similar that is required to use the executionid to finish Workflow, but that would require storing state, and I'd like to keep Workflow Buddy Actions as stateless as possible.
Potential ideas seen in the wild for other automation use-cases (Zapier and n8n are good sources).
🤷♀️ = not really sure if this would be useful. Leave it here so there's a record.
complete()
until the duration has passed. The best solution for this may vary by hosting provider, or by integrating with a 3rd-party service.Send a message
built-in.1-1000
people.Send channel message(slack built-in)Send direct message(slack built-in)ts
- see "retrieving Slack messages withconversations.history
"