Skip to content

Commit d7f0f2b

Browse files
authored
Update larkim.MessageText
1 parent d83e37d commit d7f0f2b

File tree

1 file changed

+16
-24
lines changed

1 file changed

+16
-24
lines changed

service/im/v1/ext_model.go

Lines changed: 16 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -229,58 +229,50 @@ type P1MessageReceiveV1Data struct {
229229
text类型消息结构化
230230
*/
231231
type MessageText struct {
232-
builder strings.Builder
232+
Text_ string `json:"text,omitempty"`
233233
}
234234

235235
func NewTextMsgBuilder() *MessageText {
236-
m := &MessageText{}
237-
m.builder.WriteString("{\"text\":\"")
238-
return m
236+
return NewMessageTextBuilder()
239237
}
240238

241239
func NewMessageTextBuilder() *MessageText {
242-
m := &MessageText{}
243-
m.builder.WriteString("{\"text\":\"")
244-
return m
240+
return &MessageText{}
245241
}
246242

247243
func (t *MessageText) Text(text string) *MessageText {
248-
t.builder.WriteString(text)
244+
t.Text_ += text
249245
return t
250246
}
251247

252248
func (t *MessageText) TextLine(text string) *MessageText {
253-
t.builder.WriteString(text)
254-
t.builder.WriteString("\\n")
249+
t.Text_ += text + "\n"
255250
return t
256251
}
257252

258253
func (t *MessageText) Line() *MessageText {
259-
t.builder.WriteString("\\n")
254+
t.Text_ += "\n"
260255
return t
261256
}
262257

263258
func (t *MessageText) AtUser(userId, name string) *MessageText {
264-
t.builder.WriteString("<at user_id=\\\"")
265-
t.builder.WriteString(userId)
266-
t.builder.WriteString("\\\">")
267-
t.builder.WriteString(name)
268-
t.builder.WriteString("</at>")
269-
return t
259+
t.Text_ += fmt.Sprintf("<at user_id=\"%s\">%s</at>", userId, name)
270260
return t
271261
}
272262

273263
func (t *MessageText) AtAll() *MessageText {
274-
t.builder.WriteString("<at user_id=\\\"all\\\">")
275-
t.builder.WriteString("</at>")
276-
return t
264+
return t.AtUser("all", "")
277265
}
278266

279-
func (t *MessageText) Build() string {
280-
t.builder.WriteString("\"}")
281-
return t.builder.String()
267+
func (t *MessageText) Build() (string, error) {
268+
bs, err := json.Marshal(t)
269+
if err != nil {
270+
return "", err
271+
}
272+
return string(bs), nil
282273
}
283274

275+
284276
/**
285277
post类型消息结构化
286278
**/
@@ -300,7 +292,7 @@ func (m *MessagePost) EnUs(enUs *MessagePostContent) *MessagePost {
300292
return m
301293
}
302294

303-
func (m *MessagePost) JaJs(jaJp *MessagePostContent) *MessagePost {
295+
func (m *MessagePost) JaJp(jaJp *MessagePostContent) *MessagePost {
304296
m.JaJP = jaJp
305297
return m
306298
}

0 commit comments

Comments
 (0)