<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-2158853543793456735</atom:id><lastBuildDate>Thu, 31 May 2012 00:58:40 +0000</lastBuildDate><category>Caller Name</category><category>IP-IP GW</category><category>RTCP</category><category>PBXnSIP</category><category>Outlook</category><category>NET</category><category>SEACUG</category><category>Cisco</category><category>Headsets</category><category>Avaya</category><category>Cisco ISR</category><category>Gateway</category><category>UC</category><category>OCS Third party applications</category><category>UCDoers</category><category>Unified Messaging</category><category>CIPTUG</category><category>OCS Reporting</category><category>F5 Big-IP</category><category>Polycom</category><category>Evangelyze</category><category>CS 14</category><category>IP video</category><category>MOC</category><category>CME</category><category>Lync</category><category>VoIPNorm sneeze page</category><category>Mobility</category><category>mythbusters</category><category>E.164</category><category>MVP</category><category>Stuff</category><category>Poll</category><category>load balancer</category><category>Interop</category><category>VoIP</category><category>OSC</category><category>Dial Plan</category><category>OC Devices</category><category>OC Phone Edition</category><category>Alternate Routing</category><category>Pre Call Diagnostic Tool</category><category>OCS R2</category><category>Plantronics</category><category>Vista</category><category>Microsoft</category><category>VoiceCon</category><category>XP</category><category>Exchange</category><category>SIM ring</category><category>VirtualBox</category><category>Review</category><category>Tandberg</category><category>User Groups</category><category>DR Rez</category><category>Ringback</category><category>UCVUG</category><category>Live Meeting</category><category>911 Enable</category><category>OCS API's</category><category>technet</category><category>Wave 14</category><category>NW User Group</category><category>UM</category><category>SBC</category><category>UCIF</category><category>Virtualization</category><category>Cisco Press</category><category>Tanjay</category><category>CUCM</category><category>HP</category><category>UCMA 3.0</category><category>Updates</category><category>Predictions</category><category>QoE</category><category>Response Groups</category><category>Etc</category><category>Communicator</category><category>Custom Tabs</category><category>Gadgets</category><category>E911</category><category>OCS CUCM</category><category>UC Doers</category><category>OIP</category><category>Announcements</category><category>Blogging</category><category>OCS</category><category>Welcome</category><category>Cisco Gateways</category><category>CUPS</category><category>Failover</category><category>Windows Live Messenger</category><category>QoS</category><category>Discussion</category><category>CUCIMOC</category><category>Mediation Server</category><category>Exchange 2010</category><category>MTP</category><title>VoIPNorm's Unified Communications Blog</title><description>Unified Communications and a whole bunch of other stuff. BTW, I also work at Microsoft.</description><link>http://voipnorm.blogspot.com/</link><managingEditor>noreply@blogger.com (Chris Norman)</managingEditor><generator>Blogger</generator><openSearch:totalResults>300</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/VoipnormsUnifiedCommunicationsBlog" /><feedburner:info uri="voipnormsunifiedcommunicationsblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>VoipnormsUnifiedCommunicationsBlog</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-5819785354737498862</guid><pubDate>Wed, 30 May 2012 17:46:00 +0000</pubDate><atom:updated>2012-05-30T15:04:50.418-07:00</atom:updated><title>Create a Caption and Win errr Something</title><description>&lt;p&gt;You may have noticed the new photo to the right hand side of this post. This is deployment photo of a customer retiring a Cisco phone with a new Polycom CX600 deployed on Lync.&lt;/p&gt; &lt;p&gt;If you can create a better caption than mine (as judged by me, I am very impartial), you could win something (I have no idea yet what that is) I have stored away in my treasure trove of stuff. Worst case you win a Ethernet cable, best case you win a webcam. I have a mixed bag. Your comment will also go in place of my own on VoIPNorm.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-MYCtGuDauzY/T8Zc7AYPyvI/AAAAAAAAAvs/nSMwgrtmJxU/s1600-h/photo%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="photo" border="0" alt="photo" src="http://lh6.ggpht.com/-u3WzrnvqK_g/T8Zc7a1yVNI/AAAAAAAAAv0/UH1824_be-k/photo_thumb.jpg?imgmax=800" width="244" height="183"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Just add your caption in the comments and I will announce the winner at the end of June. Make sure to identify yourself with your comment so I can send you the prize if you win.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt; &lt;p&gt;&lt;strong&gt;****UPDATE: We now have prizes.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Prize pool so far:&lt;/p&gt; &lt;p&gt;Microsoft LifeCam Cinema&lt;/p&gt; &lt;p&gt;Polycom CX100&lt;/p&gt; &lt;p&gt;Windows 2008 R2 Administrators Pocket Reference&lt;/p&gt; &lt;p&gt;Thanks to Graham Walsh at Polycom for sourcing a Polycom CX100.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-5819785354737498862?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/c7w0Jnwq658" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/c7w0Jnwq658/create-caption-and-win-errr-something.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/-u3WzrnvqK_g/T8Zc7a1yVNI/AAAAAAAAAv0/UH1824_be-k/s72-c/photo_thumb.jpg?imgmax=800" height="72" width="72" /><thr:total>21</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/05/create-caption-and-win-errr-something.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-7099933148706433618</guid><pubDate>Tue, 22 May 2012 22:05:00 +0000</pubDate><atom:updated>2012-05-22T15:05:52.941-07:00</atom:updated><title>Lync 2010 Mobile and Desktop Click-to-Join for Non-Enterprise Voice Users</title><description>&lt;p&gt;I was recently helping out some folks with a deployment and wanted to get down this information in one place rather than constantly searching for it. So here it is. If you notice any errors in behavior that I have documented please let me know.&lt;/p&gt; &lt;p&gt;There are currently two different methods of configuring &lt;em&gt;&lt;u&gt;Click-to-Join&lt;/u&gt;&lt;/em&gt; for joining conferences. The method varies for &lt;u&gt;&lt;em&gt;Non-Enterprise Voice&lt;/em&gt;&lt;/u&gt; enabled users depending on whether you are using the desktop clients or mobile. I have heard people say repeatedly that you need to enable EV for Click-to-Join, but this is not true for either the desktop or mobile clients. The information below is taken from my own experimenting as well other sources that were very helpful in pulling this information together.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Desktop (includes Web App, Lync Attendee, Lync 2010)&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;This works the same for Web App or the desktop clients (either Lync 2010 or the Attendee client) for Click-to-Join. Basically, you need to create a static route that leverages one of you Mediation Server Pools. This allows non-EV enabled and Anonymous users the ability to use the Click-to-Join feature.&lt;/p&gt; &lt;p&gt;Positives-&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Allows Non-EV users to Click-to-Join.&lt;/li&gt; &lt;li&gt;If a Tel URI has been configured for the user it is used in the From in the SIP header.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Challenges -&lt;/p&gt; &lt;ul&gt; &lt;li&gt;No control over what the user can dial with Lync. Basically everything is sent to the Mediation Server as-is. If you have address book or dial plan normalization in place that normalizes number to E.164 this is what is sent when selecting numbers from within the Lync client. You can remove the plus sign however using PowerShell so some small relief but not much. Most of your translations and number manipulation of the called number will need to be carried out in a gateway or other system such as a PBX.&lt;/li&gt; &lt;li&gt;No adherence to Voice Polices. This is not feature related but more call authorization. You have no control in Lync what number the user dials and all calls will be passed to the Mediation Server. All call authorization will need to be completed at the gateway based on the caller ID or some identifiable SIP field that the gateway can recognize as coming form the Mediation Server.&lt;/li&gt; &lt;li&gt;Uses default gateway. If you are using DNS load balancing for your gateways this is much less an issue, but the default gateway for the Mediation Server pool defined in Topology Builder is what the static route will use to send calls. If you have defined gateways using IP addresses this will limit you to one gateway and therefore limit redundancy. Redundancy may not be a huge concern for this feature but it is something to be aware of.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;em&gt;&lt;strong&gt;References:&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;Remove the plus PowerShell command:&lt;/em&gt;&lt;/p&gt; &lt;p&gt;Set-CsTrunkConfiguration -RemovePlusFromURI&lt;/p&gt; &lt;p&gt;&lt;em&gt;Handy Static Route creation blog post:&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.confusedamused.com/notebook/lync-dial-in-conferencing-static-route-configuration/" href="http://www.confusedamused.com/notebook/lync-dial-in-conferencing-static-route-configuration/"&gt;http://www.confusedamused.com/notebook/lync-dial-in-conferencing-static-route-configuration/&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Lync Mobile&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Lync Mobile is quite a bit easier to configure and has less challenges . Firstly, a Static route is not required for Lync Mobile and Click-to-Join will adhere to Lync routing, translation rules and Voice Policies. Something to note is that Call via Work will require EV enablement.&lt;/p&gt; &lt;p&gt;Positives-&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Lync Mobile only requires that a Voice Policy be applied to the user account for enablement of Click-to-Join (outside of normal dial plan configuration such as routes etc.).&lt;/li&gt; &lt;li&gt;Adheres to voice routing and translation rules.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Challenges&lt;/p&gt;  &lt;ul&gt; &lt;li&gt;A non-EV user that requires a Voice Policy can only be set using PowerShell.&lt;/li&gt; &lt;li&gt;The From header field in the SIP message is the user name SIP URI and not a telephone number. Depending on your gateway this may present an issue. A simple fix (without gateway configuration) is to suppress the Caller ID with a trunk ID via the Trunk Configuration under the Lync Control Panel UI. By selecting &lt;strong&gt;Suppress&lt;/strong&gt; CallerID and entering an alternate ID this should easily resolve this issue. This will alter the From field to what ever number you enter for the Trunk. &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;From the Lync &lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=28355"&gt;Mobile Deployment Guide&lt;/a&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;· Do you want users who are not enabled for Enterprise Voice to be able to use Click to Join to join conferences?&lt;/strong&gt; &lt;p&gt;For users to have access to mobility features and Call via Work, they must be enabled for Enterprise Voice. However, users who are not enabled for Enterprise Voice can join conferences by clicking the link on their mobile device if they have an appropriate voice policy assigned to them. You can either assign a specific voice policy to these users or make sure that a global or site level policy exists that applies to them. The voice policy you assign must have public switched telephone network (PSTN) usage records and routes that define the areas to which users can dial out to join a conference. For details about setting voice policy, PSTN usage records, and routes, see Configuring Voice Policies, PSTN Usage Records, and Voice Routes. &lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt;  &lt;p&gt;Mobile users who want to use Click to Join require a voice policy, along with the related PSTN usage records and voice routes, because clicking the link on the mobile device results in an outbound call from Lync Server 2010. &lt;/p&gt;&lt;/blockquote&gt; &lt;ul&gt;&lt;!--EndFragment--&gt;&lt;/ul&gt; &lt;p&gt;&lt;em&gt;&lt;strong&gt;References:&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;Apply Voice Policy for Non-EV user with PowerShell-&lt;/em&gt;&lt;/p&gt; &lt;p&gt;Grant-CsVoicePolicy -Identity &amp;lt;UserIdParameter&amp;gt; [-PolicyName &amp;lt;String&amp;gt;]&lt;/p&gt; &lt;p&gt;&lt;a title="http://technet.microsoft.com/en-us/library/gg398828.aspx" href="http://technet.microsoft.com/en-us/library/gg398828.aspx"&gt;http://technet.microsoft.com/en-us/library/gg398828.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-7099933148706433618?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/7PeEyPxCz7I" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/7PeEyPxCz7I/lync-2010-mobile-and-desktop-click-to.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>1</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/05/lync-2010-mobile-and-desktop-click-to.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-6583063418946881942</guid><pubDate>Wed, 16 May 2012 23:59:00 +0000</pubDate><atom:updated>2012-05-17T08:36:51.261-07:00</atom:updated><title>Device Review: HP 4120 Lync Phone Edition</title><description>&lt;p&gt;As most people are already aware HP announced their Lync IP phones quite a while ago. I finally got one today so I thought I would post a couple of quick pictures of what they look like and also a comparison of what the Aastra 6725ip looks like side by side.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-eym0xBs3kfY/T7Q_P1s00fI/AAAAAAAAAu4/A8oWhh1e8uM/s1600-h/HP%252520Phone%2525202%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="HP Phone 2" border="0" alt="HP Phone 2" src="http://lh3.ggpht.com/-K63B2ClEtMo/T7Q_QA7aGDI/AAAAAAAAAvA/n49l4gdVjxE/HP%252520Phone%2525202_thumb.jpg?imgmax=800" width="244" height="184"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;There is considerable size difference in the phone models between the two vendors as seen below.&lt;/p&gt;&lt;a href="http://lh4.ggpht.com/-mEpBTvyitUs/T7Q_QnzlX7I/AAAAAAAAAvI/UNjzvCOl9H0/s1600-h/HP%252520Phone%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="HP Phone" border="0" alt="HP Phone" src="http://lh6.ggpht.com/-Hls8lo3phRU/T7Q_RC0hstI/AAAAAAAAAvQ/fT1ivnHfPhk/HP%252520Phone_thumb.jpg?imgmax=800" width="244" height="184"&gt;&lt;/a&gt;  &lt;p&gt;I happen to like the size and key layout of the HP phone although if you’re short on desk space it might be worth considering a smaller option. To me the phone feels more executive just because of the size of it. I think the size also changes the acoustics a little and the stand really allows a great upright position. The Aastra phone sits pretty flat and I find myself leaning over to use it. The HP phone was very upright and seems to meet the eye a little better because of the changed angle.&lt;/p&gt; &lt;p&gt;My first few calls have been pretty good and I like the sound quality. I did a direct comparison with against the Aastra 6725ip using the Lync test service and I think the HP phone was more than comparable in this area. Of course the firmware was identical so any comparison of features would be a waste of time so its more a question of physical attributes if deciding between various phone vendors.&lt;/p&gt; &lt;p&gt;One thing I noticed when I plugged in the Ethernet cables was that I had the LAN and PC cables in the wrong ports. The phone firmware told me that this was the case which I thought was neat but all Lync Phone Edition devices should function the same way regardless of vendor. I have not seen this feature with other popular platforms so I thought it was worthy of a mention.&lt;/p&gt; &lt;p&gt;Overall another great option with the same familiar Lync Phone Edition firmware.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-6583063418946881942?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/ScRk27zk-qw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/ScRk27zk-qw/device-review-hp-4120-lync-phone.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-K63B2ClEtMo/T7Q_QA7aGDI/AAAAAAAAAvA/n49l4gdVjxE/s72-c/HP%252520Phone%2525202_thumb.jpg?imgmax=800" height="72" width="72" /><thr:total>7</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/05/device-review-hp-4120-lync-phone.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-7318446612500775339</guid><pubDate>Wed, 02 May 2012 22:16:00 +0000</pubDate><atom:updated>2012-05-02T15:16:44.666-07:00</atom:updated><title>Lync Direct SIP Interoperability Note: CUCM SIP 503 Service Unavailable and 404 Not Found Errors</title><description>&lt;p&gt;Getting the settings right on the Cisco Unified Communications Manager (CUCM)side of a SIP trunk is sometimes a fine art and there are certainly many things that can go wrong. This week I ran across two errors that at first glance were not completely obvious as to what the issue was.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;503 Service Unavailable&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Service unavailable is a misleading error to say the least. Just when you think that you have everything setup right things don’t work as they should. Well at least this time around it half worked. Inbound calls to Lync from CUCM seemed to work just fine but outbound calls to CUCM failed. As the screen shot below shows the Device Pool is set just like the &lt;a href="http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&amp;amp;id=26800"&gt;documentation shows&lt;/a&gt; with the Device Pool set to default. &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-fCEBB9jZUmI/T6GyRrdf2OI/AAAAAAAAAuU/RlouonkoULY/s1600-h/image%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-q1PR_WgNXUE/T6GySJB3EmI/AAAAAAAAAuc/w4leQkqK2KA/image_thumb%25255B1%25255D.png?imgmax=800" width="484" height="98"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Well this is all good in a lab that has one CUCM server but in a production environment that has multiple CUCM subscribers the default Device Pool may not be setup with the correct Communications Manager Group (CMG). In the case I am describing the default Device Pool had the incorrect CMG defined and even though calls from CUCM to Lync worked fine, calls from Lync to CUCM failed. They generated a 503 Service Unavailable error message from CUCM when looking at Snooper Traces on the Lync Mediation Server. &lt;/p&gt; &lt;p&gt;So the lesson learned is always ensure you have the correct CMG defined in your device pool you associate to your SIP trunk. The Servers defined in the CMG are the same CUCM servers/gateways that are defined in your Lync Topology.&lt;/p&gt; &lt;p&gt;&lt;a title="http://voipnorm.blogspot.com/2012/01/adding-cucm-subscribers-to-lync.html" href="http://voipnorm.blogspot.com/2012/01/adding-cucm-subscribers-to-lync.html"&gt;http://voipnorm.blogspot.com/2012/01/adding-cucm-subscribers-to-lync.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;404 Not Found&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This error although a little simpler to understand doesn’t mean that the solution is all that easy to find. Basically a 404 means either the line number doesn’t exist, there is not a matching route pattern or there are some Calling Search Space (CSS) issues with your CUCM configuration.&lt;/p&gt; &lt;p&gt;Probably the most complex is Calling Search Space (CSS) issues. Although the CUCM Dialed Number Analyzer may seem as though things should work chances are CSS issue may still be the issue. Best bet is to create Partitions and Calling Search Spaces just for the inbound calls setting on your Lync SIP Trunk in CUCM so you understand exactly what is occurring with calling permissions.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-dvGcsnsixdI/T6GyScIsF8I/AAAAAAAAAuk/POuTv_ise30/s1600-h/image%25255B7%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-alEeET4acF4/T6GyS3xknkI/AAAAAAAAAus/_0SiZhDMTWw/image_thumb%25255B3%25255D.png?imgmax=800" width="503" height="139"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Hopefully this sheds some light on a couple of common errors I have seen in CUCM Lync Direct SIP deployments.&lt;/p&gt; &lt;p&gt;Comments welcomed.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-7318446612500775339?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/YfPUj5wHfdw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/YfPUj5wHfdw/lync-direct-sip-interoperability-note.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-q1PR_WgNXUE/T6GySJB3EmI/AAAAAAAAAuc/w4leQkqK2KA/s72-c/image_thumb%25255B1%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/05/lync-direct-sip-interoperability-note.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-320901134780253086</guid><pubDate>Sun, 29 Apr 2012 17:24:00 +0000</pubDate><atom:updated>2012-04-29T10:24:34.965-07:00</atom:updated><title>Deploying Lync Jump Start Video Series</title><description>This is basically a three day course captured in videos. This is a great resource that folks can consume at their own pace.

