获取活动

OSC 调用 ISocialProvider::GetCapabilities 方法来确定社交网络的 OSC 提供程序的功能。 如果返回的功能 XML 中的 getActivitiesdynamicActivitiesLookupEx 元素指示 OSC 提供程序支持按需获取活动和将活动存储在内存中,则 OSC 可以进行以下调用顺序。 OSC 还记下了 capabilities XML 中的 hashFunction 元素中指定的哈希函数。 OSC 按以下顺序调用方法来获取 ISocialPerson 接口 (支持的活动和信息,) 社交网络上的好友和非好友:

  1. ISocialSession::GetLoggedOnUser — 在身份验证过程结束时,OSC 调用 GetLoggedOnUser 以获取要进行身份验证的用户的 ISocialProfile 接口。 有关身份验证的详细信息,请参阅 基本身份验证基于表单的身份验证

  2. ISocialSession2::GetActivitiesEx - 对于在 Outlook 人员 窗格中显示的人员,OSC 获取并哈希处理其 SMTP 地址,调用 ISocialSession2::GetActivitiesEx,并将 (存储在内存中,) 为这些人返回的活动数据。 OSC 获取一个输出参数 活动,该参数是一个字符串,其中包含已登录用户好友的活动集合。 此字符串符合 activityFeed 元素的架构定义。

  3. ISocialSession::GetPerson — 对于 GetActivitiesEx 返回的 activityFeed XML 中的每个 activityDetails 元素,都有一个 ownerID 元素,用于指示拥有该活动的人员。 OSC 使用该 ownerID 值调用 GetPerson 以获取该人员的 ISocialPerson 接口。

  4. ISocialPerson::GetDetails - 根据从步骤 3 获取的 ISocialPerson 对象,OSC 调用 GetDetails 以获取该人员的详细信息,例如名字和姓氏。 OSC 可以对在步骤 2 中由 GetActivitiesEx 返回的 activityFeed XML 中的 activityDetails 元素中指定的每个活动执行相同的操作。

注意

OSC 按默认间隔刷新活动缓存。 有关刷新活动缓存的详细信息,请参阅 同步好友和活动

另请参阅