DSCResources/MSFT_TeamsShiftsPolicy/MSFT_TeamsShiftsPolicy.schema.mof

[ClassVersion("1.0.0.0"), FriendlyName("TeamsShiftsPolicy")]
class MSFT_TeamsShiftsPolicy : OMI_BaseResource
{
    [Key, Description("Specifies the policy instance name")] String Identity;
    [Write, Description("Determines the grace period time in minutes between when the first shift starts or last shift ends and when access is blocked")] UInt64 AccessGracePeriodMinutes;
    [Write, Description("Determines the Teams access type granted to the user. Today, only unrestricted access to Teams app is supported."), ValueMap{"UnrestrictedAccess_TeamsApp"}, Values{"UnrestrictedAccess_TeamsApp"}] String AccessType;
    [Write, Description("Determines whether a user can manage a Shifts schedule as a team member.")] Boolean EnableScheduleOwnerPermissions;
    [Write, Description("Determines whether a user is given shift-based presence (On shift, Off shift, or Busy). This must be set in order to have any off shift warning message-specific settings.")] Boolean EnableShiftPresence;
    [Write, Description("Determines the frequency of warning dialog displayed when user opens Teams."), ValueMap{"Always","ShowOnceOnChange","Never"}, Values{"Always","ShowOnceOnChange","Never"}] String ShiftNoticeFrequency;
    [Write, Description("Specifies a custom message. Must set ShiftNoticeMessageType to 'CustomMessage' to enforce this")] String ShiftNoticeMessageCustom;
    [Write, Description("Specifies the warning message is shown in the blocking dialog when a user access Teams off shift hours. Select one of 7 Microsoft provided messages, a default message or a custom message."), ValueMap{"DefaultMessage","Message1","Message2","Message3","Message4","Message5","Message6","Message7","CustomMessage"}, Values{"DefaultMessage","Message1","Message2","Message3","Message4","Message5","Message6","Message7","CustomMessage"}] String ShiftNoticeMessageType;
    [Write, Description("Present ensures the instance exists, absent ensures it is removed."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] string Ensure;
    [Write, Description("Credentials of the workload's Admin"), EmbeddedInstance("MSFT_Credential")] string Credential;
    [Write, Description("Id of the Azure Active Directory application to authenticate with.")] String ApplicationId;
    [Write, Description("Id of the Azure Active Directory tenant used for authentication.")] String TenantId;
    [Write, Description("Thumbprint of the Azure Active Directory application's authentication certificate to use for authentication.")] String CertificateThumbprint;
    [Write, Description("Managed ID being used for authentication.")] Boolean ManagedIdentity;
};