&lt;br /&gt;
&lt;br /&gt;
Text from the Next Hop Site:

&lt;br /&gt;
&lt;br /&gt;
"Check out this three-day course on Lync Server 2010 Configuration and Administration, which Brian R. Ricks and Aaron Steele presented to a worldwide audience of over 500 participants. This 18-part series covers all major Lync Server features and configurations, which will help students prepare for the MC-TS 70-664 exam. During each session, a unique configuration and administration is discussed and presented.
 
&lt;br /&gt;
&lt;br /&gt;
A number of people answered participant’s questions during the original live stream. Some of those questions are presented during these sessions.&lt;br /&gt;
&lt;br /&gt;

 
The largest challenge in the original course was for the presenters working within their demo labs. If you prefer to interact with the labs or require hands-on work with the product, you may want to engage with a training partner in your area. Although the course is modeled after instructor-led courses, it lacks the hands-on, student lab work that is typical of these courses."


&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://blogs.technet.com/b/nexthop/archive/2012/04/27/deploying-lync-jump-start-series.aspx"&gt;http://blogs.technet.com/b/nexthop/archive/2012/04/27/deploying-lync-jump-start-series.aspx&lt;/a&gt;

&lt;br /&gt;
&lt;br /&gt;
This is really great content. Check it out.

