title: PowerShell get-mailbox filter on protocolSettings
body: <p>The protocolSettings attribute of get-mailbox can return multiple values depending upon what is enabled or disabled.  By default, when a new user is created, none of the attributes exist until they are enabled or disabled.</p>
  
  <p>I want to return all the protocolSettings from Get-Mailbox using the -filter to optimize the command by not piping to Where or Select.  This should reduce the amount of records returned before I use a pipe.</p>
  
  <p>Piping Select will give me the output, but again, I want to avoid the pipe and use the -filter:</p>
  
  <pre><code>Get-Mailbox  | select ProtocolSettings
  
  {MAPI§1§§§§1§§§, HTTP§0§1§§§§§§, OWA§0, RemotePowerShell§1}
  </code></pre>
  
  <p>Is there a way to use the -filter to return what I am geting in the Select pipe?</p>
  
  <p>I have tried:</p>
  
  <pre><code>Get-Mailbox  -Filter {(ProtocolSettings)}
  Cannot bind parameter 'Filter' to the target. Exception setting "Filter":
   "Invalid filter syntax
  </code></pre>
  
  <p>Anyone know a way to return all the ProtocolSettings from the -filter parameter?</p>
  
  <p>The full commnad I am using is as follows:</p>
  
  <pre><code>get-mailbox -OrganizatinalUnit 'OU=test,DC=Domain,DC=com' `
  -filter {(CustomAttribute14 -eq 'Test') -and (ProtocolSettings)}
  </code></pre>