57
访访 www.microsoft.com/china/technet/webcast 访访访访访访访访 Microsoft Microsoft Office Communications Server 2007 Office Communications Server 2007 访访 访访 Communicator2007 Communicator2007 访访访访访访访 访访访访访访访 访访 访访 [email protected] [email protected] Microsoft China Microsoft China

Communicator 2007 Customize

Embed Size (px)

DESCRIPTION

Communicator2007客户化和开发

Citation preview

Page 1: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

MicrosoftMicrosoft Office Communications Server 2007 Office Communications Server 2007 系列系列

Communicator2007Communicator2007的客户化与开发的客户化与开发

王伟王伟[email protected]@hotmail.com om Microsoft ChinaMicrosoft China

Page 2: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

课程内容课程内容 CommunicatorCommunicator 简介简介 CommunicatorCommunicator 的客户化的客户化 Communicator ShellCommunicator Shell Communicator APICommunicator API

Page 3: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

强大的即时通信客户端强大的即时通信客户端 !!

Page 4: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

Communicator2007Communicator2007 与之前的版本与之前的版本

当你安装当你安装 Communicator 2007Communicator 2007 的时候,安装程序会反安的时候,安装程序会反安装所有之前的版本,包括测试版。但会保留用户的设置。装所有之前的版本,包括测试版。但会保留用户的设置。

在组织内同时部署 在组织内同时部署 20052005 与与 20072007 时,时, 20052005 的用户所期望的用户所期望的核心功能是仍然有效的。的核心功能是仍然有效的。

Page 5: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

与与 Communicator2005Communicator2005 共存共存

OC2007 与 OCS2007 的功能 OC2005 功能的有效性即时消息和基本出席状态

出席状态的增强计算机与计算机的语音呼叫

访问外部联盟用户

与公共 IM 联通

与 OC2007 客户端的文件传输

在即时消息中使用富文本和写字板与 OC2007 用户的计算机的视频呼叫音视频会议和外部用户的 Web 会议 当用户使用 Live Meeting 2007

和外部用户的音视频会议 当用户使用 Live Meeting 2007Unified Communications enterprise voice

Page 6: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

Communicator2007Communicator2007 的功能与服务器角度的的功能与服务器角度的支持支持

Communicator 2007 功能 需要的服务器角色即时消息出席状态增强地址薄服务器会议

不需要附加服务器角色

归档与呼叫详细记录 归档服务

外部用户访问 联盟公共 IM 联接

Access Edge Server

与外部用户的 Web 会议 Web Conferencing Edge Server

与外部用户的音视频会议 A/V Conferencing Edge Server

Unified Communications enterprise voice

如下其中之一 : Mediation Server and basic media gateway Collocated Media GatewayAdvanced Media Gateway

Page 7: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

Communicator 2007Communicator 2007 本地化本地化

Communicator2Communicator2007007 支持多种语支持多种语言,每种语言有言,每种语言有自己的安装包自己的安装包

如果使用多语言如果使用多语言用户界面包,你用户界面包,你可以选择语言可以选择语言

Page 8: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

Communicator 2007Communicator 2007 的部署的部署 ITIT 管理的安装方法管理的安装方法

通过通过 SMSSMS 进行安装进行安装 通组策略进行安装通组策略进行安装 WindowsWindows 登录脚本登录脚本

安装脚本:安装脚本: msiexec /qn /i Communicator.msimsiexec /qn /i Communicator.msi msiexec /qn /i Communicator.msi /l*v logfile.txtmsiexec /qn /i Communicator.msi /l*v logfile.txt /lem/lem

Page 9: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

解决方案中天使解决方案中天使 !!

Page 10: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

定制定制 Communicator 2007Communicator 2007 的几种途径的几种途径

Communicator 2007Communicator 2007 的客户化的客户化 定制出席状态定制出席状态 定制标签页定制标签页 扩展动作菜单扩展动作菜单 其它扩展其它扩展 组策略设置组策略设置

Page 11: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

你在忙什么?你在忙什么?

Page 12: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

自定义出席状态和活动自定义出席状态和活动

定义更加详细的状态与活动信息

两种扩展方法用户选择和管理员控制API 支持

Page 13: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

定制方法定制方法

Page 14: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

配置文件的属性配置文件的属性

基础状态为: Online 、 Busy 、 Do Not Disturb

Availability 属性决定自定义的状态显示哪一个在线图标自定义状态的文本长度最大为 64 个字符最多只能添加 4 种自定义状态可以通过 LCID 适应不同语言版本的 OC :英语美国 (1033) ,中国大陆(2052) ,中国香港 (3076)

Page 15: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

