Template Entity updates

From Make 6.1 the following entities are added or updated with new functionality.

Teams Entity with members and owners

You can now directly add members and owners when creating a Team:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
<Configurator xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.mavention.com/Graph/Make">
  <Providers>
    <Provider NodeName="Graph" Class="Mavention.Make.Engine.Providers.GraphProvider" Assembly="Mavention.Make.Engine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a43c589e76ba4e3d"/>
  </Providers>
  <Graph>
    <Teams>
      <TeamBeta DisplayName="{Title}" Description="{Title}" MailNickname="{mailNickName}" Visibility="{security}" GetObjectBy="InternalName">
        <Owners UserPrincipalNames="{owners}" />
        <Members>
        <User UserPrincipalName="{member1}"/>
        </Members>
        <GuestSettings AllowCreateUpdateChannels="false" AllowDeleteChannels="false" />
        <MemberSettingsBeta AllowCreatePrivateChannels="true" AllowAddRemoveApps="true" AllowCreateUpdateChannels="true" AllowCreateUpdateRemoveConnectors="true" AllowCreateUpdateRemoveTabs="true" AllowDeleteChannels="true"/>
      </TeamBeta>
    </Teams>
  </Graph>
</Configurator>

Owners and Members Can be declared in two different ways:

  • 1:
1
2
<Owners UserPrincipalNames="{owners}" />
<Members UserPrincipalNames="{members}" />
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
{
  "id":"owners",
  "title":"owners",
  "inputType":"text",
  "required":true,
  "sampleValue":"user1@tenant.onmicrosoft.com;user2@tenant.onmicrosoft.com",
  "value":"user1@tenant.onmicrosoft.com;user2@tenant.onmicrosoft.com"
},
{
  "id":"members",
  "title":"Members",
  "inputType":"text",
  "required":false,
  "sampleValue":"user3@tenant.onmicrosoft.com;user4@tenant.onmicrosoft.com",
  "value":"user3@tenant.onmicrosoft.com;user4@tenant.onmicrosoft.com"
}
  • 2:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
<Owners>
  <User UserPrincipalName="{owner1}"/>
  <User UserPrincipalName="{owner2}"/>
</Owners>

<Members>
  <User UserPrincipalName="{member1}"/>
  <User UserPrincipalName="{member2}"/>
  <User UserPrincipalName="{member3}"/>
</Members>
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{
  "id":"owner1",
  "title":"owner1",
  "inputType":"text",
  "required":true,
  "sampleValue":"user1@tenant.onmicrosoft.com",
  "value":"user1@tenant.onmicrosoft.com"
},
{
  "id":"owner2",
  "title":"owner2",
  "inputType":"text",
  "required":false,
  "sampleValue":"user2@tenant.onmicrosoft.com",
  "value":"user2@tenant.onmicrosoft.com"
},
{
  "id":"member1",
  "title":"member1",
  "inputType":"text",
  "required":true,
  "sampleValue":"user3@tenant.onmicrosoft.com",
  "value":"user3@tenant.onmicrosoft.com"
},
{
  "id":"member2",
  "title":"member2",
  "inputType":"text",
  "required":false,
  "sampleValue":"user4@tenant.onmicrosoft.com",
  "value":"user4@tenant.onmicrosoft.com"
},
{
  "id":"member3",
  "title":"member3",
  "inputType":"text",
  "required":false,
  "sampleValue":"user5@tenant.onmicrosoft.com",
  "value":"user6@tenant.onmicrosoft.com"
}

If you would like to remove a member or an owner use the second method. and add an ObjectAction="Delete":

1
2
3
4
<Members>
  <User UserPrincipalName="{member1}"/>
  <User UserPrincipalName="{member2}" ObjectAction="Delete"/>
</Members>

Private channels

It is now possible to create Private channels with Make. To make use of Private channels the ChannelBeta Entity needs to be used with MembershipType="Private". When adding, removing or updating owners and or members the same rules apply as for the Teams entity (see above).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<Configurator xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.mavention.com/Graph/Make">
  <Providers>
    <Provider NodeName="Graph" Class="Mavention.Make.Engine.Providers.GraphProvider" Assembly="Mavention.Make.Engine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a43c589e76ba4e3d"/>
  </Providers>
  <Graph>
    <Teams>
      <TeamBeta DisplayName="{Title}" Description="{Title}" MailNickname="{mailNickName}" Visibility="{security}" GetObjectBy="InternalName">
        <Owners UserPrincipalNames="{owners}" />
        <Members>
        <User UserPrincipalName="{member1}"/>
        </Members>
        <GuestSettings AllowCreateUpdateChannels="false" AllowDeleteChannels="false" />
        <Channels>
          <ChannelBeta DisplayName="Privekanaal10" MembershipType="Private" GetObjectBy="DisplayName">
            <Tabs>
              <TabBeta DisplayName="Rapid Circle" TeamsAppId="com.microsoft.teamspace.tab.web" GetObjectBy="DisplayName" >
                <Configuration ContentUrl="https://www.rapidcircle.com" />
              </TabBeta>
            </Tabs>
             <Owners UserPrincipalNames="{owners}" />
            <Members>
              <User UserPrincipalName="{member1}"/>
              <User UserPrincipalName="{member2}"/>
            </Members>
          </ChannelBeta>
        </Channels>
        <MemberSettingsBeta AllowCreatePrivateChannels="true" AllowAddRemoveApps="true" AllowCreateUpdateChannels="true" AllowCreateUpdateRemoveConnectors="true" AllowCreateUpdateRemoveTabs="true" AllowDeleteChannels="true"/>
      </TeamBeta>
    </Teams>
  </Graph>
</Configurator>