如何在不自行托管且不升级计划的情况下使用 Discourse 视频插件?

你好,我目前使用的是专业版计划。我想为用户提供上传视频的功能,但该计划提供的存储空间对于视频存储来说并不划算。因此,我希望使用 Mux 或其他合适的视频服务提供商,而不必离开当前平台去自建托管,或者现在升级计划对我来说又太贵了。请问有什么建议吗?

虽然您无法安装自定义插件,但在大多数托管层级中允许使用主题组件。我认为 @Arkshine 已修复了 Vimeo 和 YouTube 上传的主题组件。该组件目前仍标记为“已损坏”,可能是因为这些更改尚未合并到原始组件中。您可以尝试本帖子中的版本。

3 个赞

好的,现在可能能用了。

用户要上传视频,得去找那个小图标,而不是直接从主按钮操作……我得看看怎么修复这个问题。

仅作为关于此 TC 的信息说明。我尚未创建新话题,原因如下:

  1. 新的 Vimeo 按用户认证 —— 虽然对应用所有者有效,但对其他用户无效,因为它受到合作要求的限制。“您的应用可以作为 Vimeo 合作伙伴 计划的一部分,上传到其他 Vimeo 账户。”。我得知此信息较晚。我不确定是否任何人都可以申请,我打算尝试一下。

  2. Vimeo 共享账户 —— 使用 TC 可能存在安全问题,因为您可以提取令牌。以前确实如此,但在使用新的按用户认证方法后,我本会建议不再使用共享账户。然而,由于第 1 点的原因,我在考虑是否应该制作插件版本(共享账户仍有实际使用场景)。

对于 YouTube 和 Vimeo 按用户认证(已启用合作伙伴计划)的情况,TC 应该能很好地工作!

1 个赞

是的,但对我来说,关键是让平台上的其他用户能够上传视频,而无需他们拥有 Vimeo 或 YouTube 的账号。

那么,使用共享账户的 Vimeo(即所有人都会上传到你的账户)可能是你想要的方案。不过,除非你拥有封闭/私密论坛,否则我强烈不建议使用 TC 版本。如果你能稍等片刻,我会将我的 TC 制作成插件版本,这样 Vimeo 令牌就不会成为安全问题(编辑:不过我不确定在使用 Discourse 托管计划时是否允许上传自定义插件 ::sweat_smile:

1 个赞

他们在 Discourse 的专业版计划中将无法使用这个功能。

1 个赞

是的,我在编辑我的消息。嗯,我们真是陷入困境了。:sweat_smile:

是的,我用专业版无法上传自定义插件,但……我希望有人能听我说说,至少给我提供 Discourse-video 这个插件 :))

自定义插件仅限企业版计划可用,这背后有技术原因。您甚至无法获取其他官方插件,因为您某种程度上需要与其他论坛共享这些插件。即使是企业版计划,由他人编写的插件也需要经过审核,因此我认为专注于其他选项更有可能找到解决方案。

1 个赞

我会做一些研究来找出解决方案,然后再回复你。

4 个赞

我们之前已经与 Mux 构建了一些集成,但目前我们并没有计划将其在更低级别的套餐中提供:GitHub - discourse/discourse-video · GitHub

不过,我们会持续关注此话题。

另外值得一提的是,你并不为了存储空间而从 Pro 套餐升级到 Business 套餐。如果你的网站超出了允许的存储量,你可以在 Pro 套餐中购买“额外存储空间”。详情请参考我们的定价页面

如果你想了解该选项,请联系我们的团队。

2 个赞

@Prempavee

我取得了一些进展。

最终,我找到的唯一方法是使用 Cloudflare Worker 作为代理/后端来处理身份验证、隐藏提供商凭据并创建上传 URL,然后将数据上传到 CF Stream 或 Mux。你对此方案是否满意?

其工作原理(非技术层面):

  1. 你点击“上传”。
  2. 一个快速弹出窗口通过 Discourse SSO 登录(仅首次需要)。
  3. 代理确认你拥有权限,并在接下来的一个小时内记住你的状态。
  4. TC 向代理询问视频应上传至何处;代理向提供商打开一个私有上传通道(由代理持有密钥)。
  5. TC 直接向提供商上传。

这是一个简短的演示。

请忽略处理时间。如果你愿意,也可以改用“立即插入”按钮。


我认为这是一个不错的解决方案,考虑到 TC 的限制,它运行得相当不错。:grinning_face:

话虽如此,我认为这应该仅作为最后的选择。Dave 链接的插件具有深度集成功能,应该是首选的整洁解决方案。如果可能的话,我强烈建议你联系他们!(否则,请告诉我!)

2 个赞