indes / flowerss-bot

A telegram bot for rss reader. 一个支持应用内阅读的 Telegram RSS Bot。
https://flowerss-bot.now.sh/
MIT License
1.83k stars 238 forks source link

增加可配置的消息模板 #25

Closed boypt closed 4 years ago

boypt commented 4 years ago

主要功能

配置文件增加以下可选选项:

配置项 含义 必填
message_tpl 推送消息的模板 可忽略
message_mode 推送消息的模板语法 可忽略,可选markdown / md(简写) / html

模板内可使用的变量

变量 说明
{{.SourceTitle}} 订阅源名称
{{.ContentTitle}} 内容标题
{{.RawLink}} 原文的链接
{{.EnableTelegraph}} 是否启用了telegraph
{{.TelegraphURL}} telegraph的URL
{{.PreviewText}} 预览的内容

消息模板使用golang标准库,可参考文档text/template

原版模板配置(Markdown语法)

message_tpl: |
    ** {{.SourceTitle}} **
    {{ if .PreviewText }}---------- Preview ----------
    {{.PreviewText}}
    -----------------------------{{- end}}
    {{if .EnableTelegraph}}{{.ContentTitle}}[Telegraph]({{.TelegraphURL}}) | [原文]({{.RawLink}})
    {{- else }}[{{.ContentTitle}}]({{.RawLink}}){{- end }}

简洁模板参考(使用了markdown的```标记实现预览)

message_tpl: >
    ** {{.SourceTitle}} **

    {{ if .PreviewText }}```

    {{.PreviewText}}

    ```{{- end}}

    {{if .EnableTelegraph}}[Telegraph]({{.TelegraphURL}}) | [原文]({{.RawLink}})
    {{- else }}[{{.ContentTitle}}]({{.RawLink}})
    {{- end }}

注意yml中的|>区别,后者需空一行才换行。可参考YAML Multiline

实际效果

image

indes commented 4 years ago

thx!