Some MUCs have special adhoc commands, however while these commands do enter the _command_list_result_handler and win_handle_command_list functions, and they end up inside the cmds GSList object, somehow win_println refuses to print them to the console. I tried debugging it, but it didn't make sense to me.
What I think might be happening is that if the node attribute is a URL or contains special characters like http://prosody.im/protocol/hats#add or p1:hats#list, Profanity won't print them for reasons I don't yet understand. As far as I can see, Profanity uses the node attribute inside the item element in the adhoc commands IQ stanza as the name for the command. For simple server commands, node might be ping, however for MUC commands it's often more complex like http://prosody.im/protocol/hats#add or p1:hats#list. While running /cmd exec http://prosody.im/protocol/hats#add <muc> does work, it's not listed in /cmd list <muc> which bothers me.
Expected Behavior
The /cmd list displays the commands regardless of the complex node attribute. Perhaps internally Profanity might simplify the commands to make them less of a hurdle to type out, or even tab completion?
Current Behavior
Profanity does not list the commands despite their existence as evidenced in /xmlconsole.
Possible Solution
List the command anyway.
Simplify it to be easy to type.
Provide a menu to execute the commands in a GUI-way just like clients such as Gajim, Psi+, or Cheogram do it.
Steps to Reproduce (for bugs)
Create a MUC on an ejabberd server.
In room configuration, enable hats support.
/cmd list <muc> where <muc> is your MUC.
You won't see any commands.
Check /xmlconsole and observe how the ejabberd server did actually supply valid commands.
Context
I want to make use of MUC adhoc commands, but this makes the process of finding them very cumbersome.
Some MUCs have special adhoc commands, however while these commands do enter the
_command_list_result_handler
andwin_handle_command_list
functions, and they end up inside thecmds
GSList object, somehowwin_println
refuses to print them to the console. I tried debugging it, but it didn't make sense to me. What I think might be happening is that if thenode
attribute is a URL or contains special characters likehttp://prosody.im/protocol/hats#add
orp1:hats#list
, Profanity won't print them for reasons I don't yet understand. As far as I can see, Profanity uses thenode
attribute inside theitem
element in the adhoc commands IQ stanza as the name for the command. For simple server commands,node
might beping
, however for MUC commands it's often more complex likehttp://prosody.im/protocol/hats#add
orp1:hats#list
. While running/cmd exec http://prosody.im/protocol/hats#add <muc>
does work, it's not listed in/cmd list <muc>
which bothers me.Expected Behavior
The
/cmd list
displays the commands regardless of the complexnode
attribute. Perhaps internally Profanity might simplify the commands to make them less of a hurdle to type out, or even tab completion?Current Behavior
Profanity does not list the commands despite their existence as evidenced in
/xmlconsole
.Possible Solution
Steps to Reproduce (for bugs)
/cmd list <muc>
where<muc>
is your MUC./xmlconsole
and observe how the ejabberd server did actually supply valid commands.Context
I want to make use of MUC adhoc commands, but this makes the process of finding them very cumbersome.
Environment