显示为应用程序端点的照片(Displaying a photo for an Application

2019-07-30 07:30发布

这里是我的问题:我的一个大项目UCMA工作,已有3个月,现在我想补充一点的功能。

我有很多可以添加,修改或删除的动态,我想,每一个我创建一个ApplicationEndpoint时间,指定将在微软的Lync显示的图象ApplicationEndpoints的。

我已经有很多其他functionnalities的,但我真的很喜欢这个的。

我搜索了好几天,但我没有发现任何这样告诉自己,不能做之前,我想问问!

有谁知道这是可能的吗? 在这种情况下,你能告诉我这样做的方式吗?

谢谢

Answer 1:

迟到总比不到好,但是这可能帮助别人。

我不知道这是可能的应用程序终结点,但你可以肯定用户的端点(我已经做到了这一点和它的作品)发布照片设置。 关于发布存在一些基本的信息可以在MSDN上找到: 发布在场 。

发布在场信息(包括照片设置)是在完成LocalEndpoint.LocalOwnerPresence 。 无论UserEndpointApplicationEndpoint派生自LocalEndpoint ,所以这应该是可行真的。

因为有很多“层次”将发布的不同组合的实际出版变得稍微复杂:

首先,有一堆InstanceID ,你需要知道,他们读了这里的值: 存在数据源和类别实例ID

其次,是谁这个存在适用于,看到一个值Microsoft.Rtc.Collaboration.Presence.PresenceRelationshipLevel 。 不要上发布Unknown ,你会得到一个异常。

public enum PresenceRelationshipLevel  
{  
    Unknown = -1,  
    Everyone = 0,  
    External = 100,  
    Colleagues = 200,  
    Workgroup = 300,  
    Personal = 400,  
    Blocked = 32000,  
}

您需要发布PresenceCategoryWithMetaData用户照片的属性,这是容器的一部分0x5 ,“存在实体的信息”。

var photoPresence = new PresenceCategoryWithMetaData(
    0x5, // The container id
    (int)PresenceRelationshipLevel.Everyone,
    new ContactCard(0x5) // Same container ID again
    {
        IsAllowedToShowPhoto = true,
        PhotoUri = "<uri to your photo here"
    });

您可以设置一个ExpiryPolicy此对象上也应自我explainatory真的。 然后发布在端点这种存在对象:

Endpoint.LocalOwnerPresence.BeginPublishPresence(new[] { photoPresence  }, cb => { 
    Endpoint.LocalOwnerPresence.EndPublishPresence(cb);
}, null);

这应该这样做,真的。 我最终明确发布到所有关系水平,因为它没有级联数据逻辑上预期。 这变成了一个相当漫长的答复,也为我自己的未来参考。 请让我知道,如果这个工程的应用终端了。



Answer 2:

相当肯定,你不能做到这一点。 因为它是一个应用程序终结点,顾名思义它不与任何一个特定的用户。 这肯定将是很好,但。 :)



文章来源: Displaying a photo for an Application endpoint
标签: lync ucma