Lync开发实例3—自定义客户端
这节来简单说明下自定义客户端的开发方法。
首先我们打开Lync SDK的以下Sample:
SignInUISuppressionMode
进入目录后,可以发现EnableUISuppressionMode.reg这个注册表文件。
打开发现是往注册表导入以下信息。
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Lync] "UISuppressionMode"=dword:00000001
这个其实就是Lync所谓UI抑制模式的开关。
什么是抑制模式?简单来说其实就是让Lync客户端服务在后台运行,但不显示在前端。
这样就可以按照我们自己的需要来进行自定义客户端了。
现在直接编译下这个sample
这个其实就是个可供我们自定义的最朴素的Lync登录客户端,这里可以看到UI抑制模式已经开启。
输入测试账号后,点击初始化并登录。
从状态中已经可以看到lynctest1已经登录完成。
也可以从其他客户端来验证登录情况。
最后界面自定义就要靠Lync的SDK了。
登录相关的几个关键函数
1. lyncClient.BeginInitialize(InitializeCallback, null);
InitializeCallback:初始化回调函数,在此委托函数中我们要自定义lync的初始化事件。一般在此回调函数中都要包括LyncClient.EndInitialize(IAsyncResult asyncResult) 系统函数,来结束初始化。
2. lyncClient.BeginSignIn(userUri,domainAndUsername, password, SignInCallback, null)
1)userUri:SIP,例如“sip:lynctest1@consoto.com”
2)domainAndUsername:UPN,例如:“lynctest1@consoto.com”,一般情况下,userUri与domainAndUsername除了前缀“sip”之外,其他的都是一致的。
3)password :登录密码。
4)SignInCallback:异步回调委托函数,在此委托函数中我们要自定义用户登录成功后的处理事件。一般在此回调函数中都要包括LyncClient .EndSignIn (IAsyncResult asyncResult)系统函数,来处理登录后的状态。
3. lyncClient.StateChanged:登录状态改变事件句柄;
4. lyncClient.CredentialRequested:登录状态改变事件句柄;
5. lyncClient.SignInDelayed:当在登录及自动唤醒产生延迟时的处理事件句柄
转载于:https://blog.51cto.com/yaojiwei/1441445
Lync开发实例3—自定义客户端相关推荐
- Android软件开发实例:用客户端写博客
标题:在Android上通过客户端写博客软件开发实例 作者:肖凤斌 binsweet@gmail.com 关注Android很久了,年初买了G4,但一直没有机会尝试Android上的软件开发. 自己有 ...
- SharePoint 2010开发实例精选——通过客户端对象模型删除页面上的Web部件
下面的例子是在控制台应用程序中使用客户端对象模型,为了在控制台程序中使用ClientContext,我们需要添加两个dll引用到我们的项目中.Microsoft.SharePoint.Client.d ...
- java 微信自定义菜单开发_微信公众号开发之设置自定义菜单实例代码【java版】...
本实例是为了实现在管理后台实现微信菜单的添加删除管理. 1.首先我们需要新建一个数据库表用于存放menu菜单项 可包含的字段有id.父类id.name.排序.是否显示.类型(view.click).链 ...
- Android开发实例-Android平台手机新闻客户端
Android开发实例<Android平台手机新闻客户端>是基于Android4.0及以上平台的一款新闻类手机应用,应用运行效果如下所示: Android开发实例课程主要介绍运行于Andr ...
- C#软件开发实例.私人订制自己的屏幕截图工具(九)使用自定义光标,QQ截图时的光标
本实例全部文章目录 (一)功能概览 (二)创建项目.注册热键.显示截图主窗口 (三)托盘图标及菜单的实现 (四)基本截图功能实现 (五)针对拖拽时闪烁卡顿现象的优化 (六)添加配置管理功能 (七)添加 ...
- 1、NC65及NC63 开发实例-附件管理操作(自定义附件)
** 1.NC65及NC63 各类开发实例 附件管理(自定义附件) ** > 自定义附件管理按钮实现当前单据附件上传 代码: package nc.ui.hfet.hfet_fininvoice ...
- 演练:开发和使用自定义服务器控件
更新:2007 年 11 月 此演练演示如何创建和编译自定义 ASP.NET 服务器控件以及如何在页中使用该控件. 通过此演练,您将学会如何执行以下任务: 创建一个 ASP.NET 服务器控件. 向该 ...
- 开发和使用自定义服务器控件
ASP.NET 演练:开发和使用自定义服务器控件 此演练演示如何创建和编译自定义 ASP.NET 服务器控件以及如何在页中使用该控件. 通过此演练,您将学会如何执行以下任务: 创建一个 ASP.NET ...
- php 微信开发 菜单,微信公众号中个性化菜单的开发实例
微信公众号中个性化菜单的开发实例 个性化菜单让公众号的不同用户群体看到不一样的自定义菜单.该接口开放给已认证订阅号和已认证服务号,个性化菜单要求用户的微信客户端版本在iPhone6.2.2,Andro ...
最新文章
- JavaScript运算符:递增递减运算符前置和后置的区别
- 搭建EJB3开发环境
- UVa 242 邮票和信封(完全背包)
- java传送字符到前端_mina实现服务器与客户端传送对象或字符串
- Tiny6410之重定位代码到SDRAM
- Javascript模块模式学习分享
- 算法题丨Next Permutation
- SAP License:ERP横向集中部署还是纵向集中部署
- win10计算机错误代码,Win10错误代码:0xc00000f 解决方案
- python实现web服务器_python实现静态web服务器
- vue dve环境static无法被外部访问_vue项目性能优化(代码层面)
- the database profile could not loaded. Check log for details
- Java面试题总结 - Java多线程篇(附答案)
- 模型计算机微指令总表,基于微程序控制器的模型计算机设计
- DNS与GTM协同工作原理
- 华为微认证华为云数据库服务实践稳过 笔记资料
- 们指点如果在android平台下开启jbox2d的debugDraw功能
- ajax get传递数组参数吗,ajax 传递数组参数
- win10更新服务打开后为什么服务拒绝访问
- win8文件操作以及音视频的应用
热门文章
- 调用restful接口_SSM实现RESTFul风格的CURD操作
- vue、bus 使用遇到的坑,组件之间无法传值;vue、bus 第一次获取不到值,后面再点击重复执行
- vue @click 如何绑定多个方法
- PHP+SQLite3简约网址导航、书签管理器网站源码
- 独立版TP空间内核|知识付费小程序源码
- WP百度搜索推送管理插件
- DOM Element节点类型详解
- Mysql: LBS实现查找附近的人 (两经纬度之间的距离)
- 不刷新改变URL: pushState + Ajax
- Ubuntu 13.10/12.10/12.04 用户如何升级到 Ubuntu 14.04