回填提要?

Back-filling a feed?

有没有办法将活动插入到提要中,使它们看起来就像是在过去的特定时间插入的一样?我曾假设在将项目添加到提要时,它会使用 'time' 值对结果进行排序,即使在初始提要之后传播到其他提要时也是如此,但似乎并非如此,它们只是按它们被添加到 Feed 的顺序。

我正在为我们的用户制作时间轴视图,我有几个原因想要在以前的时间点插入活动:

1) 我们的数据库中有大量实体,但会跟踪的实体数量相对较少(尤其是一开始),因此为了提高效率,我计划只为实体添加一次活动至少有一个追随者。一旦有人关注它,我想回到 14 天并为该实体插入活动,就好像它们是在它们发生时创建的一样,这样新的关注者就会在他们的 Feed 中的适当位置看到它们。目前他们只会在他们的 Feed 顶部看到大量过去的活动,这没有用。

2) 同样,我们的数据库中已经有一定的关注关系,在发布时我想回溯一定时间并为所有已经拥有关注者的实体插入活动,以便提要立即有用。

有什么方法可以做到这一点,还是我运气不好?

我的提要是平面提要和聚合提要的组合 - 用户的主要时间线是聚合的,但大多数实体提要是平面的。我所有的聚合组都将基于 activity 的时间,因此理想情况下,也有一种方法可以按时间对最终聚合组进行排序。

Stream 上的供稿根据其类型进行不同排序:

固定提要按 activity 时间降序排列

聚合供稿和通知供稿根据 last-updated 对 activity 组进行排序(组内的活动按时间降序排列)

这意味着您可以 back-fill 固定供稿但不能聚合供稿。

获得类似于您描述的内容的一种可能方法是创建关注关系,并将 copy_limit 设置为较低的数字,以便仅将最近的活动传播给关注者。