mirror of
https://github.com/tulir/gomuks.git
synced 2025-04-19 18:13:41 -05:00
hicli/send: add /raw command
This commit is contained in:
parent
4742ca3116
commit
ed45998248
1 changed files with 16 additions and 0 deletions
|
@ -70,6 +70,22 @@ func (h *HiClient) SendMessage(
|
||||||
relatesTo *event.RelatesTo,
|
relatesTo *event.RelatesTo,
|
||||||
mentions *event.Mentions,
|
mentions *event.Mentions,
|
||||||
) (*database.Event, error) {
|
) (*database.Event, error) {
|
||||||
|
if strings.HasPrefix(text, "/raw ") {
|
||||||
|
parts := strings.SplitN(text, " ", 3)
|
||||||
|
if len(parts) < 2 || len(parts[1]) == 0 {
|
||||||
|
return nil, fmt.Errorf("invalid /raw command")
|
||||||
|
}
|
||||||
|
var content json.RawMessage
|
||||||
|
if len(parts) == 3 {
|
||||||
|
content = json.RawMessage(parts[2])
|
||||||
|
} else {
|
||||||
|
content = json.RawMessage("{}")
|
||||||
|
}
|
||||||
|
if !json.Valid(content) {
|
||||||
|
return nil, fmt.Errorf("invalid JSON in /raw command")
|
||||||
|
}
|
||||||
|
return h.send(ctx, roomID, event.Type{Type: parts[1]}, content, "")
|
||||||
|
}
|
||||||
var content event.MessageEventContent
|
var content event.MessageEventContent
|
||||||
msgType := event.MsgText
|
msgType := event.MsgText
|
||||||
origText := text
|
origText := text
|
||||||
|
|
Loading…
Add table
Reference in a new issue