For the most part, there’s a pretty close tie between the items found in the Lync Server Control Panel and the parameters and property values used in Microsoft Lync Server 2010’s implementation of Windows PowerShell. For example, take a look at the following table, which compares the item labels used in the
     
      Edit Meeting Configuration
     
     dialog in the Control Panel with their Windows PowerShell equivalents:
     
    
   
  
| Control Panel Labels 
 | Windows PowerShell Properties/Parameters 
 | 
| PSTN callers bypass lobby 
 | PstnCallersBypassLobby 
 | 
| Designate as presenter 
 | DesignateAsPresenter 
 | 
| Assigned conference type by default 
 | AssignedConferenceTypeByDefault 
 | 
| Admit anonymous users by default 
 | AdmitAnonymousUsersByDefault 
 | 
   
    
     
     Can’t get much closer than that, can you?
     
   
   
    
     At any rate, we – what’s that? Well, yes, we did say that
     
      for the most part
     
     there’s a pretty close tie between the items found in the Lync Server Control Panel and the parameters and property values used in Microsoft Lync Server 2010’s implementation of Windows PowerShell. So does that mean that there are exceptions to that general rule? Well, to be perfectly honest, yes, there are. For the most part, though, those exceptions aren’t worth losing any sleep over.
     
   
   
    
     Right, we
     
      did
     
     use the phrase “for the most part” again, didn’t we? We should probably stop doing that; it just creates more work on our end.
     
   
   
    
     OK, as it turns out there is at least one important area in which the values shown in the Control Panel and the corresponding PowerShell properties and
     
     
     parameters don’t match up very well: telephony. If you create or modify a user account using the Control Panel you’ll see the following telephony options:
     
- 
    
 Audio/Video disabled 
 
- 
    
 PC-to-PC only 
 
- 
    
 Enterprise Voice 
 
- 
    
 Remote call control 
 
   
    
     
     And if you look at the PowerShell parameters for the
     
      Set-CsUser
     
     cmdlet you’ll see parameter names like these:
     
     
- 
    
 -AudioVideoDisabled
 
- 
    
 -IPPBXSoftPhoneRoutingEnabled
 
- 
    
 -RemoteCallControlTelephonyEnabled
 
- 
    
 -EnterpriseVoiceEnabled
 
     
      
     
    
   
   
    
     Set-CsUser "Ken Myer" –RemoteCallControlTelephonyEnabled $True
     
   
   
    
     But you would be wrong:
     
   
   
    
     Set-CsUser : Remote call control mode cannot be set when user is enabled for Enterprise Voice.
     
    
   
   
    
     At line:1 char:11
     
    
   
   
    
     + set-csuser <<<<
     
     
     "Ken Myer" -RemoteCallControlTelephonyEnabled $True
     
    
   
   
    
     
     
     + CategoryInfo
     
     
     : InvalidOperation: (CN=Ken Myer,OU=V_ou,DC=Vdomain,DC=com:OCSADUser)
     
    
   
   
    
     
     
     [Set-CsUser], ManagementException
     
    
   
   
    
     
     
     + FullyQualifiedErrorId : SetCSUser,Microsoft.Rtc.Management.AD.Cmdlets.SetOcsUserCmdlet
     
   
   
    
     As it turns out, you can’t enable Ken Myer for Remote Call Control if he’s currently enabled for Enterprise Voice (or vice-versa). In fact, there’s a fairly complex little matrix of parameters and parameter values that must be used in order to configure the telephony options for a user.
     
   
   
    
     Good point: if only
     
      someone
     
     could show us those parameters and parameter values, and then show how those things relate to the telephony options found in the Control Panel. You know, if only someone could put together a table like this one:
     
     
| Control Panel option 
 | 
       
        
         IPPBXSoftPhone
          
 | 
       
        
         AudioVideo
          
 | 
       
        
         RemoteCallControl
          
 | 
       
        
         EnterpriseVoice
          
 | 
| Audio/video disabled 
 | $False 
 | $True 
 | $False 
 | $False 
 | 
| PC-to-PC only 
 | $False 
 | $False 
 | $False 
 | $False 
 | 
| Enterprise Voice 
 | $False or $True 
 | $False 
 | $False 
 | $True 
 | 
| Remote call control 
 | $False 
 | $False 
 | $True 
 | $False 
 | 
   
    
     
     Hey, we told you it was a little complicated, didn’t we? But here’s the deal: if you want to set Ken Myer’s telephony option to
     
      Audio/video disabled
     
     you need to use the preceding table to construct a command like this one:
     
   
   
    
     Set-CsUser "Ken Myer" –AudioVideoDisabled $True –RemoteCallControlTelephonyEnabled $False –IPPBXSoftPhoneRoutingEnabled $False –EnterpriseVoiceEnabled $False
     
Note . OK, depending on how Ken’s account is currently configured you might not need to use all those parameters. But the above command will always set Ken’s telephony option to Audio/video disabled, regardless of how his account is currently set up.
   
    
     
     The trick here? Set the –AudioVideoDisabled parameter to $True and everything else to $False.
     
   
   
    
     Want to set Ken’s account to
     
      PC-to-PC only
     
     ? Then use this command:
     
   
   
    
     Set-CsUs