创建私人和 public 提要的最佳方式

Best way to create private and public feed

我是 getStream.io 的新手,我希望我的应用程序的每个用户都得到一个私人提要,他可以在其中找到他的活动,并且他得到一个 public 提要,他可以在其中找到他的活动活动和朋友的活动。

为此,我为组中的每个用户创建了一个供稿(私人供稿)user,然后我将活动添加到他们的供稿中。

在我为每个用户在组 timeline 中创建了一个提要(public 个)之后,这个提要跟随关联的用户查看他在 public 提要中的活动(例如 Facebook、Instagram、Twitter...)。

我在社区上进行了很多研究,想知道这是否是为每个用户进行私人和 public 提要的最佳方式,但我读到在他的时间表中关注他自己是不好的。我把我的代码放在这里:`

# Initialize the client with your api key and secret
client = stream.connect('YOUR_API_KEY', 'API_KEY_SECRET')
# For the feed group 'user' and user id 'user1' get the feed
user1_feed = client.feed('user', 'user1') #User1's feed
# Add the activity to the feed
user1_feed.add_activity({'actor': 'user1', 'verb': 'tweet', 'object': "user1a1", 'tweet': 'Hello world It s me user1', 'likes': 0})  #user1a1
user1_feed.add_activity({'actor': 'user1', 'verb': 'watch', 'object': "user1a2", 'youtube_id': 'W9GvhL53nyw', 'likes': 0})        #user1a2

# The same with 'user2'
user2_feed = client.feed('user', 'user2') #User1's feed
user2_feed.add_activity({'actor': 'user2', 'verb': 'tweet', 'object': "user2a1", 'tweet': 'Hello world It s me user2', 'likes': 0})  #user2a1
user2_feed.add_activity({'actor': 'user2', 'verb': 'watch', 'object': "user2a2", 'youtube_id': 'PoxLSUh7pYw', 'likes': 0})        #user2a2

user1_timeline = client.feed('timeline', 'user1') #User1's timeline
user2_timeline = client.feed('timeline', 'user2') #User2's timeline

user1_timeline.follow('user','user1') #user1_timeline follows user1
user1_timeline.follow('user','user2') #user1_timeline follows user2

user2_timeline.follow('user','user2') #user2_timeline follows user2
user2_timeline.follow('user','user1') #user2_timeline follows user1

`

而且我不想创建重复项,如果我了解文档,群组时间线就会显示出来。

所以我想知道我的方法是否是创建私人和 public 提要的最佳方式。

谢谢! 皮埃尔.

您的理解是正确的,示例看起来正确并且将按照您的描述运行。

user1 提要将仅包含用户 1 的 "personal" 活动。您的应用程序可能会限制访问,这样只有用户 1 可以访问(如果您的功能和 UX 需要它)。这些活动不是 'private',因为如果存在以下关系,它们可能已被复制到其他用户的 user_timeline 供稿中。

user1_timeline 供稿将结合用户 1 添加到其 user 供稿中的活动(由于在您的示例中创建的关注关系)以及其他用户的活动 'user' 已关注的提要。