Documentation
¶
Index ¶
- func InferContentMsgType(content string) (msgType string, err error)
- type Content
- type ContentBuilder
- type ContentType
- type ContentTypeAudio
- type ContentTypeFile
- type ContentTypeImage
- type ContentTypeInteractive
- type ContentTypeInteractiveConfig
- type ContentTypeInteractiveElement
- type ContentTypeMedia
- type ContentTypePost
- type ContentTypePostBody
- type ContentTypePostBodyItem
- type ContentTypeShareChat
- type ContentTypeShareUser
- type ContentTypeSticker
- type ContentTypeText
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func InferContentMsgType ¶
Types ¶
type Content ¶
type Content interface { ContentType }
Content is the message content type interface.
type ContentBuilder ¶
type ContentBuilder interface { Build() (msgType, content string, err error) Text(v *ContentTypeText) ContentBuilder Post(v *ContentTypePost) ContentBuilder Image(v *ContentTypeImage) ContentBuilder Interactive(v *ContentTypeInteractive) ContentBuilder Audio(v *ContentTypeAudio) ContentBuilder Media(v *ContentTypeMedia) ContentBuilder File(v *ContentTypeFile) ContentBuilder Sticker(v *ContentTypeSticker) ContentBuilder }
func NewContent ¶
func NewContent() ContentBuilder
type ContentType ¶
type ContentType interface { ContentTypeText | ContentTypePost | ContentTypeImage | ContentTypeInteractive | ContentTypeShareChat | ContentTypeShareUser | ContentTypeAudio | ContentTypeMedia | ContentTypeFile | ContentTypeSticker }
ContentType is the message content type interface.
type ContentTypeAudio ¶
type ContentTypeAudio struct {
FileKey string `json:"file_key"`
}
docs: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/im-v1/message/create_json#5d353271
type ContentTypeFile ¶
type ContentTypeFile struct {
FileKey string `json:"file_key"`
}
docs: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/im-v1/message/create_json#c92e6d46
type ContentTypeImage ¶
type ContentTypeImage struct {
ImageKey string `json:"image_key"`
}
docs: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/im-v1/message/create_json#7111df05
type ContentTypeInteractive ¶
type ContentTypeInteractive struct { Config ContentTypeInteractiveConfig `json:"config"` Elements []ContentTypeInteractiveElement `json:"elements"` }
docs:
type ContentTypeInteractiveElement ¶
type ContentTypeInteractiveElement struct { Tag string `json:"tag"` Content string `json:"content"` Href struct { UrlVal struct { Url string `json:"url"` } `json:"urlVal"` } `json:"href"` At struct { Content string `json:"content"` Tag string `json:"tag"` } `json:"at"` ImgKey string `json:"img_key"` Extra struct { Alt struct { Content string `json:"content"` Tag string `json:"tag"` } `json:"alt"` ImgKey string `json:"img_key"` Tag string `json:"tag"` } `json:"extra"` Text struct { Content string `json:"content"` Tag string `json:"tag"` } `json:"text"` Actions []struct { Tag string `json:"tag"` Text struct { Content string `json:"content"` Tag string `json:"tag"` } `json:"text"` Type string `json:"type"` Url string `json:"url"` } `json:"actions"` Elements []struct { Content string `json:"content"` Tag string `json:"tag"` } `json:"elements"` }
type ContentTypeMedia ¶
type ContentTypeMedia struct { FileKey string `json:"file_key"` ImageKey string `json:"image_key"` }
docs: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/im-v1/message/create_json#54406d84
type ContentTypePost ¶
type ContentTypePost struct { ZhCN *ContentTypePostBody `json:"zh_cn,omitempty"` EnUS *ContentTypePostBody `json:"en_us,omitempty"` }
docs: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/im-v1/message/create_json#45e0953e
type ContentTypePostBody ¶
type ContentTypePostBody struct { Title string `json:"title,omitempty"` Content [][]ContentTypePostBodyItem `json:"content,omitempty"` }
type ContentTypePostBodyItem ¶
type ContentTypePostBodyItem struct { // text | a | at | img Tag string `json:"tag"` // tag = text and a Text string `json:"text,omitempty"` UnEscape bool `json:"unescape,omitempty"` // tag = a Href string `json:"href,omitempty"` // tag = at UserID string `json:"user_id,omitempty"` UserName string `json:"user_name,omitempty"` // tag = img | media ImageKey string `json:"image_key,omitempty"` // tag = media FileKey string `json:"file_key,omitempty"` // tag = emotion EmojiType string `json:"emoji_type,omitempty"` }
type ContentTypeShareChat ¶
type ContentTypeShareChat struct {
}docs: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/im-v1/message/create_json#55c61488
type ContentTypeShareUser ¶
type ContentTypeShareUser struct {
}docs: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/im-v1/message/create_json#38563ae5
type ContentTypeSticker ¶
type ContentTypeSticker struct {
FileKey string `json:"file_key"`
}
docs: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/im-v1/message/create_json#7215e4f6
type ContentTypeText ¶
type ContentTypeText struct {
Text string `json:"text"`
}
docs: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/im-v1/message/create_json#c9e08671