&lt;br /&gt;
&lt;br /&gt;
VoIPNorm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-320901134780253086?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/TpSzimbg51g" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/TpSzimbg51g/deploying-lync-jump-start-video-series.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/04/deploying-lync-jump-start-video-series.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-8906028142033073439</guid><pubDate>Thu, 19 Apr 2012 21:11:00 +0000</pubDate><atom:updated>2012-04-19T20:25:08.418-07:00</atom:updated><title>IM and Presence The New Dial Tone?</title><description>&lt;p&gt;When I see proclamations that “IM and Presence is the new dial tone” it makes me wonder who’s been living under a rock since the early 2000’s.&amp;nbsp; I went back through some of the earlier PPT’s in the Microsoft archives and found these starting at 2006 (there may be older I am sure,LCS predates 2006). 6 years later and some companies still don’t realize that UC isn't just about technology but the people and the experience they have. Presence lays the foundation because it’s the first visual queue you have when initiating communications from a device. &lt;/p&gt; &lt;p&gt;So there is nothing new about laying the foundation with presence and I struggle with the correlation to dial tone. Dial tone is neither visual or foundational but rather a function of a legacy way of thinking. Which tells me that either in 2006&amp;nbsp; some people where way ahead of their time or in 2012 some are way behind.&lt;/p&gt; &lt;p&gt;2006&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-BM3GN02_OLs/T5B_jSx6FbI/AAAAAAAAAtU/2IgpZ1YXqMM/s1600-h/clip_image002%25255B4%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://lh6.ggpht.com/-_D-sycewzMs/T5B_jsv_TPI/AAAAAAAAAtc/ei5OuH9fxgc/clip_image002_thumb%25255B1%25255D.jpg?imgmax=800" width="520" height="389"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;2008&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-JDr8HmAaSIY/T5B_j7ZZkwI/AAAAAAAAAtk/_uxR5OFr2PI/s1600-h/clip_image001%25255B4%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://lh3.ggpht.com/-nlulEtNreu8/T5B_kNdqOoI/AAAAAAAAAts/Y8H6kmfKzBs/clip_image001_thumb%25255B1%25255D.jpg?imgmax=800" width="526" height="396"&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;2009&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-4pFXQhxfhio/T5B_lGY9O0I/AAAAAAAAAt0/Wyt-NxbjMqs/s1600-h/image%25255B4%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/-An1YNKzXzV4/T5B_lg8TDDI/AAAAAAAAAt8/xjIWPJBp5tw/image_thumb%25255B2%25255D.png?imgmax=800" width="528" height="397"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;2011&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-G43p49Mm2dc/T5B_mSdRElI/AAAAAAAAAuE/lKvLP28O0u8/s1600-h/image%25255B9%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-POcrohcFrDE/T5B_m8fbYNI/AAAAAAAAAuM/w0XOly13k2s/image_thumb%25255B5%25255D.png?imgmax=800" width="530" height="398"&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;VoIPNorm&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-8906028142033073439?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/F9nyZ5CEtrA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/F9nyZ5CEtrA/im-and-presence-new-dial-tone.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/-_D-sycewzMs/T5B_jsv_TPI/AAAAAAAAAtc/ei5OuH9fxgc/s72-c/clip_image002_thumb%25255B1%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/04/im-and-presence-new-dial-tone.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-5582027656773265483</guid><pubDate>Wed, 11 Apr 2012 00:17:00 +0000</pubDate><atom:updated>2012-04-10T17:17:35.102-07:00</atom:updated><title>Lync Recording Default Directory</title><description>&lt;p&gt;Ever wondered where the default recording directory Registry setting for Lync Recording is held? Well here it is.&lt;/p&gt; &lt;p&gt;HKEY_CURRENT_USER\Software\Microsoft\Communicator\Recording&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-OzmK7ckJ4P8/T4TNnGiD9sI/AAAAAAAAAtE/gABY7Qqb_GQ/s1600-h/image%25255B7%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-WJnXXsM1CkU/T4TNnl9p2_I/AAAAAAAAAtM/2yFCfznnrfo/image_thumb%25255B3%25255D.png?imgmax=800" width="484" height="274"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;There are two settings. First is the default recording directory (Root) and also the publishing directory (Export). Both held under the same Key area.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-5582027656773265483?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/3tyyuYZHbb0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/3tyyuYZHbb0/lync-recording-default-directory.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-WJnXXsM1CkU/T4TNnl9p2_I/AAAAAAAAAtM/2yFCfznnrfo/s72-c/image_thumb%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/04/lync-recording-default-directory.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-6533964641500380934</guid><pubDate>Mon, 02 Apr 2012 19:02:00 +0000</pubDate><atom:updated>2012-04-02T12:02:42.578-07:00</atom:updated><title>Forefront Security for Lync 2010</title><description>&lt;h5&gt;&lt;font style="font-weight: normal"&gt;In case you missed this or were confused about some of the tweets that have been going around Forefront now supports Lync 2010. The KB article calls out OCS in the title but in the verbiage includes Lync 2010. I know some folks have been waiting on this so its good to see its now available.&lt;/font&gt;&lt;/h5&gt; &lt;h5&gt;Features of the hotfix rollup&lt;/h5&gt;Hotfix Rollup 4 allows FSOCS to be installed on Lync 2010 (running on Windows 2008 R2 or Windows 2008 SP2 x64) in addition to Office Communications Server 2007 and Office Communications Server 2007 R2. As the feature set and patch level are the same as RU3, customers who have already deployed RU3 can update but are not required to do so. &lt;p&gt;&lt;a title="http://support.microsoft.com/kb/2694730" href="http://support.microsoft.com/kb/2694730"&gt;http://support.microsoft.com/kb/2694730&lt;/a&gt;&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-6533964641500380934?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/8aBeAzSeNFw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/8aBeAzSeNFw/forefront-security-for-lync-2010.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>2</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/04/forefront-security-for-lync-2010.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-953791903429263542</guid><pubDate>Sat, 24 Mar 2012 00:01:00 +0000</pubDate><atom:updated>2012-03-23T17:01:03.915-07:00</atom:updated><title>Creating a Backup Response Group for Lync Pool Failover</title><description>&lt;p&gt;One of the common issues I have come across is the ability to have a failover Response Group Service when your primary Lync Pool becomes unavailable. Users have the ability to register to a secondary pool so they can still make and receive calls, but Response Groups currently have no failback or replication ability across pools to allow seamless functionality.&lt;/p&gt; &lt;p&gt;So how do we over come RGS failure? The basic solution I come up with is to create a second RGS on another pool and translate the inbound primary DID RGS number to a secondary DID number. This allows the incoming RGS number to be rerouted to an alternate Mediation Server. I guess you can call this a workaround of sorts but at the end of the day you want an inbound call to be answered by something rather than dead air and this workaround does provide a solution. There are a few issues that present themselves when considering a backup solution:&lt;/p&gt; &lt;p&gt;1) No two RGS work flows can have the same Tel URI.&lt;/p&gt; &lt;p&gt;2) For the purposes of outbound routing a gateway can only be associated with one Mediation Server or Mediation Pool.&lt;/p&gt; &lt;p&gt;3) Agents that were part of the original RGS call flow can not be part of our backup RGS unless they can still register with the Primary registrar, which we are assuming is down. This would mean that the RGS agents would now be registering with their secondary registrar and therefor have no presence availability. So for the purposes of this discussion we will assume that once the primary registrar pool is down our agents that were part of the original RGS are down for the purposes of taking part in the RGS back up service.&lt;/p&gt; &lt;p&gt;To work around these issue we need to consider three things. How do we translate our RGS inbound DID to a new number, how does the Mediation Server accepts inbound connections from Gateways not directly associated with it and lastly what do we do with the call once we have it in a new RGS service.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-egPXetOk5SY/T20OvYVZAvI/AAAAAAAAAs0/q5EvdWcmo40/s1600-h/image5.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-MM9g4cK-h7E/T20Ovy5CssI/AAAAAAAAAs8/Ey9ct67Eh5g/image_thumb3.png?imgmax=800" width="530" height="399"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt; In our example we have two Mediation Server pools collocated with my Front Ends. I mentioned that outbound Mediation Servers are limited in the fact you can only associated a gateway against one pool but inbound a Mediation server will accept an inbound request from a gateway as long as it is part of the topology. It’s a handy little know fact that I come across when I wrote “&lt;a href="http://voipnorm.blogspot.com/2012/01/adding-cucm-subscribers-to-lync.html"&gt;Adding CUCM subscribers to Lync Topology Builder” post.&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Below is a basic set of outbound dial peers and translation rules that can be used for a Cisco gateway setup to provide DID service to Lync. In this case I am providing a basic route to a destination starting with 425 and only translating calls to the response group DID when using the backup dial peer. Its nothing to complicated. The preference command allow dial peers to hunt for an available Mediation Server. If you using AudioCodes or NET or another certified gateway they should all be able to provide similar hunt group functionality.&lt;/p&gt; &lt;p&gt;!&lt;br&gt;voice translation-rule 203&lt;br&gt;description Translate RGS to backup RGS&lt;br&gt;rule 1 /4255555551/ /4255555552/&lt;br&gt;!&lt;br&gt;voice translation-profile BackUpRGS&lt;br&gt;translate called 203&lt;/p&gt; &lt;p&gt;!&lt;br&gt;!dial-peer voice 101 voip&lt;br&gt;description to Lync Mediation server&lt;br&gt;preference 1&lt;br&gt;destination-pattern 425.......&lt;br&gt;session protocol sipv2&lt;br&gt;session target ipv4:10.10.10.11&lt;br&gt;session transport tcp&lt;br&gt;dtmf-relay rtp-nte&lt;br&gt;codec g711ulaw&lt;br&gt;no vad&lt;br&gt;!&lt;br&gt;!&lt;br&gt;dial-peer voice 102 voip&lt;br&gt;description to Lync Backup Mediation server&lt;br&gt;preference 10&lt;br&gt;translation-profile outbound BackUpRGS&lt;br&gt;destination-pattern 425.......&lt;br&gt;session protocol sipv2&lt;br&gt;session target ipv4:10.10.20.12&lt;br&gt;session transport tcp&lt;br&gt;dtmf-relay rtp-nte&lt;br&gt;codec g711ulaw&lt;br&gt;no vad&lt;/p&gt; &lt;p&gt;So now that you have delivered the number to a backup Mediation Server to be resolved it’s a matter of building a new RGS workflow to satisfy the need of the business. Of course this is a DR situation so your intention of whether to deliver it to a live person my differ but you have options of where to send the call:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Create a agent group with new agents that will be available on the backup pool.&lt;/li&gt; &lt;li&gt;Exchange UM group mailbox&lt;/li&gt; &lt;li&gt;Exchange AA&lt;/li&gt; &lt;li&gt;PSTN number to an alternate service with announcements to let callers know they are being rerouted&lt;/li&gt; &lt;li&gt;etc, etc etc&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;So lots of options.&lt;/p&gt; &lt;p&gt;This is really just a solution born out of straight forward telecom engineering rather than a grand workaround. But if your new to telecom engineering this may be something that you hadn't considered before. Sometimes backup solutions are not all that fancy but still meet business requirements. Just because the RGS is not replicated across pools doesn’t mean your dead in the water.&lt;/p&gt; &lt;p&gt;What has been your back up to RGS service interruptions?&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-953791903429263542?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/qLpfFo2rV60" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/qLpfFo2rV60/creating-backup-response-group-for-lync.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-MM9g4cK-h7E/T20Ovy5CssI/AAAAAAAAAs8/Ey9ct67Eh5g/s72-c/image_thumb3.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/03/creating-backup-response-group-for-lync.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-5679227660934146364</guid><pubDate>Thu, 08 Mar 2012 23:21:00 +0000</pubDate><atom:updated>2012-03-08T15:57:53.615-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Mobility</category><category domain="http://www.blogger.com/atom/ns#">Cisco</category><title>Cisco’s Mobility Chaos</title><description>&lt;p&gt;We have all seen the Cisco mobile post by &lt;a href="http://blogs.cisco.com/collaboration/maximizing-mobile-collaboration-for-the-post-pc-era/#more-54754"&gt;Michael Smith&lt;/a&gt; about how he was underwhelmed by Microsoft’s Lync mobile solution or the Cisco versus Microsoft &lt;a href="http://www.networkworld.com/community/blog/when-where-and-how-cisco-versus-microsoft-unified-communications"&gt;post by Zeus&lt;/a&gt; but what are they not telling you about the Cisco’s solution? What does Cisco not want you to know?  &lt;p&gt;To quote Michaels blog, “With Cisco Jabber, the UC capabilities are consistent across PC, Mac, tablets and phones.” But is it really? Lets take a look.  &lt;p&gt;&lt;strong&gt;Cisco’s PC and MAC Story&lt;/strong&gt;  &lt;p&gt;While this blog post is mainly focused on Mobility I just wanted to highlight that Cisco’s patch work of clients tie you to their only available web conferencing solution and how Michaels statement really is a stretching the truth. And to be exact if I were to remove WebEx because Michael distinctly calls out Jabber it looks some what of a different story  &lt;p&gt;With WebEx support:&lt;/p&gt; &lt;table style="line-height: normal; border-collapse: collapse" border="0" cellspacing="0" cellpadding="0" width="392"&gt; &lt;colgroup&gt; &lt;col style="width: 95pt; mso-width-source: userset; mso-width-alt: 4608" width="126"&gt; &lt;col style="width: 77pt; mso-width-source: userset; mso-width-alt: 3766" width="103"&gt; &lt;col style="width: 122pt; mso-width-source: userset; mso-width-alt: 5924" width="162"&gt; &lt;tbody&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="126"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="102"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Windows&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="162"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Mac&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Presence&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;IM&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;VoIP&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Voicemail&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Video&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC or WebEx&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;WebEx only&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Desktop Sharing&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;App Sharing&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;WebEx&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;WebEx&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Web Conferencing&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;WebEx&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;WebEx&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Federation&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;IM/P Only&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;IM/P Only&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;VPN Less Connect&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;No&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;No&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Without WebEx:&lt;/p&gt; &lt;table style="line-height: normal; border-collapse: collapse" border="0" cellspacing="0" cellpadding="0" width="392"&gt; &lt;colgroup&gt; &lt;col style="width: 95pt; mso-width-source: userset; mso-width-alt: 4608" width="126"&gt; &lt;col style="width: 77pt; mso-width-source: userset; mso-width-alt: 3766" width="103"&gt; &lt;col style="width: 122pt; mso-width-source: userset; mso-width-alt: 5924" width="162"&gt; &lt;tbody&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="126"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="102"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Windows&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="162"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Mac&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Presence&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;IM&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;VoIP&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Voicemail&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC/Jabber&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Video&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC/Jabber&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;No&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Desktop Sharing&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;CUPC/Jabber&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;Jabber for Mac&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;App Sharing&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;No&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;No&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Web Conferencing&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;No&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;No&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;Federation&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;IM/P Only&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;IM/P Only&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;&lt;strong&gt;VPN Less Connect&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;No&lt;/font&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px"&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;No&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;So, no WebEx cloud = no Web Conferencing. Or do we need another client for that or is that another “it’s coming” moments?  &lt;p&gt;&lt;strong&gt;Cisco’s Smartphone and Tablet Consistency&lt;/strong&gt;  &lt;p&gt;Below is what Cisco Jabber currently offers across the most popular platforms.&lt;/p&gt; &lt;table style="line-height: normal; border-collapse: collapse" border="0" cellspacing="0" cellpadding="0" width="516"&gt; &lt;colgroup&gt; &lt;col style="width: 94pt; mso-width-source: userset; mso-width-alt: 4571" width="125"&gt; &lt;col style="width: 146pt; mso-width-source: userset; mso-width-alt: 7131" span="2" width="195"&gt; &lt;col style="width: 154pt; mso-width-source: userset; mso-width-alt: 7497" width="205"&gt; &lt;tbody&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="99"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="149"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;iPhone&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;iPad&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Android Phone/Tablet&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="99"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Presence&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="149"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;Jabber IM for iPhone&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No ( iPhone client)&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="99"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;IM&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="149"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;Jabber IM for iPhone&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No ( iPhone client)&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="99"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;VoIP&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="149"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;Jabber Voice for iPhone&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No ( iPhone client)&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;Jabber for Android&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="99"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Voicemail&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="149"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;Jabber Voice for iPhone&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No ( iPhone client)&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="99"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Video&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="149"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for iPhone&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for iPad&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="99"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Desktop&lt;br&gt;Sharing&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="149"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for iPhone &lt;br&gt;(view only)&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for iPhone &lt;br&gt;(view only)&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for Android &lt;br&gt;(View Only)&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="99"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;App &lt;br&gt;Sharing&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="149"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for iPhone &lt;br&gt;(view only)&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for iPhone &lt;br&gt;(view only)&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for Android &lt;br&gt;(View Only)&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="99"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Web Conferencing&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="149"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for iPhone&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for iPad&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;WebEx for Android &lt;br&gt;(View Only)&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;&lt;font color="#333333"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt; &lt;table style="line-height: normal; border-collapse: collapse" border="0" cellspacing="0" cellpadding="0" width="516"&gt; &lt;colgroup&gt;&lt;font color="#333333"&gt; &lt;col style="width: 94pt; mso-width-source: userset; mso-width-alt: 4571" width="125"&gt; &lt;col style="width: 146pt; mso-width-source: userset; mso-width-alt: 7131" span="2" width="195"&gt; &lt;col style="width: 154pt; mso-width-source: userset; mso-width-alt: 7497" width="205"&gt;&lt;/font&gt; &lt;tbody&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="102"&gt;&lt;font color="#333333"&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="146"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;WP7&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;BB&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" width="136"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Symbian&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="102"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Presence&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="146"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font color="#333333"&gt;Jabber IM for BB&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font color="#333333"&gt;Cisco Mobile for Nokia&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="102"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;IM&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="146"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;Jabber IM for BB&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font color="#333333"&gt;Cisco Mobile for Nokia&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="102"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;VoIP&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="146"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font color="#333333"&gt;BBMVC Client&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font color="#333333"&gt;Cisco Mobile for Nokia&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="102"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Voicemail&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="146"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font color="#333333"&gt;Cisco Mobile for Nokia&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="102"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Video&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="146"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="102"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Desktop&lt;br&gt;Sharing&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="146"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font color="#333333"&gt;WebEx for BB (View Only)&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font color="#333333"&gt;WebEx for Nokia (View Only)&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="102"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;App &lt;br&gt;Sharing&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="146"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font color="#333333"&gt;WebEx for BB&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font color="#333333"&gt;WebEx for Nokia (View Only)&lt;/font&gt;&lt;font color="#333333"&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr style="height: 15pt" height="20"&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" class="xl65" height="20" width="102"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;&lt;strong&gt;Web Conferencing&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="146"&gt;&lt;font style="font-size: 11pt" color="#333333"&gt;No&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="130"&gt;&lt;font color="#333333"&gt;WebEx for BB&lt;/font&gt;&lt;/td&gt; &lt;td style="padding-left: 1px; padding-right: 1px; vertical-align: bottom; padding-top: 1px" width="136"&gt;&lt;font color="#333333"&gt;WebEx for Nokia (View Only)&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Looks pretty inconsistent to me with no on-premise solution for many of the options mentioned forcing you to only have a cloud option with WebEx. If you remove WebEx your left with only IM/P and voice but not consistently across all platforms. In fact, if video is the new voice then they have only one platform that delivers video with Jabber/CUPC and that is the Windows PC client. But isn't this the “Post PC era” according to Cisco? Well there is the Cius I guess but wait is that with Cisco Telepresence or Jabber, I am confused, maybe another app. &lt;p&gt;So I actually have a Android tablet that I use for testing and thought great I might actually download the Android application and give a spin in a lab where I have access to CUCM. Well its not that easy. I have an ASUS Tablet and Cisco’s Jabber only officially supports Samsung’s Galaxy Android devices. Bummer. I couldn’t even download the application on to my tablet to try it out. I just got a big warning that my device wasn’t compatible. So more limitations. But didn’t Michael say they had the most consistent story???  &lt;p&gt;&lt;b&gt;One Client To Rule Them All&lt;/b&gt;  &lt;p&gt;&lt;i&gt;Cisco Jabber&lt;/i&gt;  &lt;p&gt;Cisco require multiple applications for Mobile UC- Jabber for IM, Jabber for VoIP and WebEx Meeting. Three clients to complete a UC solution and not all platforms are created equal.  &lt;ul&gt; &lt;ul&gt; &lt;li&gt;Some platforms have IM, voice, VoIP and WebEx and some don’t. This mix of features creates complexity at the help desk and lacks insight on the complexity of deploying applications that don’t carry the same feature sets. This is a complex issue for any software vendor across multiple OS’s for sure. Even &lt;a href="http://www.webex.com/ciusfaq.html"&gt;Cisco’s own Cuis&lt;/a&gt; doesn’t support video with WebEx. How confusing is that?  &lt;li&gt;Some platforms use Cisco Secure Connect (requires Cisco ASA hardware) feature and others require AnyConnect/VPN. More complexity. Depending on what version of Anywhere Connect and whether you are running it on IOS or ASA affects your ability to allow these applications to work.  &lt;li&gt;iPhone, iPad require AnyConnect with the Cisco ASA. So now to take advantage of Jabber you need Cisco&amp;nbsp; hardware, you already needed Cisco UCS servers for CUPS so why stop there. &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt; &lt;p&gt;I noticed in the comments on Michaels post that Cisco choose to deliver the features in separate applications . When I talk with companies this isn't what they want. They want to be able to leverage UC from a single mobile application. Which leads me to the conclusion that this wasn’t really a choice but due to their compartmentalized UC infrastructure this was their only way to deliver these features.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Why did I write this blog?&lt;/strong&gt;  &lt;p&gt;My intention here is to highlight “ don’t throw stones in glass houses”. Cisco execs think posting on a blog and spreading miss-information about their own products is okay while analyst with poorly researched articles are no less guilty. I noticed in the comments of Michaels blog there was a lot of “it’s coming” to a lot of points raised around where they fell short. No mention of that in the article it self though.&lt;/p&gt; &lt;p&gt;So yeah, I work for Microsoft and happy to say I have a strong opinion of where UC is heading and what companies are looking for when it comes to UC. Cisco compartmentalized infrastructure carries through to their mobility story and I am pretty happy about that. The chaos they create in their self proclaimed “Post PC” era makes my job a hell of a lot easier. Thanks Cisco.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-5679227660934146364?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/n20N5XH3_ZE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/n20N5XH3_ZE/ciscos-mobility-chaos.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>7</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/03/ciscos-mobility-chaos.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-3691831520416093017</guid><pubDate>Thu, 01 Mar 2012 19:37:00 +0000</pubDate><atom:updated>2012-03-01T11:43:48.366-08:00</atom:updated><title>Update: “Busy Here” Scripting Project Phase II</title><description>&lt;p&gt;I have had some interesting comments and emails around the first phase of the script. Some people had issues getting it working and others had issues with PSTN URI’s but hopefully this latest update will solve a lot of those issues along with adding a new UM lookup feature. This update removes the User.txt file and blanket enables for the whole deployment.&lt;/p&gt; &lt;p&gt;Download the script:&lt;/p&gt; &lt;p&gt;&lt;a title="https://skydrive.live.com/redir.aspx?cid=25a5ce54e91be979&amp;amp;resid=25A5CE54E91BE979!715&amp;amp;parid=25A5CE54E91BE979!714" href="https://skydrive.live.com/redir.aspx?cid=25a5ce54e91be979&amp;amp;resid=25A5CE54E91BE979!715&amp;amp;parid=25A5CE54E91BE979!714"&gt;https://skydrive.live.com/redir.aspx?cid=25a5ce54e91be979&amp;amp;resid=25A5CE54E91BE979!715&amp;amp;parid=25A5CE54E91BE979!714&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Again a big shout out to Angela and Jay from &lt;a href="http://www.meldingtechnology.com/"&gt;Melding Technology&lt;/a&gt; for taking the time to work on the script and make improvements. I am super grateful for the time and effort these guys have put into making this script both easier to use and added functionality. MSPL scripting is a great skill to have and these guys are proving through this community project what champions they are at it. If you would like some help on a project like this or general Lync deployment services and like what you see in this post please reach out to Melding Tech &lt;font color="#333333"&gt;at &lt;/font&gt;&lt;a href="mailto:Sales@MeldingTech.com"&gt;Sales@MeldingTech.com&lt;/a&gt;.&amp;nbsp; &lt;/p&gt; &lt;p&gt;Please let us know if you have any ideas or questions around the scripts use or functions. If you wish to make additional changes to the script please send me an email with updates. This is a community project so any updates, comments and changes are welcomed and remember to test in a lab first. &lt;/p&gt; &lt;p&gt;Below is extract from an email exchange I had with Jay around the improvements to the script. Please note that the script is downloadable from the link I provided above and below is only an extract of the entire script.&lt;/p&gt; &lt;p&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;This is a new iteration on the script. It has more substantial changes than before. There are some key things that are different:&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; text-indent: -0.25in; margin: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraph"&gt;&lt;font color="#1f497d"&gt;&lt;span style="font-family: ; color: ; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;&lt;font face="Symbol"&gt;&lt;font style="font-size: 11pt"&gt;·&lt;/font&gt;&lt;/font&gt;&lt;span style="line-height: normal; font-family: "&gt;&lt;font face="Times New Roman"&gt;&lt;font style="font-size: 7pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt"&gt;Removed user filtering based on the users.txt file. Now the filter will apply to everybody. This makes easier handling both Lync calls and external phone calls.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; text-indent: -0.25in; margin: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraph"&gt;&lt;font color="#1f497d"&gt;&lt;span style="font-family: ; color: ; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;&lt;font face="Symbol"&gt;&lt;font style="font-size: 11pt"&gt;·&lt;/font&gt;&lt;/font&gt;&lt;span style="line-height: normal; font-family: "&gt;&lt;font face="Times New Roman"&gt;&lt;font style="font-size: 7pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt"&gt;Fixed issues that prevented it to work when dialing Phone numbers directly vs Lync calls (we were using the incorrect uri to query for End points).&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; text-indent: -0.25in; margin: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraph"&gt;&lt;font color="#1f497d"&gt;&lt;span style="font-family: ; color: ; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;&lt;font face="Symbol"&gt;&lt;font style="font-size: 11pt"&gt;·&lt;/font&gt;&lt;/font&gt;&lt;span style="line-height: normal; font-family: "&gt;&lt;font face="Times New Roman"&gt;&lt;font style="font-size: 7pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt"&gt;The proxyByDefault option was changed to false&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;b&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;. &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;Now the script is responsible for redirecting as appropriate. Need to be careful when modifying to make sure the script does not generate dead ends.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; text-indent: -0.25in; margin: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraph"&gt;&lt;font color="#1f497d"&gt;&lt;span style="font-family: ; color: ; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;&lt;font face="Symbol"&gt;&lt;font style="font-size: 11pt"&gt;·&lt;/font&gt;&lt;/font&gt;&lt;span style="line-height: normal; font-family: "&gt;&lt;font face="Times New Roman"&gt;&lt;font style="font-size: 7pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt"&gt;Added the following logic: &lt;/font&gt;&lt;b&gt;&lt;font style="font-size: 11pt"&gt;If user is UM enabled, redirect to Voice mail right away, otherwise send busy response.&lt;/font&gt;&lt;/b&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#c00000"&gt;Important note: Since the script now redirects to Voice mail, there is a check to ignore requests going to the Voice mail itself to prevent a potential loop.&amp;nbsp; When using the script it is necessary to replace the highlighted URI with the URI for Voice mail in your environment.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;Below is highlighting the more relevant areas:&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;lt;?&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#a31515"&gt;xml&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#ff0000"&gt;version&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;span style="color: "&gt;&lt;font color="#0000ff"&gt;1.0&lt;/font&gt;&lt;/span&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;/font&gt;&lt;span style="color: "&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt; ?&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font style="font-size: 9.5pt" color="#a31515"&gt;lc:applicationManifest&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#ff0000"&gt;&lt;font style="font-size: 9.5pt"&gt;lc:appUri&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;span style="color: "&gt;&lt;a href="http://www.meldingtechnology.com/busybusy"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://www.meldingtechnology.com/busybusy&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#ff0000"&gt;&lt;font style="font-size: 9.5pt"&gt;xmlns:lc&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;span style="color: "&gt;&lt;a href="http://schemas.microsoft.com/lcs/2006/05"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://schemas.microsoft.com/lcs/2006/05&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;/font&gt;&lt;span style="color: "&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#a31515"&gt;lc:allowRegistrationBeforeUserServices&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#ff0000"&gt;action&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;span style="color: "&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;/span&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;/font&gt;&lt;span style="color: "&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt; /&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#a31515"&gt;lc:requestFilter&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#ff0000"&gt;methodNames&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;span style="color: "&gt;&lt;font color="#0000ff"&gt;INVITE&lt;/font&gt;&lt;/span&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#ff0000"&gt;strictRoute&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;span style="color: "&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;/span&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#ff0000"&gt;registrarGenerated&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;span style="color: "&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;/span&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#ff0000"&gt;domainSupported&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;span style="color: "&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;/span&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;/font&gt;&lt;span style="color: "&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt; /&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#a31515"&gt;lc:responseFilter&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#ff0000"&gt;reasonCodes&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;span style="color: "&gt;&lt;font color="#0000ff"&gt;NONE&lt;/font&gt;&lt;/span&gt;&lt;font color="#000000"&gt;"&lt;/font&gt;&lt;/font&gt;&lt;span style="color: "&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt; /&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: ; color: "&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;lt;lc:proxyByDefault action="false" /&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#a31515"&gt;lc:scriptOnly&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: ; color: "&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt; /&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#a31515"&gt;lc:splScript&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: ; color: "&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;![CDATA[&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Function that returns true if the given content has the SDP audio m lines&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // and false otherwise&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function contentHasSDPAudio(content) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // SDP format is strict enough that the following check is a valid&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // way to determine if the offer includes audio.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ContainsString(content,"\nm=audio ", false) ||&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ContainsString(content,"\rm=audio ", false)) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log( "Debug", false, "***BusyBusy***: found m=audio" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log ("Event", false, "***BusyBusy***: started script");&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debug", false, "***BusyBusy***: We have a request - ", sipRequest.Method );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Check if this is a re-INVITE and exit if so&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach ( sessionExpires in GetHeaderValues( "Session-Expires" ) ) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( ContainsString( sessionExpires, "refresher", true ) ) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: skipped; This is a session refreshing invite" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;//&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;// Get Sip URI string for the user in the To: header.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;//&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;toUri = GetUri(sipRequest.To);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;Log( "Debugr", false, "***BusyBusy***: toUri - ", toUri );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;Log( "Debug", false, "***BusyBusy***: RequestUri ", sipRequest.RequestUri);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#c00000"&gt;// Prevent a loop by ignoring requests to the Voice mai&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#c00000"&gt;// ***** Replace with your Exchange UM account&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#c00000" face="Consolas"&gt;&lt;font style="font-size: 9.5pt"&gt;if (ContainsString(sipRequest.RequestUri, "&lt;/font&gt;&lt;/font&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;a href="sip:MTLync@mtex.MeldingTech.Com"&gt;&lt;font color="#0000ff" face="Consolas"&gt;&lt;u&gt;sip:MTLync@mtex.MeldingTech.Com&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/font&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#c00000"&gt;", false))&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log("Debug", false, "***BusyBusy***: ignoring Voice mail request" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProxyRequest();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;if (sipRequest.StandardMethod == StandardMethod.Invite) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Determine if this request is for an audio session&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hasBody = false;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hasAudio = false;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (header in GetHeaderValues (StandardHeader.ContentType)) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Found a content-type header, so we know it has a body.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hasBody = true;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (IndexOfString (header, "multipart/", true) == 0) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log( "Debugr", false, "***BusyBusy***: Found multipart body. Content-Type:", header );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = 0;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (i&amp;lt;MultiPartItem.Count &amp;amp;&amp;amp; BindMultiPartBodyItem(i)) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ContainsString(MultiPartItem.ContentType, "application/sdp", true)) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log("Debugr", false, "***BusyBusy***: Found SDP content-type in Multipart item count: ", i);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (contentHasSDPAudio(MultiPartItem.Content)) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log("Debug", false, "***BusyBusy***: content has audio" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hasAudio = true;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i=i+1;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( hasAudio ) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log("Debug", false, "***BusyBusy***: this is an audio call" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (!hasBody) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // An INVITE without a body is taken as an implied audio INVITE.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log("Debug", false, "***BusyBusy***: content has no body, implied to be an audio call" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // not an audio call return now&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log("Debug", false, "***BusyBusy***: this is not an audio call!" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProxyRequest();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;totalEndpoints = 0;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;anyEndpointBusy = false;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;foreach (dbEndpoint in QueryEndpoints(toUri)) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; totalEndpoints = totalEndpoints + 1;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: endpoint.EPID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - ", dbEndpoint.EPID );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: endpoint.ContactInfo - ", dbEndpoint.ContactInfo );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; //Log( "Debugr", false, "***BusyBusy***: endpoint.Instance&amp;nbsp;&amp;nbsp;&amp;nbsp; - ", dbEndpoint.Instance&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; publication = QueryCategory(toUri, 2, "state", dbEndpoint.Instance);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; //Log( "Debugr", false, "***BusyBusy***: State - ", publication );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; if (IndexOfString(publication, "on-the-phone") &amp;gt;= 0) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: endpoint in a call change to busy state" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; anyEndpointBusy = true;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; else {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: endpoint not in call stay in free state" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;//Log( "Debugr", false, "***BusyBusy***: found ", totalEndpoints, " endpoint(s)" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;// If any point is busy respond with voice mail of busy signal&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;if (anyEndpointBusy) {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp; if (RequestTarget.Aor != "BENOTIFY") {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#808080"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: ; color: "&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;// Check if user is enabled for UM&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; userProperties = QueryCategory(toUri, 1, "userProperties", 0);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: User Properties - ", userProperties );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ContainsString(userProperties , "1&amp;lt;/exumEnabled&amp;gt;", false))&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: Redirecting to voice mail for ", toUri);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; toVoiceMail = Concatenate( toUri, ";opaque=app:voicemail");&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProxyRequest(toVoiceMail);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0070c0"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Respond( 486, "Busy here" );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: Busy response given for ", toUri);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //log a request which was replied with busy signal&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Event" , true,&amp;nbsp; "***BusyBusy***: Busy response given for ", toUri);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;Log( "Debugr", false, "***BusyBusy***: finished script.. no action taken");&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;ProxyRequest();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;return;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#808080"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt;]]&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;nbsp; &amp;lt;/&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#a31515"&gt;lc:splScript&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: ; color: "&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;font face="Consolas"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size: 9.5pt"&gt;&amp;lt;/&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 9.5pt"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#a31515"&gt;lc:applicationManifest&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: ; color: "&gt;&lt;font style="font-size: 9.5pt" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family: "&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt; text-autospace: " class="MsoNormal"&gt;&lt;span style="font-family: "&gt;&lt;font face="Consolas"&gt;&lt;font style="font-size: 9.5pt" color="#000000"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;font color="#000000"&gt;VoIPNorm&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="font-family: ; color: "&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-3691831520416093017?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/mwmPOmaF-VU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/mwmPOmaF-VU/update-busy-here-scripting-project.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>5</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/03/update-busy-here-scripting-project.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-5781396863694519626</guid><pubDate>Sat, 25 Feb 2012 01:10:00 +0000</pubDate><atom:updated>2012-02-24T19:33:30.758-08:00</atom:updated><title>Lync MSPL “Busy Here” Script  Project</title><description>&lt;p&gt;*****Before I begin I just wanted to give a shout out to &lt;a href="http://www.meldingtechnology.com/"&gt;Melding Technology&lt;/a&gt; for helping with this project. They basically took an unfinished script that a reader found out on the internet and fixed it to a working state. So thanks to Jay and Angela for working on the script.*******&lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://www.meldingtechnology.com/"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-alH8fUwRcFg/T0g09YBdLsI/AAAAAAAAAss/Oz4VAf3N2EU/image%25255B3%25255D.png?imgmax=800" width="244" height="75"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I got a question from a reader about a MSPL script he had found on the web from this TechNet forum post. &lt;/p&gt; &lt;p&gt;&lt;a href="http://social.technet.microsoft.com/Forums/eu/ocsvoice/thread/f5829e31-42bd-4a65-bf1a-4777c5c54770"&gt;http://social.technet.microsoft.com/Forums/eu/ocsvoice/thread/f5829e31-42bd-4a65-bf1a-4777c5c54770&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Basically the script didn’t run but was supposed to enable busy on busy. With some help from &lt;a href="http://www.meldingtechnology.com/"&gt;Melding Technology&lt;/a&gt; here in Seattle this script is now functional but with some limitations. Apparently the original script was close to working but needed some small changes. Currently it doesn’t check if a user is enabled for Unified Messaging and just returns a busy signal if already on a call. I will post updates if&amp;nbsp; they enable this. This script does however check if a user is defined for this feature by looking up the user.txt file. So as long as you define the user in User.txt they will get busy on busy if they are on a call when a second call arrives. Also beware this script has not been tested in a large scale roll out. It has only been tested in a lab setting so use at your own risk. &lt;/p&gt; &lt;p&gt;The links below are access to both the script and user file from my Public Skydrive share. Please feel free to grab and use this. I have posted the full text of the script below to view before downloading the file.&lt;/p&gt; &lt;p&gt;Script&lt;/p&gt; &lt;p&gt;&lt;a title="https://skydrive.live.com/redir.aspx?cid=25a5ce54e91be979&amp;amp;resid=25A5CE54E91BE979!712&amp;amp;parid=25A5CE54E91BE979!142" href="https://skydrive.live.com/redir.aspx?cid=25a5ce54e91be979&amp;amp;resid=25A5CE54E91BE979!712&amp;amp;parid=25A5CE54E91BE979!142"&gt;https://skydrive.live.com/redir.aspx?cid=25a5ce54e91be979&amp;amp;resid=25A5CE54E91BE979!712&amp;amp;parid=25A5CE54E91BE979!142&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;User text file&lt;/p&gt; &lt;p&gt;&lt;a title="https://skydrive.live.com/redir.aspx?cid=25a5ce54e91be979&amp;amp;resid=25A5CE54E91BE979!711&amp;amp;parid=25A5CE54E91BE979!142" href="https://skydrive.live.com/redir.aspx?cid=25a5ce54e91be979&amp;amp;resid=25A5CE54E91BE979!711&amp;amp;parid=25A5CE54E91BE979!142"&gt;https://skydrive.live.com/redir.aspx?cid=25a5ce54e91be979&amp;amp;resid=25A5CE54E91BE979!711&amp;amp;parid=25A5CE54E91BE979!142&lt;/a&gt;&lt;/p&gt; &lt;table border="2" cellspacing="0" cellpadding="2" width="541"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="537"&gt; &lt;p&gt;&amp;lt;?xml version="1.0" ?&amp;gt;&lt;br&gt;&amp;lt;lc:applicationManifest&lt;br&gt;lc:appUri="&lt;a href="http://www.meldingtechnology.com/busybusy&amp;quot;"&gt;http://www.meldingtechnology.com/busybusy"&lt;/a&gt;&lt;br&gt;xmlns:lc="&lt;a href="http://schemas.microsoft.com/lcs/2006/05&amp;quot;"&gt;http://schemas.microsoft.com/lcs/2006/05"&lt;/a&gt;&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;lc:allowRegistrationBeforeUserServices action="true" /&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;lc:requestFilter methodNames="INVITE"&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strictRoute="true"&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; registrarGenerated="true"&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; domainSupported="true" /&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;lc:responseFilter reasonCodes="NONE" /&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;lc:proxyByDefault action="true" /&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;lc:scriptOnly /&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;!--&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - users.txt&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Users database file. The BusyBusy Filter will only be applied to the users listed in&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - this file.&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;lc:file name="usersTable" path="users.txt" delimitedBy="whitespace" keyColumnName="uri"&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!-- Filter applies to this URI. --&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;lc:column name="uri" /&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;/lc:file&amp;gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp; &amp;lt;lc:splScript&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;![CDATA[&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Function that returns true if the given content has the SDP audio m lines&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // and false otherwise&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function contentHasSDPAudio(content) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // SDP format is strict enough that the following check is a valid&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // way to determine if the offer includes audio.&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ContainsString(content,"\nm=audio ", false) ||&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ContainsString(content,"\rm=audio ", false)) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log( "Debug", false, "***BusyBusy***: found m=audio" );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log ("Event", false, "***BusyBusy***: started script");&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debug", false, "***BusyBusy***: We have a request - ", sipRequest.Method );&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Check if this is a re-INVITE and exit if so&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach ( sessionExpires in GetHeaderValues( "Session-Expires" ) ) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( ContainsString( sessionExpires, "refresher", true ) ) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: skipped; This is a session refreshing invite" );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/p&gt; &lt;p&gt;//&lt;br&gt;// Get user@domain string for the user in the To: header.&lt;br&gt;//&lt;br&gt;toUri = GetUri(sipRequest.To);&lt;br&gt;toUserAtHost = Concatenate( GetUserName( toUri ), "@", GetHostName( toUri ) );&lt;/p&gt; &lt;p&gt;Log( "Debugr", false, "***BusyBusy***: toUserAtHost&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - ", toUserAtHost );&lt;/p&gt; &lt;p&gt;//&lt;br&gt;// Look up the user in our user table&lt;br&gt;//&lt;br&gt;user= usersTable[toUserAtHost].uri;&lt;/p&gt; &lt;p&gt;// Comment this if block if you want to apply the filter to everybody&lt;br&gt;if(user == null)&lt;br&gt;{&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log("Debug", false, "***BusyBusy***: ignoring filter for this user." );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;br&gt;}&lt;/p&gt; &lt;p&gt;&lt;br&gt;if (sipRequest.StandardMethod == StandardMethod.Invite) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Determine if this request is for an audio session&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; hasBody = false;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; hasAudio = false;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (header in GetHeaderValues (StandardHeader.ContentType)) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Found a content-type header, so we know it has a body.&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hasBody = true;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (IndexOfString (header, "multipart/", true) == 0) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log( "Debugr", false, "***BusyBusy***: Found multipart body. Content-Type:", header );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = 0;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (i&amp;lt;MultiPartItem.Count &amp;amp;&amp;amp; BindMultiPartBodyItem(i)) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ContainsString(MultiPartItem.ContentType, "application/sdp", true)) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log("Debugr", false, "***BusyBusy***: Found SDP content-type in Multipart item count: ", i);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (contentHasSDPAudio(MultiPartItem.Content)) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Log("Debug", false, "***BusyBusy***: content has audio" );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hasAudio = true;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i=i+1;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( hasAudio ) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log("Debug", false, "***BusyBusy***: this is an audio call" );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (!hasBody) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // An INVITE without a body is taken as an implied audio INVITE.&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log("Debug", false, "***BusyBusy***: content has no body, implied to be an audio call" );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // not an audio call retuern now&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log("Debug", false, "***BusyBusy***: this is not an audio call!" );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;}&lt;/p&gt; &lt;p&gt;&lt;br&gt;totalEndpoints = 0;&lt;br&gt;anyEndpointBusy = false;&lt;/p&gt; &lt;p&gt;foreach (dbEndpoint in QueryEndpoints(toUserAtHost)) {&lt;br&gt;&amp;nbsp;&amp;nbsp; totalEndpoints = totalEndpoints + 1;&lt;br&gt;&amp;nbsp;&amp;nbsp; &lt;br&gt;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: endpoint.EPID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - ", dbEndpoint.EPID );&lt;br&gt;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: endpoint.ContactInfo - ", dbEndpoint.ContactInfo );&lt;br&gt;&amp;nbsp;&amp;nbsp; //Log( "Debugr", false, "***BusyBusy***: endpoint.Instance&amp;nbsp;&amp;nbsp;&amp;nbsp; - ", dbEndpoint.Instance&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;/p&gt; &lt;p&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; publication = QueryCategory(toUri, 2, "state", dbEndpoint.Instance);&lt;br&gt;&amp;nbsp;&amp;nbsp; //Log( "Debugr", false, "***BusyBusy***: publication - ", publication );&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp; if (IndexOfString(publication, "on-the-phone") &amp;gt;= 0) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: endpoint in a call change to busy state" );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; anyEndpointBusy = true;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br&gt;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp; else {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: endpoint not in call stay in free state" );&lt;br&gt;&amp;nbsp;&amp;nbsp; }&lt;/p&gt; &lt;p&gt;}&lt;/p&gt; &lt;p&gt;//Log( "Debugr", false, "***BusyBusy***: found ", totalEndpoints, " endpoint(s)" );&lt;/p&gt; &lt;p&gt;&lt;br&gt;// Respond busy if any endpoint was busy...&lt;br&gt;if (anyEndpointBusy) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (RequestTarget.Aor != "BENOTIFY") {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Respond( 486, "Busy here" );&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Debugr", false, "***BusyBusy***: Busy responce given for", toUserAtHost);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //log a request which was replied with busy signal&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log( "Event" , true,&amp;nbsp; "***BusyBusy***: Busy responce given for", toUserAtHost);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt; &lt;p&gt;}&lt;/p&gt; &lt;p&gt;Log( "Debugr", false, "***BusyBusy***: finished script");&lt;/p&gt; &lt;p&gt;return;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;]]&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;/lc:splScript&amp;gt;&lt;br&gt;&amp;lt;/lc:applicationManifest&amp;gt;&lt;br&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;If you want to use this script and make changes please let me know. This is a community project that started as a post on a forum so please share if you make improvements, changes etc.&lt;/p&gt; &lt;p&gt;Comments welcomed.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-5781396863694519626?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/AGfy9WxHWQg" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/AGfy9WxHWQg/lync-mspl-busy-on-busy-script-project.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-alH8fUwRcFg/T0g09YBdLsI/AAAAAAAAAss/Oz4VAf3N2EU/s72-c/image%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>9</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/02/lync-mspl-busy-on-busy-script-project.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-3421901240190043792</guid><pubDate>Fri, 17 Feb 2012 22:57:00 +0000</pubDate><atom:updated>2012-02-17T14:57:33.521-08:00</atom:updated><title>Blocking  Lync Audio and Video with Federated Contacts Using MSPL</title><description>&lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;I am a huge fan of MSPL scripting. I have published a few here on VoIPNorm and I have pointed numerous IT Pros to them. Certainly there is common theme to controlling Lync federated partners whether it be for file transfer or other with these scripts. &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;The f&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;ollowing is a script that was written by Santosh More from Microsoft that blocks audio and video with federated contacts. The scripts I post aren't always going to be block buster scripts that everyone will use but they can be great starting points to accomplish other tasks if you new to MSPL.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;&lt;/font&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;Thanks to Santosh for allowing me to share this with everyone.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;&lt;/font&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;lt;?xml version="1.0"?&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;&lt;font style="font-size: 11pt"&gt;&amp;lt;lc:applicationManifest lc:appUri="&lt;/font&gt;&lt;/font&gt;&lt;font style="font-size: 11pt"&gt;&lt;a href="http://fabrikam.com/BlockFederatedAudioCalls"&gt;&lt;font color="#0000ff" face="Calibri"&gt;&lt;u&gt;http://fabrikam.com/BlockFederatedAudioCalls&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#1f497d" face="Calibri"&gt;" xmlns:lc="&lt;/font&gt;&lt;a href="http://schemas.microsoft.com/lcs/2006/05"&gt;&lt;font color="#0000ff" face="Calibri"&gt;&lt;u&gt;http://schemas.microsoft.com/lcs/2006/05&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/font&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;"&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;lt;lc:requestFilter methodNames="INVITE" strictRoute="true"&amp;nbsp; phoneUris="true"/&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp; &amp;lt;lc:responseFilter reasonCodes="ALL"/&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp; &amp;lt;lc:scriptOnly/&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp; &amp;lt;lc:proxyByDefault action="true"/&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;lt;lc:splScript&amp;gt;&amp;lt;![CDATA[&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sipRequest) &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;&lt;font style="font-size: 11pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (!ContainsString(sipRequest.To, "&lt;/font&gt;&lt;/font&gt;&lt;font style="font-size: 11pt"&gt;&lt;a href="conf:audio-video"&gt;&lt;font color="#0000ff" face="Calibri"&gt;&lt;u&gt;conf:audio-video&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/font&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;"))&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ContainsString(sipRequest.From, "@contoso.com"))&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (IndexOfString(sipRequest.Content, "m=audio") &amp;gt;= 0)&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Respond(403, "AV call with federated domain is not allowed"); &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ContainsString(sipRequest.To, "@contoso.com"))&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (IndexOfString(sipRequest.Content, "m=audio") &amp;gt;= 0)&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Respond(403, "AV call with federated domain is not allowed"); &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;]]&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;lt;/lc:splScript&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;lt;/lc:applicationManifest&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;Following are the Steps to deploy the application&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;1. Modify the Script replace @contoso.com with the domain name of the Federated partner and save the file as BlockFederatedAudioCalls.am&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt; in following folder C:\LyncScripts\BlockFederatedAudioCalls&amp;nbsp; on all the Edge Servers.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;2. On FrontEnd Server run following command to create a server application&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;&lt;font style="font-size: 11pt"&gt;New-CsServerApplication -Identity "EdgeServer:edgepool.fabrkam.com/BlockFederatedAudioCalls" -Uri "&lt;/font&gt;&lt;/font&gt;&lt;font style="font-size: 11pt"&gt;&lt;a href="http://fabrikam.com/BlockFederatedAudioCalls"&gt;&lt;font color="#0000ff" face="Calibri"&gt;&lt;u&gt;http://fabrikam.com/BlockFederatedAudioCalls&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/font&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;" -ScriptName &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;"C:\LyncScripts\BlockFederatedAudioCalls\BlockFederatedAudioCalls.am" -Enabled $true &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;3. This change needs to be replicated to all the Edge Servers so wait for CMS&amp;nbsp; replication to complete with Edge servers&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp; Or Export the Configuration and Import it on the Edge servers.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font face="Calibri"&gt;&lt;font style="font-size: 11pt" color="#1f497d"&gt;4. Restart Access Edge Service on All Edge Servers&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;&lt;/font&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;If you have a script that you want to share with the world let me know. I am happy to post it on VoIPNorm and give full credit to the creator.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;&lt;/font&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="MsoNormal"&gt;&lt;span style="color: "&gt;&lt;font color="#1f497d" face="Calibri"&gt;VoIPNorm&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-3421901240190043792?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/vku0GhmWNbE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/vku0GhmWNbE/blocking-lync-audio-and-video-with.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/02/blocking-lync-audio-and-video-with.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-8645155342543971834</guid><pubDate>Mon, 06 Feb 2012 22:50:00 +0000</pubDate><atom:updated>2012-02-06T14:50:20.446-08:00</atom:updated><title>Looking for the Perfect Lync App, Then Look No Further</title><description>&lt;p&gt;Clive Graven from Microsoft has put together this great directory of Lync applications. No more searching. Check it out.&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.ucoffice.com/Pages/default.aspx" href="http://www.ucoffice.com/Pages/default.aspx"&gt;http://www.ucoffice.com/Pages/default.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Comments welcomed.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-8645155342543971834?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/hiPgLsgkqAQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/hiPgLsgkqAQ/looking-for-perfect-lync-app-then-look.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>1</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/02/looking-for-perfect-lync-app-then-look.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-5291553135213633248</guid><pubDate>Sat, 21 Jan 2012 01:39:00 +0000</pubDate><atom:updated>2012-01-20T17:39:20.606-08:00</atom:updated><title>VoIPNorm Updates and 2011 Year in Review</title><description>&lt;p&gt;&lt;strong&gt;VoIPNorm Updates&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;In case you haven't noticed VoIPNorm has changed a little. After some issues with archived pages loading (thanks Google) I thought is was time to give the blog a good once over. Most of the changes are surface changes with no real operational differences to the blog. The background change, although its only a off the shelf Blogger background, really caught my attention. I really like the old school look and feel of English telephone boxes. I am not going to get philosophical or anything like that I just think they look cool and it fit the theme.&lt;/p&gt; &lt;p&gt;I think a refresh once a year is a good thing and there is no better time than right now. If you have any feedback on the blog or things that would help make the blog more accessible I am always open to suggestions. I always review all comments (and spam) and reply when I can.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;VoIPNorm 2011 in Review&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;2011 was a big year for the blog. My gold standard for monitoring blog traffic has always been &lt;a href="http://statcounter.com/"&gt;Statcounter.com&lt;/a&gt;. From as far as I can tell it’s the most accurate tool for measuring traffic. Below are some of the interesting stats I have pulled together from Statcounter and some other snippets.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Most viewed post of 2011.&lt;/strong&gt; Obviously there is a great deal of interest around Avaya ACE and how it integrates into Lync. With over 65 comments and 100 tweets the post titled “&lt;a href="http://voipnorm.blogspot.com/2011/11/what-avaya-arent-telling-you-about-ace.html"&gt;What Avaya is not telling you about ACE&lt;/a&gt;” got a lot of coverage and hits (3700+). Its still averaging over 200+ hits a week. &lt;/p&gt; &lt;p&gt;&lt;a title="http://voipnorm.blogspot.com/2011/11/what-avaya-arent-telling-you-about-ace.html" href="http://voipnorm.blogspot.com/2011/11/what-avaya-arent-telling-you-about-ace.html"&gt;http://voipnorm.blogspot.com/2011/11/what-avaya-arent-telling-you-about-ace.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Blog posts that disappointed.&lt;/strong&gt; Overall I tried to mix it up this year and provide reviews of things I was doing or working on. Device reviews are generally not visited much. I am not sure if its because I suck at device reviews or people aren't&amp;nbsp; that interested. Insert sad face here &lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-sadsmile" alt="Sad smile" src="http://lh5.ggpht.com/-XkCINl7LuEw/TxoXQrSgycI/AAAAAAAAAsE/BivEMwX4r08/wlEmoticon-sadsmile%25255B2%25255D.png?imgmax=800"&gt;. For whatever the reason, suck or not, I will continue to review the latest Lync devices when I get them in 2012.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Most hits in one day.&lt;/strong&gt; 926 hits and again it was the &lt;a href="http://voipnorm.blogspot.com/2011/11/what-avaya-arent-telling-you-about-ace.html"&gt;Avaya Ace post&lt;/a&gt; that was the cause of most of them. The comments seem to be the main reason people kept coming back. With Avaya execs, partners and customers all having their say it was an all in tech war. Even though it was a very short post it still managed to generate a lot of great discussion.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Greatest comments of 2011.&lt;/strong&gt; &lt;/p&gt; &lt;p&gt;“A great bottle of white wine mixed with a wonderful bottle of red does not often yield even a drinkable rose.” – &lt;strong&gt;By Kevin Kieller&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“I'm not sure why people are getting confused with what ACE actually is. It's not middleware” – &lt;strong&gt;By Joe Schurman (former Avaya exec)&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“In my opinion there is currently no vendor in the marketplace today that can compete with Microsoft Lync on the desktop or Mac “ – &lt;strong&gt;By Joe Schurman (former Avaya exec)&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Blog growth&lt;/strong&gt;. The blog grew over 100% in popularity if hits is anything to measure that with. This is fantastic growth. I recently read another blogger complaining that Twitter did little to grow his blog traffic or his popularity. VoIPNorm’s blog growth was certainly aligned with &lt;a href="http://voipnorm.blogspot.com/2010/10/does-twitter-make-difference.html"&gt;my increased use of Twitter&lt;/a&gt; in 2011. The stats don’t lie. Along with multiple postings a week, Twitter helped see a surge in visitors to the blog.&lt;/p&gt; &lt;p&gt;The big spike at 4,046 was the &lt;a href="http://voipnorm.blogspot.com/2011/11/what-avaya-arent-telling-you-about-ace.html"&gt;Avaya ACE post&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Weekly traffic in 2011&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-Q78TZ6w9J4c/TxoXQ3SNURI/AAAAAAAAAsM/uuRxwJL4vuk/s1600-h/image%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-U8UHljQIZyo/TxoXRfD_SkI/AAAAAAAAAsU/btilkk1MQwI/image_thumb%25255B1%25255D.png?imgmax=800" width="549" height="213"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Yearly view:&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/--cloRxQ2448/TxoXRvzVM5I/AAAAAAAAAsc/7JkvWPU1Vpw/s1600-h/image%25255B7%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-x3ZQDu-Nt5I/TxoXRzqydNI/AAAAAAAAAsk/exSZx9eUP0w/image_thumb%25255B3%25255D.png?imgmax=800" width="555" height="201"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Thanks to everyone that read and commented this past year. I am sure 2012 will be filled with interesting stuff to blog about.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-5291553135213633248?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/tdiPS-Aa01Y" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/tdiPS-Aa01Y/voipnorm-updates-and-2011-year-in.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-XkCINl7LuEw/TxoXQrSgycI/AAAAAAAAAsE/BivEMwX4r08/s72-c/wlEmoticon-sadsmile%25255B2%25255D.png?imgmax=800" height="72" width="72" /><thr:total>3</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/01/voipnorm-updates-and-2011-year-in.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-6664527255886146634</guid><pubDate>Mon, 16 Jan 2012 06:23:00 +0000</pubDate><atom:updated>2012-01-15T22:23:47.414-08:00</atom:updated><title>Adding CUCM Subscribers to Lync Topology Builder</title><description>&lt;p&gt;I remember the OCS days when the Mediation Server would accept any inbound SIP session thrown at it. Those were the days. Okay, so maybe not really but it brings up an interesting item that I run across recently.&lt;/p&gt; &lt;p&gt;OCS and OCS R2 both had a similar restriction of, for every PSTN gateway you required a Mediation Server. There was a work around to this limitation though for inbound connections which was that the Mediation&amp;nbsp; Server would accept any inbound SIP connection on the gateway NIC. Although this wasn’t a supported work around I know many that took advantage of this loop hole. &lt;/p&gt; &lt;p&gt;Now why am I talking about this. Well if you where to configure a SIP trunk in Cisco’s Communications Manager to connect to OCS&amp;nbsp; you really only needed to define one of the CUCM subscribers in OCS as a outbound gateway (putting redundancy aside for a moment). Inbound all the CUCM subscribers that were a part of you CUCM group applied to your Device Pool for the trunk were able to send outbound connections to OCS and they would work. So basically you could kind of get away with only one Mediation Server and have some redundancy but only one way.&lt;/p&gt; &lt;p&gt;Fast forward to Lync 2010. The restriction of the one-to-one relationship of Mediation Server to PSTN Gateway is gone. So now you can have one-to-many but the work around of accepting inbound connections from random gateways is gone. This is a good thing. It greatly increases the security of Lync but at the same time means you must be aware of this when configuring your deployment to work with CUCM deployments.&lt;/p&gt; &lt;p&gt;When you configure CUCM for SIP trunking (direct SIP in Lync terms) you define a SIP trunk, including defining a Device Pool. The Device Pool sets up common resources for the trunk including the Communications Manager Group. The CUCM Group consists of up to three prioritized Communications Manager Servers. This is for failover, device registration etc. When registering devices this all makes sense and the server at the top of the list has all registered devices. SIP trunks on the other hand are a little different and outbound connections round robin between servers in the CUCM group. Basically the prioritization is not used in the case of SIP trunking, at least based on my experience.&lt;/p&gt; &lt;p&gt;Figure 1 : At the moment this device pool below is set at default but in a production configuration where you may have multiple CUCM groups a device pool specifically for you SIP trunk may be required.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-q6qErO-aUWs/TxPCbEi0lZI/AAAAAAAAArU/ITTuPlqbHwg/s1600-h/image%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/-fvFR4gWVmH8/TxPCbW8BAlI/AAAAAAAAArc/QJsU1x2U2ms/image_thumb%25255B1%25255D.png?imgmax=800" width="477" height="95"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;For Lync this means that all CUCM servers in the Communications Manger group must be configured in your topology before Lync will accept inbound connections from each of the servers.&amp;nbsp; Whether you use FQDN or IP addresses really depends on your policies on what to use but all CUCM subscribers have to be added to your topology otherwise un-configured subscribers will be unable to connect inbound. How do you know when you have this issue? Either every other call will fail, or every third call will fail, or two out of three will fail, depending on how many Subscribers you have in your Group. Remember the max CUCM Servers is three. At least when you have this configuration issue your inbound call failure rate is consistent which makes it easy to diagnose. Basically the un-configured CUCM servers will never be able to establish a TCP connection to your Lync Mediation Server. CUCM RTMT tool will never show a SIP trace because the TCP connection never establishes.&lt;/p&gt; &lt;p&gt;Figure 2: Notice the three gateways added below correspond to CUCM subscribers in a group of three. Depending on your deployment this may only have two per CUCM group.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-ieNSqQgb8MA/TxPCb47zO8I/AAAAAAAAArk/kIegct-an58/s1600-h/image%25255B11%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-yx9HAHnnfI0/TxPCcNl8o5I/AAAAAAAAArs/XPFYOROTGUw/image_thumb%25255B5%25255D.png?imgmax=800" width="486" height="237"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Figure 3:Virtually this is what you are setting up with a three subscriber CUCM group when configuring a SIP trunk to Lync.Although you may be only setting up one trunk all three servers take part in signaling to your Lync environment. Unless all three servers are part of your topology inbound signaling issues will occur.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-QBNOiaNTzOI/TxPCcWC0iKI/AAAAAAAAAr0/Av7iziBRSCY/s1600-h/image%25255B15%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-w0aljp97K5U/TxPCci9mybI/AAAAAAAAAr8/aUGbKfnnpuo/image_thumb%25255B7%25255D.png?imgmax=800" width="495" height="340"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I know this may sounds like Lync 101 but if you were used to OCS or new to Lync you may not be aware of this behavior.&lt;/p&gt; &lt;p&gt;Comments welcomed.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-6664527255886146634?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/FKxVXwzj_Dw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/FKxVXwzj_Dw/adding-cucm-subscribers-to-lync.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/-fvFR4gWVmH8/TxPCbW8BAlI/AAAAAAAAArc/QJsU1x2U2ms/s72-c/image_thumb%25255B1%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/01/adding-cucm-subscribers-to-lync.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-6406147680904760120</guid><pubDate>Mon, 09 Jan 2012 19:43:00 +0000</pubDate><atom:updated>2012-01-09T11:43:09.878-08:00</atom:updated><title>Device Review: Sennheisier DW Office</title><description>&lt;p&gt;Well another year has come and gone and new devices keep appearing all the time. I have had &lt;a href="http://www.sennheiserusa.com/wireless-headset-dect-headset-504302"&gt;Sennheiser DW Office&lt;/a&gt; for about 4-5 months now and it is my primary headset when I am at home( FYI my home is my official office, I have no desk at a MSTF office. I am classified as a remote worker. The only MSFT real estate I have is a mail slot). I have been a little slow in writing a review for this device because its just sits on my desk and works which means I really don’t think about it to much. &lt;/p&gt; &lt;p&gt;Like any well built German product this headset just works. No fusing, no messing just works and I like that a lot. &lt;a href="http://www.sennheiser.com/sennheiser/home_en.nsf/root/about_glance"&gt;Sennheiser&lt;/a&gt; has a long history of building audio equipment so it really is no surprise that this is a well built product with some interesting style lines for the base. I thought the base was kind of strange when I first used the device but I can imagine an executive thinking it looks cool on their desk, which it does. The base also has plenty of weight in it which makes knocking it over pretty hard to do even when grabbing for the headset with one hand.&lt;/p&gt; &lt;p&gt;As with all &lt;a href="http://technet.microsoft.com/en-us/lync/gg278173"&gt;Lync certified devices&lt;/a&gt; this works right out of the box. No additional software. The sound quality and device functions are as one would expect for a DECT headset with the added advantage of 350ft range. Although the range isn't exceptional for DECT the battery life is, with up to 12hrs of talk time or 100 of standby the longest of any certified wireless device. &lt;/p&gt; &lt;p&gt;I did have some issue with the ear hooks with this device and decided on using the head band. This isn't new for me as I have had similar issues with other devices from different manufactures before. I have odd ears or can’t work out how to use the ear hooks I am not sure which it is. Either way don’t let that put you off this very solid device. I also have customers using/testing this device and they, like myself, really like how solid this device has been.&lt;/p&gt; &lt;p&gt; The only issue I can possibly think anyone would have with this device is the cost. At $349 list this is on the high end for a headset but to be fair it is comparable to their competitors with similar products and going by list prices comes in a little cheaper than most.&lt;/p&gt; &lt;p&gt;As always here are the photos from my WP7 of the device I tested. Excuse the dust but at least it shows I didn’t pull it straight out of the package and it got some real air time&lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://lh4.ggpht.com/-WInlPeNE774/TwtDSGT0gVI/AAAAAAAAAqs/aTOCATdGUGA/wlEmoticon-smile2.png?imgmax=800"&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-SVL_e1TA8iA/TwtDSuttkrI/AAAAAAAAAq0/iEPTX4QDjYU/s1600-h/Office-DW3.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Office DW" border="0" alt="Office DW" src="http://lh4.ggpht.com/-dDWWY_CSjYw/TwtDS1H9EYI/AAAAAAAAAq8/HihFJdr6nhU/Office-DW_thumb.jpg?imgmax=800" width="244" height="184"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-c1dBzMmyaSs/TwtDTOhPQwI/AAAAAAAAArE/3YFUl5tZusg/s1600-h/Office-DW23.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Office DW2" border="0" alt="Office DW2" src="http://lh3.ggpht.com/-aaA00iMXwz4/TwtDTaTeSUI/AAAAAAAAArM/MuXpMLo_uXk/Office-DW2_thumb.jpg?imgmax=800" width="244" height="184"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.sennheiserusa.com/wireless-headset-dect-headset-504302" href="http://www.sennheiserusa.com/wireless-headset-dect-headset-504302"&gt;http://www.sennheiserusa.com/wireless-headset-dect-headset-504302&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-6406147680904760120?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/nl6_vwK1FGE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/nl6_vwK1FGE/device-review-sennheisier-dw-office.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-WInlPeNE774/TwtDSGT0gVI/AAAAAAAAAqs/aTOCATdGUGA/s72-c/wlEmoticon-smile2.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/01/device-review-sennheisier-dw-office.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-376986373624838886</guid><pubDate>Fri, 06 Jan 2012 17:15:00 +0000</pubDate><atom:updated>2012-01-06T09:15:09.401-08:00</atom:updated><title>Ultimate Voice Online Webcasts Today</title><description>&lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;I am online all day today with the webcasts being broadcast as part of the Ultimate Voice Promotion. To join any of these sessions below please us the link below to register and join. &lt;p&gt;&lt;a title="http://social.technet.microsoft.com/wiki/contents/articles/6202.aspx" href="http://social.technet.microsoft.com/wiki/contents/articles/6202.aspx"&gt;http://social.technet.microsoft.com/wiki/contents/articles/6202.aspx&lt;/a&gt; &lt;p&gt;As part of the session I will also be on Twitter so please feel free to tweet me using @voipnorm. &lt;p&gt;&lt;strong&gt;&lt;u&gt;Session # 2:&lt;/u&gt;&lt;/strong&gt; &lt;p&gt;Subject:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Lync Server 2010, More Than a PBX &lt;p&gt;Start Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Friday, Jan 6, 2012 &lt;b&gt;10:00 AM PST &lt;/b&gt;(1 hour) &lt;p&gt;&lt;b&gt;&lt;u&gt;SESSION # 3: &lt;/u&gt;&lt;/b&gt; &lt;p&gt;Subject:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Simple User Provisioning with Microsoft Lync 2010 &lt;p&gt;Start Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Friday, Jan 6, 2012 &lt;b&gt;11:30 AM PST &lt;/b&gt;(1 hour) &lt;p&gt;&lt;b&gt;&lt;u&gt;SESSION # 4: &lt;/u&gt;&lt;/b&gt; &lt;p&gt;Subject:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Voice Resiliency with Lync Server 2010 &lt;p&gt;Start Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Friday, Jan 6, 2012 &lt;b&gt;1:30 PM PST &lt;/b&gt;(1 hour) &lt;p&gt;&lt;b&gt;&lt;u&gt;SESSION # 5: &lt;/u&gt;&lt;/b&gt; &lt;p&gt;Subject:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Flexible Dial Plans with Lync Server 2010 &lt;p&gt;Start Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Friday, Jan 6, 2012 &lt;b&gt;3:00 PM PST &lt;/b&gt;(1 hour) &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-376986373624838886?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/u4xAdgcs8o4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/u4xAdgcs8o4/ultimate-voice-online-webcasts-today.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>2</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/01/ultimate-voice-online-webcasts-today.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-4351404022236677937</guid><pubDate>Wed, 04 Jan 2012 01:59:00 +0000</pubDate><atom:updated>2012-01-04T11:27:06.406-08:00</atom:updated><title>My Favorite Things from 2011</title><description>&lt;p&gt;Just like Oprah, I to have a list of my favorite things. There are a few exceptions, I don’t have a screaming manic audience and I am not going to give away everything in my list. Last year about his time I came out with my favorite things from 2011and just like last year I am going to expand my list this time way beyond Lync &lt;a href="http://technet.microsoft.com/en-us/lync/gg278173"&gt;certified devices&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://voipnorm.blogspot.com/2010/12/device-review-kinect-for-xbox-360.html"&gt;Kinect&lt;/a&gt; – Not really a UC product (yet) but I love my Kinect all the same. Still on the list 2 years running but still waiting for Xbox 360 interoperability with Lync. The future of Kinect seems endless with what’s coming out of the open source community now &lt;a href="http://www.kinectforwindows.org/"&gt;with full support from Microsoft&lt;/a&gt;, Kinect and any subsequent version have a long self life beyond just gaming.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.jabra.com/NA-US/headsetsolutions/Pages/JabraSPEAK410.aspx"&gt;Jabra Speak 410&lt;/a&gt; – Another product that makes the list again this year, this is a neat USB speaker phone. A compact unit which comes with a soft travel case, finally. ***Note to vendors still*** -- if it’s meant to be portable no matter what the USB device have it come with a soft travel cover.&lt;/p&gt; &lt;p&gt;&lt;a href="http://voipnorm.blogspot.com/2011/12/device-review-plantronics-blackwire.html"&gt;Plantonics Blackwire 435-M&lt;/a&gt; – Plantronics once again make the list with a slight variation on the 420. Another great headset from a great company and wouldn’t you know it they made sure it has a travel cover. Nice.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.microsoft.com/windowsphone/en-us/default.aspx"&gt;Windows Phone 7.5&lt;/a&gt;– On the list last year as something I was looking forward to. Well this time around I have it with Mango and Lync Mobile. Truly a unique device in the market and something I couldn’t live without. Thing I love the most is Facebook integration for uploading photos. I currently have the LG Quantum (I have a thing for slider keyboards).&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.sennheiserusa.com/wireless-headset-dect-headset-504302"&gt;Sennheiser DW Office&lt;/a&gt; – Look for a review coming shortly on this device. It is my office headset of choice right now and it is solid, very solid.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.polycom.com/products/voice/conferencing_solutions/microsoft_optimized_conferencing/cx7000.html"&gt;Polycom CX7000&lt;/a&gt; – If you have seen one of these units demoed you know what I am talking about. I think it is one of the break through video conferencing units for companies looking to expand their Lync video conferencing deployments.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.live.com/"&gt;SkyDrive&lt;/a&gt; – I am using my Windows Live SkyDrive more and more and with integration into iPhone and WP7 it is a great cloud service. The service solved a lot of issues for me this year hence it makes the list.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.amctv.com/shows/the-walking-dead"&gt;AMC’s The Walking Dead&lt;/a&gt; – Zombies in a post apocalyptic world, need I say more.&lt;/p&gt; &lt;p&gt;&lt;a href="http://rareseeds.com/"&gt;Baker Creek Heirloom Seeds&lt;/a&gt; – I love to grow vegetables at home and a great place to go and get you spring seeds is Baker Creek. All seeds are GMO free . This is a great family run company preserving the worlds gardening heritage.&lt;/p&gt; &lt;p&gt;What’s your favorite or not so favorite things from 2011?&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-4351404022236677937?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/KaSTuKL98_s" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/KaSTuKL98_s/my-favorite-things-from-2011.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/01/my-favorite-things-from-2011.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-4493641011626875768</guid><pubDate>Tue, 03 Jan 2012 23:32:00 +0000</pubDate><atom:updated>2012-01-03T15:32:20.612-08:00</atom:updated><title>Post Update: RIP Umi to Consumers</title><description>&lt;p&gt;Update: Cisco kills UMI Consumer Sales &lt;p&gt;I wrote this blog post back in November 2010 predicting that Umi was going to be a flop on the consumer side unless the start up and reoccurring costs changed. Well here we are in 2012 and as predicted sales to consumers has now ended for the Umi service. Even though Cisco lowered their service cost to $10 a month it wasn’t enough to save this service on the consumer side. You can still buy Umi devices at Best Buy in a fire sale, although the devices are useless to consumers unless you already have a service contract with Cisco.  &lt;p&gt;Goes to show how hard it is to compete with free services like Skype in the consumer world. &lt;p&gt;&lt;a title="http://www.businessinsider.com/looks-like-ciscos-dumb-alternative-to-skype-has-quietly-been-killed-2012-1" href="http://www.businessinsider.com/looks-like-ciscos-dumb-alternative-to-skype-has-quietly-been-killed-2012-1"&gt;http://www.businessinsider.com/looks-like-ciscos-dumb-alternative-to-skype-has-quietly-been-killed-2012-1&lt;/a&gt; &lt;p&gt;Post from 2010: &lt;p&gt;If you haven’t seen any of the press releases this last week around &lt;a href="http://www.xbox.com/en-US/Live/VideoKinect"&gt;Microsoft’s Xbox Kinect&lt;/a&gt; launch the rock you are living under must have its own postcode. Seriously. Although I haven’t received my Kinect yet (its in the mail) I am looking forward to testing out the new video chat feature with Live Messenger 2011. I am a part time gamer but I also use my Xbox 360 for Netflix. So having a Xbox live subscription is something I already have. If you buy from Amazon you can get a Live Gold subscription for about $40 a year.  &lt;p&gt;So when video chat was announced it made perfect sense. The fact you can connect with Windows Live Messenger 2011 made even more sense still. There are also some other scenarios that make sense that I am sure will come to light in the coming months.  &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:bc83d0fb-fc12-4a95-8ca5-fdf8cff091bb" class="wlWriterSmartContent"&gt; &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px" id="f50174f5-5a2e-4ee5-b487-f2e3b7eae6f8"&gt; &lt;div&gt;&lt;a href="http://www.youtube.com/watch?v=35KpZ8kPsb0&amp;amp;feature=player_embedded" target="_new"&gt;&lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" onload="var downlevelDiv = document.getElementById('f50174f5-5a2e-4ee5-b487-f2e3b7eae6f8'); downlevelDiv.innerHTML = &amp;quot;&amp;lt;div&amp;gt;&amp;lt;object width=\&amp;quot;448\&amp;quot; height=\&amp;quot;252\&amp;quot;&amp;gt;&amp;lt;param name=\&amp;quot;movie\&amp;quot; value=\&amp;quot;http://www.youtube.com/v/35KpZ8kPsb0?hl=en&amp;amp;hd=1\&amp;quot;&amp;gt;&amp;lt;\/param&amp;gt;&amp;lt;embed src=\&amp;quot;http://www.youtube.com/v/35KpZ8kPsb0?hl=en&amp;amp;hd=1\&amp;quot; type=\&amp;quot;application/x-shockwave-flash\&amp;quot; width=\&amp;quot;448\&amp;quot; height=\&amp;quot;252\&amp;quot;&amp;gt;&amp;lt;\/embed&amp;gt;&amp;lt;\/object&amp;gt;&amp;lt;\/div&amp;gt;&amp;quot;;" alt="" src="http://lh5.ggpht.com/_Nhm6nBKXa3M/TNdgca4MJrI/AAAAAAAAAW8/b9dWnS7CV2I/videobaba4774cba4%5B14%5D.jpg?imgmax=800" galleryimg="no"&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="width: 448px; clear: both; font-size: 0.8em"&gt;Kinect Video and Live Messenger 2011&lt;/div&gt;&lt;/div&gt; &lt;p&gt;I can’t say the same for &lt;a href="http://home.cisco.com/en-us/telepresence/umi/"&gt;Cisco’s Umi&lt;/a&gt;. Even though it may have the leg up around video resolution with 1080p, the price tag is the least compelling piece of the Umi story. At close to $600 for the unit itself and $25 paid to Cisco a month to participate, it just doesn’t make sense from a consumer point of view. The fact that I can buy an Xbox 360 250Gb bundled with a Kinect ($399 at Amazon) and a yearly Xbox subscription ($40 at Amazon) for less than the price of the Umi may make Umi a nonstarter.  &lt;p&gt; &lt;table border="0" cellpadding="0"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="77"&gt;&amp;nbsp;&lt;/td&gt; &lt;td valign="top" width="76"&gt; &lt;p&gt;&lt;b&gt;Price&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="91"&gt; &lt;p&gt;&lt;b&gt;Subscription Fee&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="42"&gt; &lt;p&gt;&lt;b&gt;Video Res&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="106"&gt; &lt;p&gt;&lt;b&gt;Who Can You Talk To?&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="121"&gt; &lt;p&gt;&lt;b&gt;Other uses&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="77"&gt; &lt;p&gt;&lt;b&gt;Cisco ūmi&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="76"&gt; &lt;p&gt;$599&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="91"&gt; &lt;p&gt;$24.99 monthly subscription&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="42"&gt; &lt;p&gt;HD&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="106"&gt; &lt;p&gt;Google Talk users &lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="121"&gt; &lt;p&gt;None&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="77"&gt; &lt;p&gt;&lt;b&gt;Microsoft Kinect for Xbox 360&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="76"&gt; &lt;p&gt;$399.99 (Xbox 250 Gb + Kinect Bundle; $149.99 Kinect only)&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="91"&gt; &lt;p&gt;Requires $49.99 per year Xbox LIVE Gold membership ($39 from Amazon)&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="42"&gt; &lt;p&gt;VGA&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="106"&gt; &lt;p&gt;Windows Live Messenger 2011&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="121"&gt; &lt;p&gt;Gaming, Netflix streaming video, Messenger, ESPN&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;While Umi may be able to talk with Google Talk users I think the 330 million Windows Live users makes a much more compelling story. I was unable to find up to date numbers for Google which indicates to me that their overall market share is probably pretty low.  &lt;p&gt;In the end, price and functionality are going to be the killer of Cisco Umi or any other at home Telepresence single function device for that matter. Video to other family members just isn’t that compelling from a consumer standpoint when there are free and low cost options such as Kinect, Live Messenger etc. Even the high end consumer is going to look pretty hard at what they are getting. I don’t think that there are that many reckless consumers in the market t that Umi is actually going to be around for very long in its current proposed format. Unless Cisco drastically change the startup or reoccurring cost I think their move into the consumer video market space is going to be a flop.  &lt;p&gt;Video is certainly a big push at Cisco and for many companies video is seen as a cost saver and strategically important. But the consumer space is quite a different story with so many free options. The fact my Xbox will do video with Kinect is a bonus not something I specifically brought it for. Although I am excited about it, its not going to be the first thing I am going to try out. I think you get what I am talking about here.  &lt;p&gt;In the end Kinect is just so much more compelling with sales expected to be in 2-5 million this Holiday season. Along with 40 million daily users of Windows Live and 34 million Xbox live subscribers there is already a large audience ready for Kinect Video. As for Umi, hmmm it does HD. Cool.  &lt;p&gt;Comments welcomed.  &lt;p&gt;VoIPNorm    &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-4493641011626875768?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/qGozeO2n_Aw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/qGozeO2n_Aw/post-update-rip-umi-to-consumers.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/_Nhm6nBKXa3M/TNdgca4MJrI/AAAAAAAAAW8/b9dWnS7CV2I/s72-c/videobaba4774cba4%5B14%5D.jpg?imgmax=800" height="72" width="72" /><thr:total>3</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/01/post-update-rip-umi-to-consumers.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-4981799063923893760</guid><pubDate>Tue, 03 Jan 2012 16:56:00 +0000</pubDate><atom:updated>2012-01-03T08:56:16.001-08:00</atom:updated><title>Whitepaper: Running a Lync SBA on a Cisco ISR/SRE-V</title><description>&lt;p&gt;I haven't seen to much chatter on Twitter about this whitepaper so I thought I would repost a link. I am sure there are companies that will consider this option but its not the most straight forward configuration.This makes me more inclined to recommend partners that have worked closely with Microsoft on their SBA design where implementation is going to be potentially easier. Anyway here is the link as promised:&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;amp;id=28555" href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;amp;id=28555"&gt;http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;amp;id=28555&lt;/a&gt;&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-4981799063923893760?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/f8e30DssXmQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/f8e30DssXmQ/whitepaper-running-lync-sba-on-cisco.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2012/01/whitepaper-running-lync-sba-on-cisco.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-2212137331032268190</guid><pubDate>Mon, 05 Dec 2011 17:12:00 +0000</pubDate><atom:updated>2011-12-05T09:12:54.752-08:00</atom:updated><title>Device Review: Plantronics Blackwire C435-M</title><description>&lt;p&gt;A couple of weeks ago I was lucky enough to get my hands on a new Plantronics beauty.&amp;nbsp; The &lt;a href="http://www.plantronics.com/us/product/blackwire-435?skuId=sku5810016"&gt;Blackwire c435-M&lt;/a&gt; is a great new form factor from Plantronics. I have previously reviewed the &lt;a href="http://www.plantronics.com/us/product/blackwire-400?skuId=sku5480023"&gt;c420-M&lt;/a&gt; which I have been using for quite a while. The 420 is a great headset but any chance I get to lower the bulk in my laptop bag I go for it. The 435 is a great new form factor and as Plantronics did with the 420 it also comes with a&amp;nbsp; great travel case.&lt;/p&gt; &lt;p&gt;What I didn’t like about the 420 was the headband. Its not that it was uncomfortable but it was pretty bulky and inflexible. The 435 completely removes this issue with over the ear style ear buds which means I can use both ear buds or just one. The ear buds are really comfortable as well. Plantronics are very well known for their great ergonomics and this product shows they know peoples heads and ear shapes. The ear buds come with some options to change the ear piece that sits in you ears. Not everyone likes the ear bud style as they can be uncomfortable if not shaped correctly but its not an issue I seem to have. I have more issues with the general shape of my ears and over the ear headset but this headset didn’t have any trouble. Sound quality is every bit as good as the 420.&lt;/p&gt; &lt;p&gt;Like all certified devices the 435 worked out of the box with no issue. A quick test call and it was ready to go. There is a lot to be said for that functionality in Lync. Of course this is the expectation for any Lync certified device so no big surprises.&lt;/p&gt; &lt;p&gt;The call control is also worth a mention. Its got big basic buttons. Very cool. I hate the call control dongles where your searching for buttons with little tiny symbols. Its slim, simple and functional and I like that. &lt;/p&gt; &lt;p&gt;Plantronics are doing a great job when it comes to headsets and they have kept their place in my laptop bag for quite a while now. With only the speaker phone position left, which is currently a GN product, I am waiting for Plantronics to come out with a slimmer design for their speaker phone to see if they can make a clean sweep in the audio department. I have a new motto when it comes to my laptop bag and that is less is more. If you can come out with a slimmer functional design for one of four peripheral spots (headset, speaker phone, handset and webcam) in my bag you win. A protective case is mandatory though.&lt;/p&gt; &lt;p&gt;Below are a few quick pictures I did with my WP7 camera. The case, the call control and the ear buds are all pictured below.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-QTM7o1hmFQM/Ttz7jfafkSI/AAAAAAAAAp8/rBZtjhEK4qM/s1600-h/Plantronics-Blackwire-case4.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Plantronics Blackwire case" border="0" alt="Plantronics Blackwire case" src="http://lh4.ggpht.com/-yjf-Wxn0cus/Ttz7jvAdTqI/AAAAAAAAAqE/zFXAqNe_k2A/Plantronics-Blackwire-case_thumb1.jpg?imgmax=800" width="390" height="294"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-2AMM9S8O9ZQ/Ttz7jw-1V-I/AAAAAAAAAqM/iB7akQqzr5Y/s1600-h/Plantronics-Blackwire-control4.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Plantronics Blackwire control" border="0" alt="Plantronics Blackwire control" src="http://lh5.ggpht.com/-iehgCuwD9q0/Ttz7keIbQDI/AAAAAAAAAqU/FDMXCOzbFiw/Plantronics-Blackwire-control_thumb1.jpg?imgmax=800" width="390" height="294"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-JsrZfg2yuDI/Ttz7kiHZ37I/AAAAAAAAAqc/2ejNk9HimRM/s1600-h/Plantronics-Blackwire4.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Plantronics Blackwire" border="0" alt="Plantronics Blackwire" src="http://lh6.ggpht.com/-R05sOgZELBc/Ttz7ldi8n9I/AAAAAAAAAqk/vC2A7fdY2Uc/Plantronics-Blackwire_thumb1.jpg?imgmax=800" width="391" height="294"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;All in all a great new headset. I am looking forward to what Plantronics have coming out next.&lt;/p&gt; &lt;p&gt;Comments welcomed.&lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-2212137331032268190?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/zcYl29207Ok" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/zcYl29207Ok/device-review-plantronics-blackwire.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/-yjf-Wxn0cus/Ttz7jvAdTqI/AAAAAAAAAqE/zFXAqNe_k2A/s72-c/Plantronics-Blackwire-case_thumb1.jpg?imgmax=800" height="72" width="72" /><thr:total>3</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2011/12/device-review-plantronics-blackwire.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-8316096779989626846</guid><pubDate>Mon, 28 Nov 2011 19:39:00 +0000</pubDate><atom:updated>2011-11-28T11:39:36.641-08:00</atom:updated><title>The Ultimate Voice Career Promotion</title><description>&lt;p&gt;I wanted to let you know about &lt;a href="http://www.ultimatevoicepromo.com/"&gt;The Ultimate Voice Career Promotion&lt;/a&gt;. Microsoft is now offering you a range of options for learning Microsoft Lync and the chance to win great prizes.  &lt;p&gt;Through &lt;a href="http://www.ultimatevoicepromo.com/"&gt;The Ultimate Voice Career Promotion&lt;/a&gt;, you can add a valuable new skillset to your resume and increase the productivity of your entire office. At the same time, you’ll be eligible to win prizes that include &lt;b&gt;$150 Best Buy vouchers&lt;/b&gt; and a &lt;b&gt;$5,000 Kinect entertainment system&lt;/b&gt;!  &lt;p&gt;There are lots of ways to earn points:  &lt;table border="0" cellspacing="0" cellpadding="0"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="412"&gt; &lt;p&gt;· &lt;b&gt;Bite Sized Training Videos&lt;/b&gt;—Watch Lync training videos on-demand  &lt;p&gt;· &lt;b&gt;Deeper Learning&lt;/b&gt;—Attend monthly web clinics  &lt;p&gt;· &lt;b&gt;Blog&lt;/b&gt;—Post a blog review about Lync  &lt;p&gt;· &lt;b&gt;Your Lync Story&lt;/b&gt;—Post a video about your experience with Lync  &lt;p&gt;· &lt;b&gt;Twitter&lt;/b&gt;—Tweet about your Lync experience&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="198"&gt; &lt;p&gt;&lt;a href="http://www.ultimatevoicepromo.com/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://lh3.ggpht.com/-7ic8S-sJPpQ/TtPjdjBJ1OI/AAAAAAAAApk/yPRMVxDEx0A/clip_image002%25255B3%25255D.png?imgmax=800" width="244" height="158"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;And lots of ways to win. Use your points to unlock chances to win prizes every month. Your points won’t expire until the end of June 2012. Also, any month you earn points results in an entry for that period’s grand prize.  &lt;p&gt;The Ultimate Voice Career Sweepstake launches November 23&lt;sup&gt;rd&lt;/sup&gt; and the first 500 people to participate and earn points will receive an insulated lunch tote—&lt;b&gt;so get started now.&lt;/b&gt;  &lt;table border="0" cellspacing="0" cellpadding="0"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td width="46"&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-ZEexGlc3Vn8/TtPjd2Qq0ZI/AAAAAAAAApo/oDoatHs8z2M/s1600-h/clip_image003%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image003" border="0" alt="clip_image003" src="http://lh5.ggpht.com/-BfN7ggkIPok/TtPjdxyCIJI/AAAAAAAAApw/lOq7N8QnXd8/clip_image003_thumb.png?imgmax=800" width="32" height="30"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="336"&gt; &lt;p&gt;&lt;b&gt;Register at &lt;a href="http://www.ultimatevoicepromo.com"&gt;www.ultimatevoicepromo.com&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-8316096779989626846?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/626Ag7E0ujk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/626Ag7E0ujk/ultimate-voice-career-promotion.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/-7ic8S-sJPpQ/TtPjdjBJ1OI/AAAAAAAAApk/yPRMVxDEx0A/s72-c/clip_image002%25255B3%25255D.png?imgmax=800" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2011/11/ultimate-voice-career-promotion.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-6562786343089808728</guid><pubDate>Mon, 21 Nov 2011 21:01:00 +0000</pubDate><atom:updated>2011-11-21T13:01:13.988-08:00</atom:updated><title>Avaya ACE Versus Lync Native Post Wrap-up–Stats, Tweets and Classic Comments</title><description>&lt;p&gt;Last week was a fun week on VoIPNorm. It was the biggest response to any single post I have had on the blog and certainly generated some interesting comments. 65 comments to be exact, over 70 tweets and over 4000 page views for the week. I had to close down the comments this week partly because the time it was consuming was considerable and the conversation was becoming circular and not really moving forward.&lt;/p&gt; &lt;p&gt;So to all those that took part and commented I thank you.&lt;/p&gt; &lt;p&gt;Stats for the week (see week 46):&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-7GFdhckE1Zg/Tsq6lpXWINI/AAAAAAAAAoU/6uJMI0nkV-I/s1600-h/image%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/-56FJmrGVCLE/Tsq6wg95iNI/AAAAAAAAAoc/BvD1TYDtRfU/image_thumb%25255B1%25255D.png?imgmax=800" width="499" height="190"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Classic Tweets:&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-XtiY15XItXE/Tsq67fDhaTI/AAAAAAAAAok/lS-U-IFrOjk/s1600-h/image%25255B7%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-ioILOJKJ5h0/Tsq7GIvN4oI/AAAAAAAAAos/1qvF_SigGj0/image_thumb%25255B3%25255D.png?imgmax=800" width="463" height="80"&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-PojuYDL4mrQ/Tsq7Q1T0bHI/AAAAAAAAAo0/XqxzIcohwCo/s1600-h/image%25255B16%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-niwrr3crwFM/Tsq7bp7iwoI/AAAAAAAAAo8/3a2C-EYKs7M/image_thumb%25255B8%25255D.png?imgmax=800" width="457" height="93"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-7e2PxC73KmQ/Tsq7mUMA2EI/AAAAAAAAApE/LjCIGUlN9Q8/s1600-h/image%25255B15%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-zYzohmxvPzI/Tsq7w0hZzyI/AAAAAAAAApM/XRTtp8E6vmI/image_thumb%25255B7%25255D.png?imgmax=800" width="460" height="99"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-acy6Ha0xBCw/Tsq77gLeo7I/AAAAAAAAApU/DZbZAlcUW7Y/s1600-h/image%25255B20%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/-vX8WptHlEDU/Tsq8GaoG1WI/AAAAAAAAApc/_zuLqQ4Z6rk/image_thumb%25255B10%25255D.png?imgmax=800" width="457" height="80"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Classic comments:&lt;/p&gt; &lt;p&gt;“you are afterall a MSFT-paid shill” - &lt;strong&gt;By Anon&lt;/strong&gt; (Proof I publish all non-spam comments no matter how insulting)&lt;/p&gt;   &lt;p&gt;“The "preserve a legacy deployment" comment about ACE isn't quite fair” – &lt;strong&gt;By Anon&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“ACE is less about choice and more about preservation” –&lt;strong&gt;By VoIPNorm&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“All integration options with Lync have pros and cons” – &lt;strong&gt;By Anon&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“Issue is Avaya is not a software company and it never will be” – &lt;strong&gt;By Anon&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“Avaya customers should ask themselves is how viable the company is” – &lt;strong&gt;By Anon&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“What happens to call control if ACE is un-available but Lync is? Isn't that confusing to my end-users? Um, how about you pick up the phone and dial a number. It's what most every user does today.” – &lt;strong&gt;By Anon&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“I came into Avaya noticing how reactive the organization was because their new set of services had not yet been released and Microsoft Lync was taking off like wildfire within each of their accounts, especially the large ones.” – &lt;strong&gt;By Joe Schurman&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“what we should be focused on is providing consultation as a trusted advisor and advising the customer as to the appropriate vendor in a fit for purpose environment that will most definitely be multi-vendor, but suited with a best of breed approach and architecture that benefits the customer” – &lt;strong&gt;By Joe Schurman&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“In my opinion there is currently no vendor in the marketplace today that can compete with Microsoft Lync on the desktop or Mac “ – &lt;strong&gt;By Joe Schurman&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“It’s really a great solution because it does not interfere with the Lync end-user experience, provides the organization with protection on the investments they’ve already made in Avaya CM, SM, etc., and more importantly will allow users a choice of desktop and mobile solutions with Lync and One-X until Flare is available in mid-2012 to add to the mix” – &lt;strong&gt;By Joe Schurman&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“At the core of this argument is this - that there is more value in Avaya voice than the voice capabilities in Lync, therefore a customer should buy and use ACE to hijack the voice portion " – &lt;strong&gt;By Anon&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“I'm not sure why people are getting confused with what ACE actually is. It's not middleware” – &lt;strong&gt;By Joe Schurman&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“the Lync platform is definitely innovative and provides a unique and innovative end-user experience” – &lt;strong&gt;By Joe Schurman&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“ACE was always a good concept however it does not necessarily best address a specific customer's requirements.” – &lt;strong&gt;By Kevin Kieller&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“Kevin Kennedy (Avaya President) &amp;amp; Scott Brown (Microsoft Voice VP) are leading wonderful companies, with wonderful solutions that can work very nicely, TOGETHER. Respectfully.” – &lt;strong&gt;By Bob Bluemer&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“A solution is "good" because it meets the defined customer requirements. A solution is "better" if it meets more specific customer requirements.” - &lt;strong&gt;By Kevin Kieller&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“The fact is ACE intention is to stall Lync Enterprise Voice deployments and better positions Flare later in 2012 ” – &lt;strong&gt;By VoIPNorm&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“I'm elated to hear you reference Avaya's new open minded approach to Microsoft, as I have customers that have asked for Lync with and without ACE, also with direct SIP integration utilzing Exchange UM. To date I have not been able to service these customers without the threats and fear that Avaya is going to pull my "loyalty" bonus” – &lt;strong&gt;By Anon&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“A great bottle of white wine mixed with a wonderful bottle of red does not often yield even a drinkable rose.” – &lt;strong&gt;By Kevin Kieller&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“If Avaya is so customer focused on making multi vendor environments work, then why are they not part of the UCIF?” – &lt;strong&gt;By Anon&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“Kudos to you if you now understand why some people are upset and feel betrayed with your FUD spreading, but to dismiss it on one hand and continue to do it in the other...seriously, how is anyone ever supposed to believe anything you say?” – &lt;strong&gt;By&amp;nbsp; Thomas Kisner about Joe Schurman&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“The telecom business is full of old foxes that want to protect themself rather than looking at the customers real needs and taking todays date and year into that account. “ – &lt;strong&gt;By Tommy Clarke&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“I just can't see how architecturally, any middleware (ACE/Aura) can possibly keep up and expose the features of the rapidly evolving connected endpoints” – &lt;strong&gt;By Kevin Kieller&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“If I were to stand the native Lync experience next to the ACE experience there is no comparison. ACE is rudimentary integration at best.” – &lt;strong&gt;By VoIPNorm&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“Capabilities from both Microsoft and Avaya will certainly change over time. We should agree to meet back "here" six or twelve months from now and refresh the debate/discussion.” – &lt;strong&gt;By Kevin Kieller&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;“@joeschurman Wishing you a speedy recovery.” – &lt;strong&gt;By Matt Landis&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;And as Kevin suggested we will back in in six months time to check in.&lt;/p&gt; &lt;p&gt;Thanks again to everyone who commented. &lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-6562786343089808728?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/UH7kmJC6KdQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/UH7kmJC6KdQ/last-week-was-fun-week-on-voipnorm.html</link><author>noreply@blogger.com (Chris Norman)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/-56FJmrGVCLE/Tsq6wg95iNI/AAAAAAAAAoc/BvD1TYDtRfU/s72-c/image_thumb%25255B1%25255D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2011/11/last-week-was-fun-week-on-voipnorm.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2158853543793456735.post-5614797412070356973</guid><pubDate>Fri, 11 Nov 2011 16:47:00 +0000</pubDate><atom:updated>2011-11-21T07:58:23.229-08:00</atom:updated><title>What Avaya Aren’t Telling You About ACE</title><description>&lt;p&gt;I have seen a lot of information or should I say misinformation recently around ACE about what it does and what it can save &lt;a href="http://lh5.ggpht.com/-z9SxIEvaHnE/TpNHwB4ls8I/AAAAAAAAAl0/9uMzQacl0tA/s1600-h/image%25255B30%25255D.png"&gt;you when combined with Lync&lt;/a&gt;. Most of you know by now I have never been a believer in plugins, even before I started working at Microsoft I was never a fan.&amp;nbsp; My &lt;a href="http://voipnorm.blogspot.com/2009/08/cucimoc-final-say.html"&gt;first tests with plugins&lt;/a&gt; showed me just how disjointed a user experience they really are. Paired with that is the misinformation that vendors are spreading around licensing cost savings with being able to go back to Standard Cal for Lync because of a &lt;a href="http://www.youtube.com/watch?v=jQgdwtnEL9I"&gt;plugin that only does telephony&lt;/a&gt; which by the way is not free in it self. &lt;/p&gt; &lt;p&gt;So if you are a company running Lync and Avaya comes knocking with ACE here are a few questions to ask:&lt;/p&gt; &lt;ul&gt; &lt;ul&gt; &lt;li&gt;How does &lt;a href="http://lh5.ggpht.com/-lrVkhuN0j2s/TpNHxok7cJI/AAAAAAAAAmE/Cdpy52cWEaE/s1600-h/image%25255B41%25255D.png"&gt;ACE support VPNLess&lt;/a&gt; access?&lt;/li&gt; &lt;li&gt;How Does ACE work with Lync Federation?&lt;/li&gt; &lt;li&gt;How does ACE tie in with my CEBP presence enabled applications?&lt;/li&gt; &lt;li&gt;How does ACE support video?&lt;/li&gt; &lt;li&gt;How does ACE support dynamic location aware E911?&lt;/li&gt; &lt;li&gt;What about dynamic bandwidth codecs on the internet?&lt;/li&gt; &lt;li&gt;Lync Audio and web conferencing support?&lt;/li&gt; &lt;li&gt;If I drop back to Standard Cal with Lync can I still use Lync audio, video and web conferencing?&lt;/li&gt; &lt;li&gt;Does ACE support media Encryption?&lt;/li&gt; &lt;li&gt;Is the ACE integration supported by Microsoft?&lt;/li&gt; &lt;li&gt;How long after a Microsoft releases a new version of Lync does ACE support become available?&lt;/li&gt; &lt;li&gt;If I use ACE, what is the conferencing experience like?&lt;/li&gt; &lt;li&gt;What additional components and costs are needed for Avaya’s conferencing solution?&lt;/li&gt; &lt;li&gt;Can I escalate a peer2peer voice session into a Lync data collaboration experience?&amp;nbsp; How many steps are required?&lt;/li&gt; &lt;li&gt;What happens to call control if ACE is un-available but Lync is? Isn't that confusing to my end-users?&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt; &lt;p&gt;You will be surprised by just how many of these answers are no, breaking the UC experience or offering you limited support. I strongly encourage people to read my post on &lt;a href="http://voipnorm.blogspot.com/2011/10/lync-native-features-versus-plugins.html"&gt;plugins versus native&lt;/a&gt; to see more of my insight as to why breaking the Lync experience to preserve a legacy deployment with a plugin is not as easy as competitors make out. &lt;/p&gt; &lt;p&gt;VoIPNorm&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2158853543793456735-5614797412070356973?l=voipnorm.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VoipnormsUnifiedCommunicationsBlog/~4/bR4asbteqVM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/VoipnormsUnifiedCommunicationsBlog/~3/bR4asbteqVM/what-avaya-arent-telling-you-about-ace.html</link><author>noreply@blogger.com (Chris Norman)</author><thr:total>65</thr:total><feedburner:origLink>http://voipnorm.blogspot.com/2011/11/what-avaya-arent-telling-you-about-ace.html</feedburner:origLink></item></channel></rss>

