Skip to content

普通消息

构造普通的消息有很多种方法:

  1. dsl方式构造消息
  2. Builder构造消息
  3. operator overload(操作符重载)构造消息

DSL

kotlin
fun main() {
    val msg = messageChain {
        addText("test")
        text {
            text = "test1"
        }
        text("test2")
    }
}

你可以用上面三种添加纯文本的方式添加文本内容

Builder

kotlin
fun main() {
    val msg2 = MessageChain.Builder()
        .addText("chain add text")
        .addImage("https://example.com".toResource())
        .addImage("base64://...".toResource(base64 = true))
        .build()
}

操作符重载

kotlin
fun main() {
    val image = Image("base64://...".toResource(base64 = true))
    val text = Text("这是测试文本")
    val msg = image + text
}

合并转发消息

合并转发消息目前有两种构造方式

  1. dsl 方式构造消息
  2. Builder方式构造消息

DSL

kotlin
fun main() {
    val node = nodeMessageChain { 
        messageChain(114514) {
            text("这是测试文本")
        }
        messageChain(1919810) {
            image("https://example.com/example.png".toResource())
        }
    }
}

这里传入的1145141919810是发送者ID(QQ号)

Builder

kotlin
fun main() {
    val node = NodeMessageChain.Builder()
        .addMessageChain(messageChain {
            text("测试文本")
        }, 114514L)
        .build()
}

这里传入的114514L是这个消息发送者的ID(QQ号)

合并转发套合并转发

暂不支持

以Apache-2.0开源协议开源