扩展步骤扩展步骤

编辑状态配置 XML 文件在服务器端保存该文件,并以共享文件或 IIS 发布文件退出 Communicator

编辑注册表,在 HKLM\SOFTWARE\Policies\Microsoft\Communicator 下添加 CustomStateURL 项,指向状态配置文件 URL

支持 FILE 、 HTTP 、 HTTPS 三种方式重新启动并登录 Communicator

Page 16: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

定制出席状态定制出席状态

我在开会,请勿打扰我在开会,请勿打扰 !!

Page 17: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

你能记住所有业务系统的地址吗?你能记住所有业务系统的地址吗?

Page 18: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

环境感知的标签页环境感知的标签页

通过 Web 页面来扩展 OC 窗口:ASP.NET 、 MOSS WebPart 、…标签页的显示方式与 OC 2005 不同第一个标签页在 OC 启动时即载入支持联系人切换时动态刷新页面

Page 19: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

解决方案示例解决方案示例

用户登录界面 业务整合界面 邮件整合界面

Page 20: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

解决方案示例解决方案示例

组织机构树 业务整合界面 短消息集成

Page 21: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

扩展标签页扩展标签页扩展方法

定义 XMLXML 配置 文件,可以通过网络(文件共享或 Web )访问到该文件在注册表中添加该文件的 URL

\Software\Policies\Microsoft\Communicator 下的 TabURL 项该 URL 需要添加进 IE 的信任站点

每个标签页的图标PNG 格式不大于 16X16 ,或者刚好为 32X32

如果图标文件无法访问或不符合大小,则显示 OC 的缺省图标

Page 22: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

创建标签页配置文件创建标签页配置文件配置文件样例

最多扩展 32 个标签页

<?xml version="1.0" ?> <tabdata> <tab> <image>http://site/image.png</image> <name>Tab title</name> <tooltip>Tooltip text</tooltip> <contenturl> http://site/content</contenturl> <userid>true</userid> <contactid>true</contactid> <accessibility>inside</accessibility> </tab> </tabdata>

Page 23: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

标签页配置文件属性标签页配置文件属性image: 图标的 URL

name: 标签的友好名,用于标识 XML 节点,将不显示tooltip: 鼠标悬停在标签上显示的提示信息contenturl: 标签页面的 URL

userid: true|false ,展现标签页面时是否带上 userid 参数,为当前用户的 SIP 地址contactid: true|false, 展现标签页面时是否带上 contactid 参数,为联系人的 SIP 地址accessibility: inside|outside|both ,用户在企业内部或企业外部登录时,该标签是否显示name 与 contenturl 为必需信息

Page 24: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

定制标签页定制标签页

当然,一切都很简单!当然,一切都很简单!

Page 25: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

能否马上把这件事做了?能否马上把这件事做了?

Page 26: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

在 在 OC OC 中调用 中调用 Win32 Win32 程序程序提供了集成行业应用的基础结构提供了集成其他协作应用的能力

支持双方会话也可以支持多方会话

环境感知

Page 27: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

扩展能力扩展能力扩展点

主窗口主菜单主窗口联系人右键菜单会话窗口主菜单 会话窗口右上方动作菜单会话窗口联系人右键菜单

应用程序类型只在发起方启动在所有与会者的计算机上启动

Page 28: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

扩展方法扩展方法编辑注册表

HKLM\Software\Microsoft\Communicator\SessionManager\Apps\[GUID of Application]

Page 29: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

注册表设置参数注册表设置参数注册表项 描述

Name 显示在菜单中的应用程序名

ApplicationType 0 = 可执行文件 ( 缺省 ) 1 = 协议ApplicationInstallPath 执行文件的完整路径

Path 启动的完整路径及参数,包括缺省的 %user-id% %contact-id%

SessionType0 = 本地会话 . 应用程序只在本地计算机上启动1 = 双方会话 ( 缺省 ). 2 = 多方会话 .

ExtensibleMenu

哪个菜单上显示,用分号隔开 :MainWindowActionsMainWindowRightClickConversationWindowActionsConversationWindowContextualConversationWindowRightClick

Page 30: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

扩展动作菜单扩展动作菜单

请点击右键,请点击右键, Do itDo it !!

Page 31: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

细节决定成败?细节决定成败?

Page 32: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

扩展帮助菜单扩展帮助菜单添加注册表项

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Communicator

HelpMenuText

HelpMenuURL

Page 33: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

扩展帮助菜单扩展帮助菜单

帮助对所有人都很重要!帮助对所有人都很重要!

Page 34: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

扩展会话初始提示信息扩展会话初始提示信息 添加注册表项添加注册表项

