Вы находитесь на странице: 1из 57

Microsoft Office Communications Server 2007 系列

Communicator2007
的客户化与开发

王伟
shangmeizhai@hotmail.com

Microsoft China

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
课程内 容
 Communicator 简介
 Communicator 的客户化
 Communicator Shell
 Communicator API

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
 强大的即时通信客户端 !

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
Communicator2007 与之前 的版本

 当你安装 Communicator 2007 的时候,安


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

 在组织内同时部署 2005 与 2007 时, 2005


的用户所期望的核心功能是仍然有效的。

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

OC2007 与 OCS2007 的功能


OC2005 功能的有效性

即时消息和基本出席状态
出席状态的增强 
计算机与计算机的语音呼叫 
访问外部联盟用户 
与公共 IM 联通 
与 OC2007 客户端的文件传输
在即时消息中使用富文本和写字板
与 OC2007 用户的计算机的视频呼

音视频会议
当用户使用 Live Meeting 2007
和外部用户的 Web 会议
当用户使用 Live Meeting 2007
和外部用户的音视频会议
Unified Communications
访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
enterprise voice
Communicator2007 的功能 与服 务器角 度
的支持
Communicator 2007 功能
需要的服务器角色
即时消息 不需要附加服务器角色
出席状态增强
地址薄服务器
会议
归档与呼叫详细记录 归档服务

外部用户访问 Access Edge Server


联盟
公共 IM 联接
与外部用户的 Web 会议 Web Conferencing Edge Server
与外部用户的音视频会议 A/V Conferencing Edge Server
Unified Communications 如下其中之一 :
enterprise voice •Mediation Server and basic media
gateway
•Collocated Media Gateway
访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
•Advanced Media Gateway
Communicator 2007 本地化

 Communicator2
007 支持多种语
言,每种语言有
自己的安装包

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

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
Communicator 2007 的部署

 IT 管理的安装方法
 通过 SMS 进行安装
 通组策略进行安装
 Windows 登录脚本

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

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
 解决方案中天使 !

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
定制 Communicator 2007 的几种途 径

 Communicator 2007 的客户化


 定制出席状态
 定制标签页
 扩展动作菜单
 其它扩展
 组策略设置

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
 你在忙什么?

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
自定 义出 席状态 和活 动

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

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

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

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
配置 文件 的属性

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


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

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

编辑状态配置 XML 文件
在服务器端保存该文件,并以共享文件或 IIS 发布文件
退出 Communicator
编辑注册表,在
HKLM\SOFTWARE\Policies\Microsoft\Communicator 下
添加 CustomStateURL 项,指向状态配置文件 URL
 支持 FILE 、 HTTP 、 HTTPS 三种方式

重新启动并登录 Communicator

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
定制出席状态

 我在开会,请勿打扰 !

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
 你能记住所有业务系统的地址吗?

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
环境 感知 的标签 页

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

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
解决 方案 示例

户登录界面 务整合界面 件整合界面


访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
解决方 案示 例

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


访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
扩展标 签页
扩展方法
 定义 XML 配置 文件,可以通过网络(文件共享或 Web )
访问到该文件
在注册表中添加该文件的 URL
 \Software\Policies\Microsoft\Communicator 下的
TabURL 项
 该 URL 需要添加进 IE 的信任站点

每个标签页的图标
PNG 格式
不大于 16X16 ,或者刚好为 32X32
如果图标文件无法访问或不符合大小,则显示 OC 的缺
省图标

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
创建标 签页 配置 文件
 配置文件样例

<?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>
最多扩展 32 个标签页

访问 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 为必需信息

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
定制标签页

 当然,一切都很简单!

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
 能否马上把这件事做了?

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
在 OC 中调 用 Win32 程序
提供了集成行业应用的基础结构
提供了集成其他协作应用的能力
支持双方会话
也可以支持多方会话
环境感知

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
扩展能 力
扩展点
主窗口主菜单
主窗口联系人右键菜单
会话窗口主菜单
会话窗口右上方动作菜单
会话窗口联系人右键菜单
应用程序类型
只在发起方启动
在所有与会者的计算机上启动

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
扩展方 法
编辑注册表
 HKLM\Software\Microsoft\Communicator\
SessionManager\Apps\[GUID of Application]

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
注册表 设置 参数
注册表项 描述
Name 显示在菜单中的应用程序名

ApplicationType 0 = 可执行文件 ( 缺省 ) 1 = 协议
ApplicationInsta
执行文件的完整路径
llPath
启动的完整路径及参数,包括缺省的 %user-id%
Path
%contact-id%
0 = 本地会话 . 应用程序只在本地计算机上启动
SessionType 1 = 双方会话 ( 缺省 ).
2 = 多方会话 .
哪个菜单上显示,用分号隔开 :
MainWindowActions
MainWindowRightClick
ExtensibleMenu
ConversationWindowActions
ConversationWindowContextual
ConversationWindowRightClick
访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
扩展动作菜单

 请点击右键, Do it !

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
 细节决定成败?

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
扩展帮 助菜 单
添加注册表项

HKEY_LOCAL_MACHIN
E\SOFTWARE\Policies\
Microsoft\Communicator
HelpMenuText
HelpMenuURL

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
扩展帮助菜单

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

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
扩展会 话初 始提 示信息
 添加注册表项
 HKEY_LOCAL_MACHI
