Solved

Address lists in Exchange 2010 with multiple CustomAttributes

Posted on 2011-09-19
10
1,246 Views
Last Modified: 2012-05-12
Exchange 2010 SP1 RU5

I am trying to make dynamic address book lists according to Custom Attributes. I have some teachers that teach at different schools and they need to be put in address books which are set up for each school. I populated extensionAtrributes in AD with school locations which a teacher belongs to according to Human Resources. Then I made an address list with Custom Attributes set to multiple locations like this:

new-AddressList -Name 'test-fremont' -RecipientContainer 'sdw.ad/SCHOOLS' -IncludedRecipients 'AllRecipients' -ConditionalCustomAttribute2 '706' -ConditionalCustomAttribute3 '706' -Container '\Schools' -DisplayName 'test-school'

My AD extensionAttributes:

extensionAttribute 2 = 701  ==> Custom Attribute 2

extensionAttribute 3 = 706  ==> Custom Attribute 3

My problem is that I can't use (or don't know how to) multiple CustomAttributes as an 'OR' statement. In my statement above it command tries to meet all requirements. So if I have a teacher with multiple extensionAttributes in AD, I can't just pick one Custom Attribute. I was hoping to use an -OR statement in the new-AddressList command to populate those lists. Is there a way to use the -OR or is there a better way to create address lists and look at different Custom Attributes for location?

Thanks, Alex
0
Comment
Question by:akorkishko
  • 4
  • 4
  • 2
10 Comments
 
LVL 7

Expert Comment

by:brota
Comment Utility
from this article you can use -or

•Powershell uses "-and", "-or", and "-not" (yes, with leading hyphen)


http://blogs.technet.com/b/exchange/archive/2007/01/10/3397707.aspx

Some good examples of -or
http://technet.microsoft.com/en-us/library/cc164375.aspx
0
 
LVL 12

Expert Comment

by:FDiskWizard
Comment Utility
Try it this way:

Replace:  -ConditionalCustomAttribute2 '706' -ConditionalCustomAttribute3 '706'
With:        -RecipientFilter {(ExtensionAttribute2 -eq "701") -OR (ExtensionAttribute3 -eq "706")}

Have not tested. But I think that should do it.
0
 

Author Comment

by:akorkishko
Comment Utility
Thanks for replies guys.

FDISKWizard, I have tried your recommendation and this is what I got:

[PS] C:\Windows\system32>new-AddressList -Name 'test-1' -RecipientContainer 'wsd.ad/SCHOOLS' -IncludedRecipients 'AllRec
ipients' -RecipientFilter {(ExtensionAttribute2 -eq "701") -OR (ExtensionAttribute3 -eq "706")} -Container '\Schools' -D
isplayName 'test-school'
Parameter set cannot be resolved using the specified named parameters.
    + CategoryInfo          : InvalidArgument: (:) [New-AddressList], ParameterBindingException
    + FullyQualifiedErrorId : AmbiguousParameterSet,New-AddressList

Any clues?
0
 
LVL 7

Expert Comment

by:brota
Comment Utility
try this

-RecipientFilter {(RecipientType -eq 'UserMailbox') -and (ExtensionAttribute2 -eq "701")  -or  (ExtensionAttribute3 -eq "706")}
0
 

Author Comment

by:akorkishko
Comment Utility
Same error:

[PS] C:\Windows\system32>New-AddressList -Name 'test-1' -RecipientContainer 'wsd.ad\Schools' -IncludedRecipients 'AllRecipients' -RecipientFilter {(RecipientType -eq 'UserMailbox') -and (ExtensionAttribute -eq "701") -or (ExtensionAttribute -eq "706")} -Container '\Schools' -DisplayName 'test-1'

Parameter set cannot be resolved using the specified named parameters.
    + CategoryInfo          : InvalidArgument: (:) [New-AddressList], ParameterBindingException
    + FullyQualifiedErrorId : AmbiguousParameterSet,New-AddressList

Thanks again for the help.
0
What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 7

Accepted Solution

by:
brota earned 250 total points
Comment Utility
try taking out 'AllRecipients'
0
 
LVL 12

Assisted Solution

by:FDiskWizard
FDiskWizard earned 250 total points
Comment Utility
Yeah... I don't think you can mix the -IncludedRecipients  and -RecipientFilter together.
So, take out the whole "IncludedRecipients 'AllRecipients'" part.
0
 

Author Comment

by:akorkishko
Comment Utility
Thanks guys, figured it out. You had me on the right path. I had to replace extensionAttribute with CustomAttribute, I guess Exchange doesn't see 'extensionAttribute' from AD.

My final command looks like this, in case someone else runs into this:

[PS] C:\Windows\system32>New-AddressList -Name 'test-1' -RecipientContainer 'wsd.ad' -RecipientFilter {(CustomAttribute2 -eq "701") -or (CustomAttribute3 -eq "706")} -Container '\Schools' -DisplayName 'test-1'

Since both of you helped me, can I give points to both of you?
0
 
LVL 7

Expert Comment

by:brota
Comment Utility
yes the points can be split

0
 

Author Closing Comment

by:akorkishko
Comment Utility
I added my own solution for others to see the correct syntax
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Find out how to use Active Directory data for email signature management in Microsoft Exchange and Office 365.
This article explains in simple steps how to renew expiring Exchange Server Internal Transport Certificate.
In this video we show how to create a Shared Mailbox in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Recipients >> Sha…
In this video we show how to create an Address List in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Organization >> Ad…

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now