Exchange Server 2007 Resource Mailboxes Part 3 – Custom Resource Properties

Written by Paul Cunningham on May 28, 2009

In part 1 of this series I introduced Exchange Server 2007 Resource Mailboxes and demonstrated how to create Room Mailboxes.  In part 2 of this series I went on to demonstrate how to create Equipment Mailboxes.  Now in part 3 of this series I’ll demonstrate creating custom resource properties for Resource Mailboxes.

What are Custom Resource Properties?

Custom resource properties are additional attributes that can be assigned to Room and Equipment mailboxes to indicate which features are available for those resources.

projector

For example, in an organisation that has several meeting rooms with different features, custom resource properties can be used to show which room has teleconferencing equipment, which one has a whiteboard, which one has tea and coffee facilities, etc.

Similarly for Equipment mailboxes custom resource properties can indicate features such as which vehicles have a GPS installed, or what kind of vehicle (such as truck, van, car) it is.

Extending the Resource Property Schema

By default in an Exchange Server 2007 there is no custom resource properties defined.

[PS] C:>Get-ResourceConfig

Name                      ResourcePropertySchema
----                      ----------------------
Resource Schema           {}

Resource properties can be defined using the Set-ResourceConfig cmdlet in the Exchange Management Shell.

In this example I define a custom resource property to indicate that a Room Mailbox contains a projector.  The change is immediately applied and will appear when running the Get-ResourceConfig cmdlet again.

[PS] C:>Set-ResourceConfig -ResourcePropertySchema
 Room/Projector

[PS] C:>Get-ResourceConfig

Name                      ResourcePropertySchema
----                      ----------------------
Resource Schema           {Room/Projector}

Schema changes made by the Set-ResourceConfig cmdlet overwrite existing settings instead of adding to them.  For example if I run another command to add a whiteboard property the earlier property of “projector” is overwritten.

[PS] C:>Set-ResourceConfig -ResourcePropertySchema
 Room/Whiteboard

[PS] C:>Get-ResourceConfig

Name                      ResourcePropertySchema
----                      ----------------------
Resource Schema           {Room/Whiteboard}

To prevent existing properties being overwritten with new updates you must first read the existing configuration into an array.

[PS] C:>$ResourceConfig = Get-ResourceConfig

[PS] C:>$ResourceConfig

Name                      ResourcePropertySchema
----                      ----------------------
Resource Schema           {Room/Whiteboard}

Make modifications to the array using PowerShell commands.  For example, to add an additional feature of “whiteboard” to the schema:

[PS] C:>$ResourceConfig.ResourcePropertySchema.Add
 ("Room/Projector")

Apply the changes to the resource property schema.

[PS] C:>Set-ResourceConfig -Instance $ResourceConfig

[PS] C:>Get-ResourceConfig

Name                      ResourcePropertySchema
----                      ----------------------
Resource Schema           {Room/Projector, Room/
Whiteboard}

Note that the Get-ResourceConfig cmdlet now shows both the existing and newly added properties.

You can use the same method to add multiple new entries.

[PS] C:>$ResourceConfig = Get-ResourceConfig

[PS] C:>$ResourceConfig.ResourcePropertySchema.Add
 ("Room/Teleconference")
[PS] C:>$ResourceConfig.ResourcePropertySchema.Add
 ("Room/TeaCoffee")
[PS] C:>$ResourceConfig.ResourcePropertySchema.Add
 ("Equipment/Van")
[PS] C:>$ResourceConfig.ResourcePropertySchema.Add
 ("Equipment/Car")
[PS] C:>$ResourceConfig.ResourcePropertySchema.Add
 ("Equipment/GPS")

[PS] C:>Set-ResourceConfig -Instance $ResourceConfig
[PS] C:>Get-ResourceConfig | fl ResourcePropertySchema

ResourcePropertySchema : {Equipment/GPS, Equipment/Car
, Equipment/Van, Room/TeaCoffee, Room/Teleconference,
 Room/Projector, Room/Whiteboard}

Custom properties can also be removed from the resource schema using a similar method.  For example, to remove the “TeaCoffee” feature from the schema:

[PS] C:>$ResourceConfig = Get-ResourceConfig

[PS] C:>$ResourceConfig.ResourcePropertySchema.Remove
 ("Room/TeaCoffee")
True
[PS] C:>Set-ResourceConfig -Instance $ResourceConfig
[PS] C:>Get-ResourceConfig | fl ResourcePropertySchema

ResourcePropertySchema : {Equipment/GPS, Equipment/Car,
 Equipment/Van, Room/Teleconference, Room/Projector,
 Room/Whiteboard}

Applying Changes to Resource Mailboxes

Custom resource properties can be added to mailboxes via the Resource Information tab in the mailbox properties.

resourceschema01

Click on the Add button, choose the custom property you wish to add, and then click OK.

resourceschema02

Click on OK again to apply the change to the mailbox

resourceschema03

The custom property is now visible to end users in Outlook when choosing the room for a meeting request.

resourceschema04

Subscribe to my RSS feed

6 Comments to “Exchange Server 2007 Resource Mailboxes Part 3 – Custom Resource Properties”

  1. Exchange Server 2007 Resource Mailboxes Part 2 - Equipment Mailboxes Says:

    [...] the next part of the series: Exchange Server 2007 Resource Mailboxes Part 3 – Custom Resource Properties Liked this post? Share [...]

  2. Owen Says:

    I flunk out at the second command. What gives?
    [PS] C:\>Set-ResourceConfig -ResourcePropertySchema Room/Projector
    Set-ResourceConfig : Active Directory operation failed on mail.rsnz.local. This
    error is not retriable. Additional information: The parameter is incorrect.
    Active directory response: 00000057: LdapErr: DSID-0C090A85, comment: Error in
    attribute conversion operation, data 0, vece
    At line:1 char:19
    + Set-ResourceConfig <<<< -ResourcePropertySchema Room/Projector

  3. Paul Cunningham Says:

    Hi Owen,

    Some of the command lines have wrapped.

    Set-ResourceConfig -ResourcePropertySchema Room/Projector

    …should be all one line/command. You can also refer to the Technet page for Set-ResourceConfig to see example syntax.

    http://technet.microsoft.com/en-us/library/aa998861.aspx

  4. Micahel Says:

    Great we can set custom properties for equipment resources, but how can users view them? I haven’t been able to find any way to custom a “All Equipment” address book view so the user can see the custom properties like they can with the “All Rooms” address book.

  5. Paul Cunningham Says:

    Hi Micahel,

    First, creating custom properties such as “Whiteboard” or “Projector” for Room Mailboxes does not automatically create matching Equipment Mailboxes for the Whiteboard or Projector.

    If you want to create Equipment Mailboxes see my post here:
    http://www.theemailadmin.com/2009/05/exchange-server-2007-resource-mailboxes-part-2-equipment-mailboxes/

    Then if you want to create an Address List to show just your Equipment Mailboxes, run this Exchange Management Shell command (all one line):

    New-AddressList “All Equipment” -RecipientFilter “(ResourceType -eq ‘Equipment’)”

    Then run:

    Update-AddressList “All Equipment”

    Restart Outlook and you should now see a new “All Equipment” address list.

  6. Steve Says:

    This post has been very helpful! I just have one quick question – currently my OAB does not have the capacity or description column showing. Is there a simple edit to add those columns into the default view?

Leave a Comment

Comment Policy