Get output from button

I hoped in a workaround to achieve the same effect.

My idea: a function to set the current and the new label's value (saved in global var) next in the flow is the btn node (to update the btn, with pass through on) then a gate node to the stop the flow loop only if the label isn't equal to the previous.
I tried this path but you initialize the button with "1". You press it and default value for the gate is open, so it goes to the function and it sets the current_label="1" and new_label="2"; the btn is update, as it has the pass-through on, it calls the gate current_label!=new_label the flow goes over and effect is that the button says "1", you press and the button's label changes in "7". I thought to place a delay node but a) it gets very slow and user keep pressing as anything happen in the ui; b) if a user is very slow the effect 1 to 7 happens again.