NE\Software\Policies\
Microsoft\Communica
tor.
 IMWarning

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
扩展会话初始示提信息

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

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
 还有很多我们没有试过!

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
Communicator 2007 组策 略设 置
Communicator 2007 的很多功能与行为都可以通过组策略
进行配置。
AbsInsideURL DisableDataConferencing
AbsOutsideURL DisableEmoticons
AbsUseFallback DisableFederatedPromptDisplayName
AllowUnencryptedFileTransfer DisableFileTransfer
BlockConversationFromFederatedContacts DisableFreeBusyInfo
CalendarStatePublicationInterval DisableICE
CalLogAutoArchivingPolicy DisableInkIM
ConfigurationMode DisableMeetingSubjectAndLocation
ConfiguredServerCheckValues DisableNTCredentials
CustomStateURL DisableOneNote12Integration
DGRefreshPeriod DisablePC2PCVideo
DGUrlExternal DisablePICPromptDisplayName
DGUrlInternal DisablePresenceNote
DisableAppearOffline DisableRTFIM
DisableAVConferencing DisableSavingIM
DisableCalendarPresence DisableServerCheck

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
DisableSimultaneousRinging MRASServerURI
DisableVideoConferencing msRTCLine
EnableEventLogging NotificationsForNewSubscribers
EnableSIPHighSecurityMode PC2PCAVEncryption
EnableSQMData Portrange\Enabled
EnableStrictDNSNaming Portrange\MaxMediaPort
EnableTracing Portrange\MinMediaPort
EnableUPNP PreventRun
EnableURL SavePassword
exUMURI ServerAddressExternal
HelpMenuText ServerAddressInternal
HelpMenuURL TabURL
IMAutoArchivingPolicy TelephonyMode
IMWarning TourLaunchMode
LimitConcurrentAVCalls TourURL
LocationProfile Transport
MapiPollInterval VoicemailURI
MaxAudioVideoBitRate WebServicePollInterval
MaximumNumberOf Contacts WebServiceURLDG

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
 你能否只在幕后?

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
Shell 集成
 通过命令行来调用 OC Shell 功能
 OC 的 Shell 扩展

 方便在 Web 中调用 OC 功能


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

 不管怎样都离不开你!

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
 一切都有可能!

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
供第三 方应 用程 序集成 的 OC
APIOC 集成的 API
为第三方应用程序调用 Application Application

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

OCS

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
对象
Messenger 对象
代表 OC 实例
支持登录、管理和操作联系人、管理用户的在线状态、查询
联系人的在线状态、初始化即时消息聊天等
实现了 IMessenger3 接口以及 DMessengerEvents 接口
MessengerPriv 对象
处理无界面的调用
支持添加联系人操作而不弹出选择联系人的界面

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
接口
Communicator 相关的功能
包括 IMessenger,IMessenger2,IMessenger3,
IMessengerWindow,IMessengerConversationWnd
联系人与组管理功能
包括 IMessengerContact, IMessengerContacts,
IMessengerContactAdvanced, IMessengerGroup, and
IMessengerGroups
Communications 服务
包括 IMessengerService 和 IMessengerServices
OC 中只有一个服务
无界面元素的交互功能
包括 IMessengerPrivate

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
应用场 景
通过程序操作 OC
从 Web 页面中启动 OC
使用程序来添加、查找和删除联系人
在应用程序中提供 OC 中的功能
在一个日程管理应用中显示联系人信息和在线状态
开启一个即时消息会话
扩展和定制 OC
存档会话历史

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
编程任 务
开发环境
计算机上安装了 OC 2007
在编程环境中添加了对 OC Automation API 的引用

访问 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
部分功能受限制

访问 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();
}
}

访问 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;
}

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
事件通 知与 注册
 订阅事件通知
// Create a Messenger object using the API
communicator = new CommunicatorAPI.Messenger();

// Register OnContactStatusChange event handler


communicator.OnContactStatusChange += new
DMessengerEvents_OnContactStatusChangeEventHandler(OnContactStatusCha
nge);

接收事件通知
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);
}

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

 让程序来帮我们吧!

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
OCS2007 重要资源 及参 考资料
 Communicator 2007 Deployment Guide
http://www.microsoft.com/downloads/details

 Office Communicator 2007 SDK


http://www.microsoft.com/downloads/details

 Newsgroup
news:microsoft.public.livecomm.developer

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
总结 & 预告
 总结
 Communicator2007 ,不仅仅 是一 个即时 通信
客户端, 也是 行业解 决方 案的强 大开 发平台 。

 预告

 Q&A

访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
TechNet 是什么 ?
 只需轻 轻点击 ,答 案就在 您的 指尖
 对于 IT 专业 人员 来说, TechNet 是一个 知识的 宝库
,你可 以找 到关于 如何规 划, 部署 和管理 微软 产品的
的技术 资源
 每月发放包含最新信息的 DVD 或者 CD
订阅 TechNet
 这是最权威的资源,可以帮助你评估、配置和维护微软产品。

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

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

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

 用户群
中文社区
 可管理的新闻组
访问 www.microsoft.com/china/technet/webcast 获取更多课程资源
我们从哪里可获取到 TechNet 各类资
源?
 TechNet 中文网站
www.microsoft.com/China/technet/
 TechNet 中文网络广播
www.microsoft.com/china/technet/webcasts
 TechNet 中文速递邮件
www.microsoft.com/china/technet/newsletter/
 TechNet IT 经理参 考
www.microsoft.com/china/technet/itmanager/default.mspx
 TechNet 订阅
www.microsoft.com/china/technet/subscriptions/
 TechNet 活动
www.microsoft.com/china/technet/community/events/

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

Вам также может понравиться