|||
-|-|-|
| 摘要 | Discourse 音频消息 允许用户直接录制音频消息并将其附加到帖子中。
| 代码库链接 | \u003chttps://github.com/pbenkoe/discourse-audio-message\u003e
| 安装指南 | 如何在 Discourse 中安装插件
此插件是在 ChatGPT 的帮助下开发的,因为我在后端/JavaScript 开发方面的背景有限。
实现非常基础,但我希望它能帮助一些人,也许可以作为进一步开发的基石。
请务必查看 Github 页面上的安装说明。
5 个赞
Canapin
(Coin-coin le Canapin)
2
您好,感谢您发布您的作品。
不过,它放错类别了,应该放在 #plugin。由于您解释说您对编写插件没有特别的了解,并且在某些部分依赖了chatGPT,我将确保代码正确编写后再将其移至该类别。
另外,它是否做了 Voice Recorder Component 已经做过的事情?
5 个赞
是的,请看看它是否符合要求,并根据需要调整论坛类别 
虽然我从未亲自尝试过,但根据帖子,我假设它无法正常工作,因此我决定自己开发一个小插件……
Canapin
(Coin-coin le Canapin)
4
我试过了,它确实不能正常工作。理论上,你可以用一个主题组件(假设 Voice Recorder Component 做的事情差不多)来实现你的插件所能做到的,这要容易安装得多。
另一个被重写成主题组件的插件示例:
3 个赞
这个音频消息录制插件在我的 Discourse 上运行完美。谢谢你 @peter.be !!!
1 个赞
这里有一个Vimeo演示了该插件的用法……(顺便说一句,它在移动设备上也能用
)
3 个赞
请注意,此插件会破坏我网站上的标签组页面。整个标签组列表消失,您也无法修改任何标签组。卸载此插件后,问题就消失了……
1 个赞
我已经把它发到了 Dev 频道,关于它的开发方面还有一些讨论。
3 个赞
各位,毫无疑问,尝试编写插件是一件很有趣的事情,也是一次非常有用的学习经历,更有趣的是看看 ChatGPT 能否帮助你编写它……
……但将插件部署到生产环境并正式与公众分享,确实意味着你需要承担后续支持的责任。
依赖 ChatGPT 作为生产力助手固然很好,但你确实需要自己理解每一行代码。
如果不是因为我们已经有一个涵盖了这一功能领域的 Theme Component(尽管目前无法正常工作),我不会对这一切有太大问题。
部署一个插件来取代它是一个倒退,因为你应该尽可能地将东西部署为 Theme Component,这样它就可以被更多类型的安装更广泛地使用,侵入性更小,并且部署和移除速度更快。
你需要一个_非常_好的理由来恢复使用插件(这个理由可能存在,但最好详细说明和辩护)。
我仍然认为,作为一个社区,我们应该致力于维护现有的资产,而不是创建新的资产(除非,像 Guest Gate Component 那样,有机会创建一个 Theme Component 来代替,这将是一个有价值的改进)。
为此,我认为努力应该集中在以下方面:
我怀疑它不再工作的主要原因是原始维护者太忙于其他项目,但没有任何东西阻止任何人向仓库贡献代码来修复它,有人尝试过吗?
Pavilion 的成员在投入我们多年来无数的公开贡献方面的时间是有限的,社区确实需要承担一部分负担。
/rant 结束
5 个赞
Jagster
(Jakke Lehtonen)
13
也许因为它有效?而且……
这从未发生过。
从开发者的角度来看,我完全理解你。但作为最终用户的例子,我会说插件与组件不是什么大问题,因为我们(或者说我)一直在不断升级,所有重要的是完成工作的方式。
我们不需要应用程序来录制和上传音频。我们有设备可以做到这一点(无论如何,几乎是因为苹果仍然不喜欢 MP3),但这并不是一个非常流畅的工作流程。一键操作即可,无论它来自插件还是组件。
是的。我也更喜欢组件。
2 个赞
那些以较低价格托管的用户通常被限制使用主题组件进行定制,而且这几乎肯定是一个更庞大的人群,因此切换到插件会排除很多网站。
当然,你和我没有这个特定的限制。
1 个赞
Jagster
(Jakke Lehtonen)
15
确实如此。这些是我不记得发生过的案例。但它们无论如何都受到限制。所以这种情况只是另一种(尽管应该尽量避免),
1 个赞
Lilly
(Lillian Louis)
16
这实际上是一个大问题,因为有许多实例是托管的,并且插件还受到托管层级的进一步限制。主题组件有一些限制,但对于那些不是自托管的用户来说,它们也提供了更大的灵活性和更易于管理。
2 个赞
Lilly
(Lillian Louis)
17
也许是我误解了你的意思(语言问题),但我不赞同——托管是许多论坛非常可行的选择和解决方案。
1 个赞
总之,这本不该成为一场大批判,我很高兴 @peter.be 你进入了这个领域并分享你的工作,但也许你可以考虑这些更广泛的观点 
5 个赞
罗伯特,感谢您提出您的顾虑。
当我决定自己编写解决方案时(因为目前没有一个现有的解决方案可行),我并不知道主题组件与插件的优缺点。如果关于插件开发的教程中包含一个免责声明,也许会很好?(https://meta.discourse.org/t/developing-discourse-plugins-part-1-create-a-basic-plugin/30515)
我确实只需要一个简单的解决方案来简化音频录制工作流程。如果您作为这个领域的资深人士,有灵感将插件改写成主题组件,我很乐意协助您并回答有关插件源代码的问题。
如果您没有灵感,我可能最终会回来处理这个问题,只是我无法确定何时会有时间 
4 个赞
我曾试图修复损坏的主题组件版本,但我的技能显然还不够。
不过,我能够修复和改进插件中的一些东西,所以这样做很有趣,当然我也学到了一些东西,这始终是最好的回报!
(也就是说,我在 Github 上提交了我的第一个 PR!)
我会继续努力,因为我确实同意主题组件相对于插件的优势(并且最好始终同时拥有这两种选择,因为插件相对于 TC 仍然具有一些优势!)
5 个赞