From 5e9a5d4009c9e083743eca71e1dcdb6903a43980 Mon Sep 17 00:00:00 2001 From: Eyre_S Date: Sat, 29 Oct 2022 16:41:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86=20inline=20/=20twit?= =?UTF-8?q?ter=20share=20=E7=9A=84=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- book.xml | 4 +++ inline/overview.md | 3 ++ inline/share-twitter.md | 80 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 87 insertions(+) create mode 100644 inline/overview.md create mode 100644 inline/share-twitter.md diff --git a/book.xml b/book.xml index 330f6fb..dd081c9 100644 --- a/book.xml +++ b/book.xml @@ -4,4 +4,8 @@ + + + + diff --git a/inline/overview.md b/inline/overview.md new file mode 100644 index 0000000..ec7a145 --- /dev/null +++ b/inline/overview.md @@ -0,0 +1,3 @@ +# @inline_query 关于内联查询 + +**// TODO** diff --git a/inline/share-twitter.md b/inline/share-twitter.md new file mode 100644 index 0000000..b940202 --- /dev/null +++ b/inline/share-twitter.md @@ -0,0 +1,80 @@ +# Twitter 分享链接格式化 + +这个内联查询可以使输入的 twitter tweet 分享链接重新格式化为合法的 [vxtwitter][vxtwitter-home] 分享链接, +同时也会去除 twitter 分享链接会附带的跟踪参数。 + +被输出的 vxtwitter 分享链接即能够基于 telegram 自带的链接预览工具,达到分享 tweet 内容的效果。 + +## 输入 + +支持以下各种格式的 twitter 分享链接: + +- 标准的 tweet 链接 https://twitter.com/Twitter/status/1551967807428071431 +- 附带了跟踪参数的链接,例如但不限于使用 twitter 分享按钮时的默认链接 https://twitter.com/Twitter/status/1551967807428071431?s=20&t=IeYlNFDoXYi9WNk8BkJ3-A,相比于标准链接,其中 ?s=20&t=... 是跟踪参数 +- 简短的 twitter.com/Twitter/status/1551967807428071431 + - 也就是链接当中的 https:// 可以省略(如这个例子) + - 也可以是 http:// +- 以 vxtwitter/[fxtwitter][fxtwitter-home] 为域名的 https://c.vxtwitter.com/Twitter/status/1551967807428071431 链接 + - 域名 c.vxtwitter.com 或是 vxtwitter.com 或是 fxtwitter.com 都受到支援 + - 域名 www.twitter.com 也是受到支援的 + - *但域名 www.vxtwitter.com (以及带有 www.fxtwitter 都) 并不被支援* +- 带有 /photo 参数的链接也受到支援,例如 https://fxtwitter.com/Do_While02/status/1579516695320072192/photo/2/其实是来源于 [fxtwitter][fxtwitter-home]的,但这个分享工具所基于的 vxtwitter 其实并不支持 photo 参数和单图片分享 + +> (感觉写出来的就是一大坨好丑) + + + +## 输出 + +将会被格式化为 + +https://vxtwitter.com/Twitter/status/1551967807428071431 - 选项 **[tweet] Share as VxTwitter** +https://c.vxtwitter.com/Twitter/status/1551967807428071431 - 选项 **[tweet] Share as VxTwitter(combination)** + +> 关于 combination method (官方说明摘抄) : +> ***combination_method** - using c.vxtwitter as the url causes vxTwitter to combine all images in the post into one. * + +格式化输出将只会保留 Twitter/status/1551967807428071431 部分,根据选项组合域名 +https://vxtwitter.com/ 或是 +https://c.vxtwitter.com/。 + +输入中的 ?s=20&t=... 等跟踪参数(目前来说是一切参数,可以看作是 +? 之后的一切)都会被丢弃掉。 + +目前,/photo 参数尽管会在输入中被解析,但并不会被组合进结果当中,即它也是会被丢弃的参数 +同时 vxtwitter 也本来就并不支援这个参数 + +> 尽管目前,这个分享工具使用的是 vxtwitter 服务,搭配 telegram 自身的链接预览分享 tweet 内容,但 vxtwitter 所提供的 tweet 正文在遇到长文本时,会截断长文本(twitter 自身的链接预览都不会,尽管 twitter 自身的链接预览经常会获取不到预览内容)导致分享出来之后只剩下了文本摘要和一个 `...`。出于这个问题,我们也正在设计一个更好用一点的,不依赖于 vxtwitter 的分享方式。 + + + +## technic infomation + +链接解析所使用的正则表达式 : ^(?:https?://)?((?:(?:c.)?vx|fx|www.)?twitter.com)/((\w+)/status/(\d+)(?:/photo/(\d+))?)/?(\?[\w&=-]+)?$ + + + + + + + + +
vxtwitter version
inline query node info
title[tweet] Share as VxTwitter
id[morny/share/twitter/vxtwi]
cachedefault300
is_personaldefaultfalse
+ + + + + + + + +
c.vxtwitter version
inline query node info
title[tweet] Share as VxTwitter (combination)
id[morny/share/twitter/vxtwi_combine]
cachedefault300
is_personaldefaultfalse