Some users (actually, it is my team member) said that it would be better to have a name parameter input (name align) for official function plugin.
I try to propose a solution for this requirement.
<img src="http://i1081.photobucket.com/albums/j352/rexrainbow1/functionnamemapping_zps3f79c6e0.png" border="0">
1. Prepare input parameter by action:set parameter which gives a string name and it's value, stores them into a {name:value} table.
2. Call function. In function plugin, put the {name:value} table into stack.
3. In trigger event, using condition: declare parameter to align name to index, and it's default value.
- The first declaration name will align to index 0
- The second declaration name will align to index 1
...
So that the function plugin will have a name to index mapping table.
And it will try to fill the passing parameter value list.
Now the plugin has a name to index mapping table, and an extended parameter value list from {name:value} table.
4. User could use name (or a number index) to get the value under cond:on function.
Source code of modified official function plugin
Capx
This changing will backward compatible for original events.
I agree that plugin maker should avoid to duplicated plguin from official one. So please consider to implement this name align feature in offical function plugin Ashley .