How can I make a custom node to create widget+event?

So, I have a dialogue system, but every time I want to use it, I need to create the widget->Add it to the viewport->Execute the custom event
http://prntscr.com/o1vefw

So, I want to make a plugin to add a custom blueprint node which automatically do all these 3 things with a single node, instead of having to add 3 nodes for a single function. How should I do it? Are there better ways? I know, I could collapse the nodes or turn them into a function, but I want to make them usable in every actor of the game I want.

Then create start dialog in somewhere global like game mode where they can referenced easily from anywhere. You can make blueprint function library (in blueprint not C++) or macro library that will deal with frequent casting.

Thank you a lot! With the blueprint function library I can make what I needed without C++ involved.