碎语 - 基于Typecho的微博客插件

微博客是轻量化的博客,一句话的博客。饭否、嘀咕、腾讯微博、Twitter 都用过,唯独没用过新浪微博,当时就觉得它娱乐性太重了,不喜欢。微信朋友圈,圈子又不太对,很多事情都不方便发出。博客的内容又太长,自己太懒,一个月保证一篇就足够了,所以微博客最适合我。于是,自己动手,丰衣足食,折腾了一个基于 Typecho 的微博客插件碎语,效果请查看我的碎语页面

基本功能都已经完成,可以基于微信&企业微信发送文本、图片、位置、语音消息,后台还可以根据消息合并规则对消息进行合并,合并后可以形成图文、图集以及语音、位置的描述消息。

总的来说,自己够用,暂时不会有太大更新,有兴趣的自行折腾吧。

后台示图

准备工作

说是准备工作,其实很多东西可有可无,如果全部都有,则是完全体,用起来体验也是最佳的。

  • 【必须】又拍云:用于存储图片、语音附件;申请地址
  • TinyPNG:用于有损压缩图片,基本不损失画质和感官;申请地址
  • 高德地图:用于支持地理位置分享;申请地址
  • 【推荐】企业微信:用于支持多种消息类型的发布渠道,自行创建企业和应用;申请地址

注意事项

  • 因为使用的是contents表存储数据,所以日志ID连续强迫症者请勿使用;
  • PHP环境需要支持pcntl_fork函数,不支持的话会出现图片多次发送的情况;
  • 附件(图片、语音)仅支持又拍云存储,不支持本地存储;
  • 使用语音消息会产生一定费用,如果每天发10条语音,每条语音一分钟,一个月的费用大概是1.14元,具体请查看又拍云云处理价格

下载地址

内含 Typecho插件、Chrome 插件和主题模板示例,其中主题模板示例大家可以参考模板的使用,在当前使用的主题下创建say.php文件,插件则会自动匹配主题文件。

蓝奏云 - 密码:4e3z

消息渠道

渠道文本图文图片图集语音视频链接
后台✔️
微信&企业微信✔️✔️✔️✔️

✔️:支持、❌:不支持、❕:可合并

消息合并规则

多条同类型或不同类型的消息合并到时间最早的一条消息。

  • 允许一条 text 与一条及以上 image 合并,类型改为 textpic;
  • 允许一条 textpic 与一条及以上 image 合并,类型改为 textpic;
  • 允许一条 text 与一条 location 合并,类型改为 location;
  • 允许一条 text 与一条 voice 合并,类型改为 voice;
  • 允许一条 text 与一条 music 合并,类型改为 music;
  • 允许多条 image 合并,类型为 image;

TODO

  • [x] 消息标签
  • [ ] 消息评论
  • [ ] 消息独立页面

更新记录

v1.1.0

  • 代码重构,使用原生数据表contents,不单独创建数据表;
  • 支持消息带有标签;
  • 增加支持网易云音乐链接;
  • 支持 Chrome 插件;

