FR : Dynamic Link node enhancement request

Hi,

I would like to put a request for enhancement of Link Call Node (Dynamic call part).
If the team can put it on their backlog list - that will be swell.
(This is in line with my note on v3 Beta releases. )

  1. Make the Dynamic Link Call more extensible - in terms of the param used for name of Link node.

Current Scenario :- With current mechanism of Dynamic Link call user needs a set node before every Dynamic Link Call - to set msg.target . If the flows have multiple dynamic different calls - then before each call msg.target needs to be set.

Proposal :- When user selects dynamic target ... he can type/select the called Link In node name from any options (string/ msg attribute/ flow variable/global variable / env variable / Jsonata expression ) - with default being msg.target if no such option is selected for dynamic target.

Since anyways this is a dynamic call - all of above options can qualify. Hope i could convey my thoughts. I dont know what is such a drop down called in NR language.

This will avoid the need to set msg.target before a Dynamic Link Call. Thereby reducing nodes in a flow.

  1. Allow an option to have the Dynamic Link Call as a pass through.

We may have scenarios in a flow where based on condition - we may want to have the dynamic call will be just a pass through . The benefit here to avoid multiple - if and then conditions - before the call to dynamic link call.

This option will work in conjunction with Dynamic Link Call only.

So if user chooses dynamic Link Call + pass through option - in such scenario if the target Link In node doesn't exist - the Dynamic Link Call will not fail but move to the next node as per flow. It will act as a pass through node.

Once again Thank You for the amazing work which the NR development team is doing. Kudos to You guys.

Thank You so much.

1 Like

What you are trying to describe is to use a typedInput
image

I think this is a reasonable request - lets see what others say.


How do you see this working? Currently, if the target does not exist we raise an error. This was a deliberate design decision so that users can catch errors and not permit a msg to pass through without being "processed".


My addition...

Somewhere on the forum or github as user has requested the "link out" node have similar capability. I am pretty sure I will NOT be adding this feature BUT if we permitted the link calls timeout to be disabled, the same result could be achieved. e.g. inject -> link call -> link in -> flow to execute

Yes. This is exactly what i meant. I wasnt 100% sure of the term "typedInput". so did not mention it Thank You.

Technically (I have not gone through the code ), i would assume if passthrough is selected & dynamically called link in node not found - then instead of "throw" it would be node.send(msg) sending the msg ahead. If not selected - it continues to throw error.

If the user selects pass through - he knows he will no longer get error . If passthrough is not selected the current behavior continues. By having pass through toggle (tickbox) - you give the decision to the user.

Default behavior remains like today - error gets thrown if link in doesn't exist.

Maybe prioritize the typedInput - if bandwidth is available - and pass through can be in next iteration.

Hi @Steve-Mcl - Would you know if this will make it to the backlog list ? At least part #1.

I'm not 100% certain. However, if you were to raise a PR it would certainly stand a chance of making v3.1. otherwise, just remember to nudge me on a weekly basis :wink:

How can i raise a PR - can you share with me the process - and i will give it a shot. Thanks.

Hi Steve,

I checked the process to raise a PR and as i can make out - it needs to do a design into the internals of the code. If so - i am a bit out of depth here.

Irrespective - gentle nudge on this change.

Tx.