+(defun murk-command-me (params)
+ (let* ((ctx (murk-current-context))
+ (network (murk-context-network ctx)))
+ (if (and ctx (not (murk-network-context-p ctx)))
+ (if params
+ (let* ((channel (murk-context-channel ctx))
+ (my-nick (murk-connection-nick network))
+ (action (string-join params " "))
+ (ctcp-text (concat "\01ACTION " action "\01")))
+ (murk-send-msg network
+ (murk-msg nil nil "PRIVMSG"
+ (list channel ctcp-text)))
+ (murk-display-action network my-nick channel action))
+ (murk-display-notice nil "Usage: /me <action>"))
+ (murk-display-notice nil "No current channel."))))
+
+(defun murk-command-version (params)
+ (let ((ctx (murk-current-context)))
+ (if ctx
+ (if params
+ (let ((network (murk-context-network ctx))
+ (nick (car params)))
+ (murk-send-msg network
+ (murk-msg nil nil "PRIVMSG"
+ (list nick "\01VERSION\01")))
+ (murk-display-notice ctx "CTCP version request sent to "
+ nick " on " network))
+ (murk-display-notice ctx "Usage: /version <nick>"))
+ (murk-display-notice nil "No current channel."))))
+
+(defun murk-command-users (_params)
+ (let ((ctx (murk-current-context)))
+ (if (and ctx (not (murk-network-context-p ctx)))
+ (let ((channel (murk-context-channel ctx))
+ (network (murk-context-network ctx))
+ (users (murk-context-users ctx)))
+ (murk-display-notice ctx "Users in " channel " on " network ":")
+ (murk-display-notice ctx (string-join users " ")))
+ (murk-display-notice nil "No current channel."))))
+
+