跳到正文

回复纯文本 ​

直接回复文字时使用 ctx.ReplyText。先构造模板、设置引用或显式序号时,使用 message.Text 与 ctx.Reply。

共用纯文本处理函数 ​

以下函数可注册到单聊、群聊或频道消息事件。

go
package guide

import "github.com/ProgramCX/GoQQBot/shared/types"

func ReplyText(ctx *types.Context) error {
	name := "访客"
	if len(ctx.Args) > 0 {
		name = ctx.Args[0]
	}
	return ctx.ReplyText("你好," + name)
}

路由负责解析命令参数。ctx.Text() 返回去掉首尾空白的文字。需要保留空白时,读取 ctx.Message() 的 Content。

复用消息构造结果 ​

以下函数只构造消息,不发送。返回值可交给 ctx.Reply,也可在不同 goroutine 中安全复用。

go
package guide

import "github.com/ProgramCX/GoQQBot/pkg/message"

func TextResult() message.Outgoing {
	return message.Text("查询已完成,请稍后查看结果。")
}

链式方法返回独立值,不修改共享模板。

注意事项 ​

  • 读取命令参数前先检查长度。空参数列表无法读取首项。
  • 空正文或全为空白的正文不符合纯文本校验。纯文本与 Markdown、卡片等正文对象二选一。
  • 艾特和可点击命令受场景及格式限制。客户端不一定会解释普通文本里的任意标签。见文本交互。

另请参阅 ​

Markdown · 群聊发送 · 官方单聊发送 · 官方群聊发送