HKEY_LOCAL_MACHIHKEY_LOCAL_MACHINE\Software\Policies\NE\Software\Policies\Microsoft\Microsoft\Communicator.Communicator.

IMWarningIMWarning

Page 35: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

扩展会话初始示提信息扩展会话初始示提信息

求你别把银行密码告诉我!求你别把银行密码告诉我!

Page 36: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

还有很多我们没有试过!还有很多我们没有试过!

Page 37: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

Communicator 2007Communicator 2007 组策略设置组策略设置

AbsInsideURLAbsOutsideURLAbsUseFallbackAllowUnencryptedFileTransferBlockConversationFromFederatedContactsCalendarStatePublicationIntervalCalLogAutoArchivingPolicyConfigurationModeConfiguredServerCheckValuesCustomStateURLDGRefreshPeriodDGUrlExternalDGUrlInternalDisableAppearOfflineDisableAVConferencingDisableCalendarPresence

DisableDataConferencingDisableEmoticonsDisableFederatedPromptDisplayNameDisableFileTransferDisableFreeBusyInfoDisableICEDisableInkIMDisableMeetingSubjectAndLocationDisableNTCredentialsDisableOneNote12IntegrationDisablePC2PCVideoDisablePICPromptDisplayNameDisablePresenceNoteDisableRTFIMDisableSavingIMDisableServerCheck

Communicator 2007 的很多功能与行为都可以通过组策略进行配置。

Page 38: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

DisableSimultaneousRingingDisableVideoConferencingEnableEventLoggingEnableSIPHighSecurityModeEnableSQMDataEnableStrictDNSNamingEnableTracingEnableUPNPEnableURLexUMURIHelpMenuTextHelpMenuURLIMAutoArchivingPolicyIMWarningLimitConcurrentAVCallsLocationProfileMapiPollIntervalMaxAudioVideoBitRateMaximumNumberOf Contacts

MRASServerURImsRTCLineNotificationsForNewSubscribers PC2PCAVEncryptionPortrange\EnabledPortrange\MaxMediaPortPortrange\MinMediaPortPreventRunSavePasswordServerAddressExternalServerAddressInternalTabURLTelephonyModeTourLaunchModeTourURLTransportVoicemailURIWebServicePollIntervalWebServiceURLDG

Page 39: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

你能否只在幕后?你能否只在幕后?

Page 40: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

Shell Shell 集成集成

通过命令行来调用 OC Shell 功能OC 的 Shell 扩展

方便在 Web 中调用 OC 功能

Page 41: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

Communicator ShellCommunicator Shell

不管怎样都离不开你!不管怎样都离不开你!

Page 42: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

一切都有可能!一切都有可能!

Page 43: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

供第三方应用程序集成的 供第三方应用程序集成的 OC APIOC API

OC 集成的 API

为第三方应用程序调用 OC 功能准备基于 COM 的 API ,可以利用 OC 界面扩展 OC 用户体验或者功能需要同时安装 OC ,并且在 OC 启动的情况下调用

Application Application

OCSOCS

Page 44: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

对象对象Messenger 对象代表 OC 实例支持登录、管理和操作联系人、管理用户的在线状态、查询联系人的在线状态、初始化即时消息聊天等实现了 IMessenger3 接口以及 DMessengerEvents 接口

MessengerPriv 对象处理无界面的调用支持添加联系人操作而不弹出选择联系人的界面

Page 45: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

接口接口Communicator 相关的功能包括 IMessenger,IMessenger2,IMessenger3, IMessengerWindow,IMessengerConversationWnd

联系人与组管理功能包括 IMessengerContact, IMessengerContacts, IMessengerContactAdvanced, IMessengerGroup, and IMessengerGroups

Communications 服务包括 IMessengerService 和 IMessengerServices

OC 中只有一个服务无界面元素的交互功能包括 IMessengerPrivate

Page 46: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

应用场景应用场景通过程序操作 OC

从 Web 页面中启动 OC

使用程序来添加、查找和删除联系人在应用程序中提供 OC 中的功能

在一个日程管理应用中显示联系人信息和在线状态开启一个即时消息会话

扩展和定制 OC

存档会话历史

Page 47: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

编程任务编程任务开发环境

计算机上安装了 OC 2007

在编程环境中添加了对 OC Automation API 的引用

Page 48: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

其他语言调用 其他语言调用 Win32 C/C++

需要包含以下文件 : windows.h, tchar.h, msgrua.h, msgrua_i.c, msgrpriv.h, msgrpriv_i.c

脚本语言需要创建 ActiveX 对象: Communicator.UIAutomation

部分功能受限制

Page 49: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