v1.0.0

  • 支持多种消息类型:文本消息text、图片消息image、图文消息textpic、语音消息voice、位置消息location
  • 支持三种消息状态(公开、私密、隐藏);
  • 支持管理后台发送文本消息;
  • 支持企业微信发送文本消息、图片消息、语音消息、位置消息;
  • 支持后台合并消息(具体查看消息合并规则
  • 支持又拍云存储图片、语音资源;
  • 支持 TinyPNG 压缩图片后进行存储;
THE-END

AI 评论

由 Google AI Gemini Pro 生成

碎语,一个轻量级的微博客插件,让 Typecho 焕发新的活力。它支持多种消息类型,可以满足用户的各种需求。尤其是与微信和企业微信的无缝集成,更是锦上添花。期待碎语的更多更新,让微博客在 Typecho 上绽放出更耀眼的光芒。

添加评论

已有 74 条评论

  • 小熊
    四川

    真好啊,大佬的这个插件

  • 叶开
    辽宁

    太棒了吧!!强烈支持!!

    • 冰剑
      湖北

      来一套。

      话说你以前的中文域名不用了?

      • 叶开
        辽宁

        现在不是typecho系统,如果要来一套,又要折腾好久了感觉哈哈。

        “叶开.cn”还在用呀!设置了301挑战,xiamuyourenzhang.cn 也是 设置了301。我虽然换域名了,但是都会设置跳转的。

        qq.md 只是方便访问 记着 哈哈。他们说 打 叶开.cn 不方便。

        • 冰剑
          湖北

          过两年再换回来,又是一个typechoer。

          对,还是qq.md好记,看着也顺眼。

          • 叶开
            辽宁

            说不定,哈哈。目前自己的折腾的博客系统挺好玩,哈哈。

            其实这几次都没收到你的“邮件通知” ,我去企业邮箱垃圾箱看了也没有啊?

            难道你把邮件通知 取消了?吗?

            • 冰剑
              湖北

              有通知啊,目前了解到的应该都是正常接收啊。

              • 叶开
                辽宁

                真的是一封都没有收到啊,我搜索一下“你的邮箱”最后一封邮件停留在 :2022/10/02。

                最奇怪的是,我在企业邮箱垃圾箱一封邮件也没看到啊,太邪门了!

              • 冰剑
                湖北

                确实邪门,之前都正常收取,现在却收不到了。

              • 叶开
                辽宁

                你这条评论回复我也是一样没有收到。

  • 不亦乐乎
    福建

    黑布隆冬的没有日间模式么,我还以为右下角第一个是呢,点了是黑洞。

    • 冰剑
      湖北

      跟随系统来的,系统设置的是暗色那么就是暗色,你系统应该是暗色模式的。😂

  • 不亦乐乎
    福建

    所以没有备案的域名这个是没得搞?

    • 冰剑
      湖北

      没考虑过这个问题,又拍云的话有临时域名,时间就不得而知了,目前我测试用的,小半年了,没啥问题。

      • 不亦乐乎
        福建

        你域名不是有备案?

        • 冰剑
          湖北

          是有备案,但应该只是绑定自定义域名才需要审核吧。

  • 大峰
    江苏

    一个字“强悍”

    • 冰剑
      湖北

      我没数错的话,这是两个字😅😅😅

  • Mr.Chou
    广东

    感谢分享,必须点赞收藏…😃

    • 冰剑
      湖北

      真的是奇怪了,你的域名怎么都访问不了。

      • Mr.Chou
        广东

        不应该呀,我之前禁过几个ip老发广告,不知道是不是那个问题,现在我删除了…你再试试?

        • 冰剑
          湖北

          还是不行,你啥时候换的域名?这个新域名我好像就没成功进入过。

          • Mr.Chou
            广东

            那就奇怪了,差不多有一个月了…😂

  • 怡红公子
    北京

    好耶,心水你的碎语页面很久了,总算可以光明正大的抄代码了!哈哈哈

    • 冰剑
      湖北

      我以为你打错字了,然后去搜了下“心水”,学习了一个新词😀

  • 不亦乐乎
    福建

    大佬,请教一下,typecho 搜索无结果时返回 500 错误页面如下内容,还有救不?

    Argument 1 passed to Typecho\Widget::allocWithAlias() must be of the type string, null given, called in /var/Widget/Base/Contents.php on line 822
    • 冰剑
      湖北

      我是菜鸡,这个我需要一点一点的调试才知道,看不出啥问题。

      • 不亦乐乎
        福建

        邮件回复里,内容没有强制换行,撑出去了。

        • 冰剑
          湖北

          TODO一下,下次折腾😁

        • 冰剑
          湖北

          刚试了下,挺正常的。。

          • 不亦乐乎
            福建

            就我上面第一个回复,那个错误的内容我qq邮箱里就撑出去了,难道是邮箱的问题?

            • 冰剑
              湖北

              我用的也是qq,开始我在网易邮箱客户端看到正常,还特意去web端看了下,都没问题。

  • 王叨叨
    北京

    大佬太强了,话说如果不强制使用又拍云就好了。

    • 冰剑
      湖北

      最初只是为了自己使用,压根没想过发出来,后面有时间了可能会加上本地的。

  • 吴蛋蛋
    福建

    好像有些主题都自带这些功能了

    • 冰剑
      湖北

      不太清楚,没接触过,不过个人感觉主题自带的耦合度太高了。

  • TypechoWiki
    山东

    感谢大佬的插件,已经收录到TypechoWiki了
    https://www.typecho.wiki/typecho-plugin-say.html
    另外大佬用的这个one主题也有收录,这个主题有源码分享吗?

    • 冰剑
      湖北

      谢谢收录。

      这个主题就如我描述的,是蚂蚱妹写给暮春妹的,我看着好看,就要过来了。据我所知是没有公开分享的,我只是魔改。

  • 宋小才
    江苏

    感谢大佬的分享,刚切换到typecho博客,真是惊喜不断。有个问题请教,配置企业微信的时候卡主了,企业微信里应用的api地址格式是什么。(代码小白,插件里的文档基本看不懂😅)

    • 冰剑
      湖北

      https://domain.com/action/Say?push=&channel=wxwork

      文档确实有些偏弱。

  • liudu
    北京

    Argument 1 passed to Widget\Base\Contents::size() must be an instance of Typecho\Db\Query, null given, called in /www/wwwroot/123.57.142.132/var/Widget/Archive.php on line 564

    刚试了试出现这个报错

  • 叶开
    福建

    看看”日剧“和”泰剧” 保证是不一样的体验。哈哈。国产剧我都几年没看过了。

    • 冰剑
      湖北

      日剧其实也有一点,相对来说好很多。泰剧太好认了。

      是时候给碎语加评论了。🌝🌝

  • 火喵酱
    辽宁

    哇,很喜欢这个功能,但是但是,我看更新记录写的1.1.0使用原生数据表contents,那1.0.0是不是使用的单独的数据表,可惜不提供下载了。

    老哥可否分享一下1.0.0呀,感谢!

    • 冰剑
      湖北

      1.0.0的确实是新建的表,但是我也找不到1.0的了😓。

  • weich
    广西

    功能好用,但是ty1.21好像没法用了,还有卸载删除了会在后台菜单里面遗留,而且再次启用又多出来一个菜单…

    • 冰剑
      湖北

      我的就是121,刚试了下没这个问题啊。

  • 木子小鱼
    北京

    我不想使用原生数据表contents,拟单独单独创建数据表存储数据,有啥利弊么?

    • 冰剑
      湖北

      没什么区别,个人编码习惯,可以重复利用的就不喜欢新创建,并且原生的contents表本来也就是一表多用。

      如果插件不想用了,也是可以只删除插件相关的数据的。

  • 木子小鱼
    北京

    兄弟,关注你的微博应该有14-15年了,记得那时候的域名还是binjoo.net。非常感谢你开发出这么好的插件。但是作为代码小白,可否请示你抽空写个教程或者配置文档,特别是企业微信那里的配置文档,不怎么懂弄呀,麻烦了,谢谢你~

    • 冰剑
      湖北

      哈哈,老博友了。

      教程想过要写,但是自己太懒了,所以就放弃了,方便的话可以加微信或者QQ,有什么问题随便问就行了。

      • 木子小鱼
        北京

        申请加个微信吧,QQ现在基本上不怎么使用了~您的微信号?

      • 木子小鱼
        北京

        请教一下:配置企业微信应用的时候,回调配置那里的数据回调URL、指令回调URL这两个地址填什么地址?麻烦 了,谢谢了咯~

        • 冰剑
          湖北

          微信联系方式发邮件给你了,微信说吧。