对象初始化 对象初始化

using System;using System.Runtime.Interop;using CommunicatorAPI;class MyClass{ CommunicatorAPI.Messenger communicator= null; public MyClass() { communicator = new CommunicatorAPI.Messenger(); }}

Page 50: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

接口调用 接口调用 获取联系人信息

CommunicatorAPI.Messenger communicator = new CommunicatorAPI.Messenger();

public IMessengerContact GetContact(string signinName){ return communicator.GetContact(signinName, communicator.MyServiceId) as IMessengerContact;}

Page 51: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

事件通知与注册 事件通知与注册 订阅事件通知

接收事件通知

// Create a Messenger object using the APIcommunicator = new CommunicatorAPI.Messenger();

// Register OnContactStatusChange event handlercommunicator.OnContactStatusChange += new DMessengerEvents_OnContactStatusChangeEventHandler(OnContactStatusChange);

void OnContactStatusChange(object pMContact, MISTATUS mStatus){ IMessengerContact contact = pMContact as IMessengerContact; string status = Enum.GetName(typeof(MISTATUS), mStatus); string msg = contact.FriendlyName + " : " + status; System.Windows.Forms.MessageBox.Show(msg);}

Page 52: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

Automation APIAutomation API

让程序来帮我们吧!让程序来帮我们吧!

Page 53: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

OCS2007OCS2007 重要资源及参考资料重要资源及参考资料 Communicator 2007 Deployment GuideCommunicator 2007 Deployment Guide

http://www.microsoft.com/downloads/details.aspx?familyid=f1d1a947-6eff-4ac4-8878-f0a77894ac99&displaylang=en&tm

Office Communicator 2007 SDKOffice Communicator 2007 SDKhttp://www.microsoft.com/downloads/details.aspx?FamilyID=ed1cce45-cc22-46e1-bd50-660fe6d2c98c&DisplayLang=en

NewsgroupNewsgroupnews:microsoft.public.livecomm.developer

Page 54: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

总结 总结 & & 预告预告 总结总结

Communicator2007Communicator2007 ,不仅仅是一个即时通信客户端,也是行业解决方案的强大开发平台。,不仅仅是一个即时通信客户端,也是行业解决方案的强大开发平台。

预告预告

Q & AQ & A

Page 55: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

TechNetTechNet 是什么是什么 ?? 只需轻轻点击,答案就在您的指尖只需轻轻点击,答案就在您的指尖

对于对于 IT IT 专业人员来说,专业人员来说, TechNet TechNet 是一个知识的宝库,你是一个知识的宝库,你可以找到关于如何规划,部署和管理微软产品的的技术资源可以找到关于如何规划,部署和管理微软产品的的技术资源

每月发放包含最新信息的每月发放包含最新信息的 DVDDVD或者或者 CDCD 这是最权威的资源,可以帮助你评估、配置和维护微软产品。这是最权威的资源,可以帮助你评估、配置和维护微软产品。

订阅 TechNet

可以访问该站点 可以访问该站点 www.microsoft.com/china/technet 在线资源和社区在线资源和社区 订户订户 ----仅仅提供在线服务仅仅提供在线服务

TechNet 网站

两周发放一次的中文电子快报两周发放一次的中文电子快报 安全更新安全更新 , , 新的资源等等新的资源等等

TechNet 中文电子快报

有关最新微软产品介绍和技术的简报有关最新微软产品介绍和技术的简报 上机试验上机试验 , “, “ 如何操作”等信息如何操作”等信息

TechNet 活动和网站消息

用户群用户群 可管理的新闻组可管理的新闻组

中文社区

Page 56: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源

我们从哪里可获取到 我们从哪里可获取到 TechNetTechNet 各类资源各类资源 ??

TechNet TechNet 中文网站中文网站www.microsoft.com/China/technet/www.microsoft.com/China/technet/

TechNetTechNet 中文网络广播中文网络广播 www.microsoft.com/china/technet/webcastswww.microsoft.com/china/technet/webcasts

TechNetTechNet 中文速递邮件 中文速递邮件 www.microsoft.com/china/technet/newsletter/www.microsoft.com/china/technet/newsletter/

TechNetTechNet ITIT经理参考经理参考 www.microsoft.com/china/technet/itmanager/default.mspxwww.microsoft.com/china/technet/itmanager/default.mspx

TechNetTechNet订阅订阅 www.microsoft.com/china/technet/subscriptions/www.microsoft.com/china/technet/subscriptions/

TechNetTechNet 活动活动www.microsoft.com/china/technet/community/events/www.microsoft.com/china/technet/community/events/

Page 57: Communicator 2007 Customize

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源