示例#1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="EdgeMetrics" /> class.
        /// </summary>


        /// <param name="Edge">Edge.</param>



        /// <param name="EventTime">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>



        /// <param name="UpTimeMsec">UpTimeMsec.</param>



        /// <param name="Processors">Processors.</param>



        /// <param name="Memory">Memory.</param>



        /// <param name="Disks">Disks.</param>



        /// <param name="Subsystems">Subsystems.</param>



        /// <param name="Networks">Networks.</param>


        public EdgeMetrics(UriReference Edge = null, DateTime?EventTime = null, long?UpTimeMsec = null, List <EdgeMetricsProcessor> Processors = null, List <EdgeMetricsMemory> Memory = null, List <EdgeMetricsDisk> Disks = null, List <EdgeMetricsSubsystem> Subsystems = null, List <EdgeMetricsNetwork> Networks = null)
        {
            this.Edge = Edge;



            this.EventTime = EventTime;



            this.UpTimeMsec = UpTimeMsec;



            this.Processors = Processors;



            this.Memory = Memory;



            this.Disks = Disks;



            this.Subsystems = Subsystems;



            this.Networks = Networks;
        }
示例#2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="CallableContactsDiagnostic" /> class.
 /// </summary>
 /// <param name="AttemptLimits">Attempt limits for the campaign&#39;s contact list.</param>
 /// <param name="DncLists">Do not call lists for the campaign.</param>
 /// <param name="CallableTimeSet">Callable time sets for the campaign.</param>
 /// <param name="RuleSets">Rule sets for the campaign.</param>
 public CallableContactsDiagnostic(UriReference AttemptLimits = null, List <UriReference> DncLists = null, UriReference CallableTimeSet = null, List <UriReference> RuleSets = null)
 {
     this.AttemptLimits   = AttemptLimits;
     this.DncLists        = DncLists;
     this.CallableTimeSet = CallableTimeSet;
     this.RuleSets        = RuleSets;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="LockInfo" /> class.
 /// </summary>
 /// <param name="LockedBy">LockedBy.</param>
 /// <param name="DateCreated">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="DateExpires">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="Action">Action.</param>
 public LockInfo(UriReference LockedBy = null, DateTime?DateCreated = null, DateTime?DateExpires = null, ActionEnum?Action = null)
 {
     this.LockedBy    = LockedBy;
     this.DateCreated = DateCreated;
     this.DateExpires = DateExpires;
     this.Action      = Action;
 }
示例#4
0
        /// <summary>
        /// Initializes a new instance of the <see cref="InboundRoute" /> class.
        /// </summary>



        /// <param name="Name">Name.</param>



        /// <param name="Pattern">The search pattern that the mailbox name should match. (required).</param>



        /// <param name="Queue">The queue to route the emails to..</param>



        /// <param name="Priority">The priority to use for routing..</param>



        /// <param name="Skills">The skills to use for routing..</param>



        /// <param name="Language">The language to use for routing..</param>



        /// <param name="FromName">The sender name to use for outgoing replies. (required).</param>



        /// <param name="FromEmail">The sender email to use for outgoing replies. (required).</param>



        /// <param name="Flow">The flow to use for processing the email..</param>



        public InboundRoute(string Name = null, string Pattern = null, UriReference Queue = null, int?Priority = null, List <UriReference> Skills = null, UriReference Language = null, string FromName = null, string FromEmail = null, UriReference Flow = null)
        {
            // to ensure "Pattern" is required (not null)
            if (Pattern == null)
            {
                throw new InvalidDataException("Pattern is a required property for InboundRoute and cannot be null");
            }
            else
            {
                this.Pattern = Pattern;
            }



            // to ensure "FromName" is required (not null)
            if (FromName == null)
            {
                throw new InvalidDataException("FromName is a required property for InboundRoute and cannot be null");
            }
            else
            {
                this.FromName = FromName;
            }



            // to ensure "FromEmail" is required (not null)
            if (FromEmail == null)
            {
                throw new InvalidDataException("FromEmail is a required property for InboundRoute and cannot be null");
            }
            else
            {
                this.FromEmail = FromEmail;
            }



            this.Name = Name;



            this.Queue = Queue;



            this.Priority = Priority;



            this.Skills = Skills;



            this.Language = Language;



            this.Flow = Flow;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="DocumentUpload" /> class.
 /// </summary>
 /// <param name="Name">The name of the document (required).</param>
 /// <param name="Workspace">The workspace the document will be uploaded to (required).</param>
 /// <param name="Tags">Tags.</param>
 /// <param name="TagIds">TagIds.</param>
 public DocumentUpload(string Name = null, UriReference Workspace = null, List <string> Tags = null, List <string> TagIds = null)
 {
     this.Name      = Name;
     this.Workspace = Workspace;
     this.Tags      = Tags;
     this.TagIds    = TagIds;
 }
示例#6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Campaign" /> class.
 /// </summary>
 /// <param name="Name">The name of the Campaign. (required).</param>
 /// <param name="Version">Required for updates, must match the version number of the most recent update.</param>
 /// <param name="ContactList">The ContactList for this Campaign to dial. (required).</param>
 /// <param name="Queue">The Queue for this Campaign to route calls to. Required for all dialing modes except agentless..</param>
 /// <param name="DialingMode">The strategy this Campaign will use for dialing. (required).</param>
 /// <param name="Script">The Script to be displayed to agents that are handling outbound calls. Required for all dialing modes except agentless..</param>
 /// <param name="EdgeGroup">The EdgeGroup that will place the calls. Required for all dialing modes except preview..</param>
 /// <param name="Site">The identifier of the site to be used for dialing; can be set in place of an edge group..</param>
 /// <param name="CampaignStatus">The current status of the Campaign. A Campaign may be turned &#39;on&#39; or &#39;off&#39;. Required for updates..</param>
 /// <param name="PhoneColumns">The ContactPhoneNumberColumns on the ContactList that this Campaign should dial. (required).</param>
 /// <param name="AbandonRate">The targeted abandon rate percentage. Required for progressive, power, and predictive campaigns..</param>
 /// <param name="DncLists">DncLists for this Campaign to check before placing a call..</param>
 /// <param name="CallableTimeSet">The callable time set for this campaign to check before placing a call..</param>
 /// <param name="CallAnalysisResponseSet">The call analysis response set to handle call analysis results from the edge. Required for all dialing modes except preview..</param>
 /// <param name="Errors">A list of current error conditions associated with the campaign..</param>
 /// <param name="CallerName">The caller id name to be displayed on the outbound call. (required).</param>
 /// <param name="CallerAddress">The caller id phone number to be displayed on the outbound call. (required).</param>
 /// <param name="OutboundLineCount">The number of outbound lines to be concurrently dialed. Only applicable to non-preview campaigns; only required for agentless..</param>
 /// <param name="RuleSets">Rule sets to be applied while this campaign is dialing..</param>
 /// <param name="SkipPreviewDisabled">Whether or not agents can skip previews without placing a call. Only applicable for preview campaigns..</param>
 /// <param name="PreviewTimeOutSeconds">The number of seconds before a call will be automatically placed on a preview. A value of 0 indicates no automatic placement of calls. Only applicable to preview campaigns..</param>
 /// <param name="AlwaysRunning">Indicates (when true) that the campaign will remain on after contacts are depleted, allowing additional contacts to be appended/added to the contact list and processed by the still-running campaign. The campaign can still be turned off manually..</param>
 /// <param name="ContactSort">The order in which to sort contacts for dialing, based on a column..</param>
 /// <param name="ContactSorts">The order in which to sort contacts for dialing, based on up to four columns..</param>
 /// <param name="NoAnswerTimeout">How long to wait before dispositioning a call as &#39;no-answer&#39;. Default 30 seconds. Only applicable to non-preview campaigns..</param>
 /// <param name="CallAnalysisLanguage">The language the edge will use to analyze the call..</param>
 /// <param name="Priority">The priority of this campaign relative to other campaigns that are running on the same queue. 5 is the highest priority, 1 the lowest..</param>
 /// <param name="ContactListFilters">Filter to apply to the contact list before dialing. Currently a campaign can only have one filter applied..</param>
 /// <param name="Division">The division this campaign belongs to..</param>
 public Campaign(string Name = null, int?Version = null, UriReference ContactList = null, UriReference Queue = null, DialingModeEnum?DialingMode = null, UriReference Script = null, UriReference EdgeGroup = null, UriReference Site = null, CampaignStatusEnum?CampaignStatus = null, List <PhoneColumn> PhoneColumns = null, double?AbandonRate = null, List <UriReference> DncLists = null, UriReference CallableTimeSet = null, UriReference CallAnalysisResponseSet = null, List <RestErrorDetail> Errors = null, string CallerName = null, string CallerAddress = null, int?OutboundLineCount = null, List <UriReference> RuleSets = null, bool?SkipPreviewDisabled = null, long?PreviewTimeOutSeconds = null, bool?AlwaysRunning = null, ContactSort ContactSort = null, List <ContactSort> ContactSorts = null, int?NoAnswerTimeout = null, string CallAnalysisLanguage = null, int?Priority = null, List <UriReference> ContactListFilters = null, UriReference Division = null)
 {
     this.Name                    = Name;
     this.Version                 = Version;
     this.ContactList             = ContactList;
     this.Queue                   = Queue;
     this.DialingMode             = DialingMode;
     this.Script                  = Script;
     this.EdgeGroup               = EdgeGroup;
     this.Site                    = Site;
     this.CampaignStatus          = CampaignStatus;
     this.PhoneColumns            = PhoneColumns;
     this.AbandonRate             = AbandonRate;
     this.DncLists                = DncLists;
     this.CallableTimeSet         = CallableTimeSet;
     this.CallAnalysisResponseSet = CallAnalysisResponseSet;
     this.Errors                  = Errors;
     this.CallerName              = CallerName;
     this.CallerAddress           = CallerAddress;
     this.OutboundLineCount       = OutboundLineCount;
     this.RuleSets                = RuleSets;
     this.SkipPreviewDisabled     = SkipPreviewDisabled;
     this.PreviewTimeOutSeconds   = PreviewTimeOutSeconds;
     this.AlwaysRunning           = AlwaysRunning;
     this.ContactSort             = ContactSort;
     this.ContactSorts            = ContactSorts;
     this.NoAnswerTimeout         = NoAnswerTimeout;
     this.CallAnalysisLanguage    = CallAnalysisLanguage;
     this.Priority                = Priority;
     this.ContactListFilters      = ContactListFilters;
     this.Division                = Division;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="EventLog" /> class.
        /// </summary>



        /// <param name="Name">Name.</param>



        /// <param name="ErrorEntity">ErrorEntity.</param>



        /// <param name="RelatedEntity">RelatedEntity.</param>



        /// <param name="Timestamp">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>



        /// <param name="Level">Level.</param>



        /// <param name="Category">Category.</param>



        /// <param name="CorrelationId">CorrelationId.</param>



        /// <param name="EventMessage">EventMessage.</param>



        public EventLog(string Name = null, UriReference ErrorEntity = null, UriReference RelatedEntity = null, DateTime?Timestamp = null, LevelEnum?Level = null, CategoryEnum?Category = null, string CorrelationId = null, EventMessage EventMessage = null)
        {
            this.Name = Name;



            this.ErrorEntity = ErrorEntity;



            this.RelatedEntity = RelatedEntity;



            this.Timestamp = Timestamp;



            this.Level = Level;



            this.Category = Category;



            this.CorrelationId = CorrelationId;



            this.EventMessage = EventMessage;
        }
示例#8
0
        /// <summary>
        /// Initializes a new instance of the <see cref="DocumentUpload" /> class.
        /// </summary>


        /// <param name="Name">The name of the document (required).</param>



        /// <param name="Workspace">The workspace the document will be uploaded to (required).</param>



        /// <param name="Tags">Tags.</param>



        /// <param name="TagIds">TagIds.</param>


        public DocumentUpload(string Name = null, UriReference Workspace = null, List <string> Tags = null, List <string> TagIds = null)
        {
            // to ensure "Name" is required (not null)
            if (Name == null)
            {
                throw new InvalidDataException("Name is a required property for DocumentUpload and cannot be null");
            }
            else
            {
                this.Name = Name;
            }



            // to ensure "Workspace" is required (not null)
            if (Workspace == null)
            {
                throw new InvalidDataException("Workspace is a required property for DocumentUpload and cannot be null");
            }
            else
            {
                this.Workspace = Workspace;
            }



            this.Tags = Tags;



            this.TagIds = TagIds;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="TrunkMetrics" /> class.
 /// </summary>
 /// <param name="EventTime">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="LogicalInterface">LogicalInterface.</param>
 /// <param name="Trunk">Trunk.</param>
 /// <param name="Calls">Calls.</param>
 /// <param name="Qos">Qos.</param>
 public TrunkMetrics(DateTime?EventTime = null, UriReference LogicalInterface = null, UriReference Trunk = null, TrunkMetricsCalls Calls = null, TrunkMetricsQoS Qos = null)
 {
     this.EventTime        = EventTime;
     this.LogicalInterface = LogicalInterface;
     this.Trunk            = Trunk;
     this.Calls            = Calls;
     this.Qos = Qos;
 }
示例#10
0
        /// <summary>
        /// Initializes a new instance of the <see cref="RuleSetDiagnostic" /> class.
        /// </summary>


        /// <param name="RuleSet">A campaign rule set.</param>



        /// <param name="Warnings">Diagnostic warnings for the rule set.</param>


        public RuleSetDiagnostic(UriReference RuleSet = null, List <WarningsEnum> Warnings = null)
        {
            this.RuleSet = RuleSet;



            this.Warnings = Warnings;
        }
示例#11
0
 /// <summary>
 /// Initializes a new instance of the <see cref="SecureSession" /> class.
 /// </summary>
 /// <param name="Flow">The flow to execute securely (required).</param>
 /// <param name="UserData">Customer-provided data.</param>
 /// <param name="State">The current state of a secure session (required).</param>
 /// <param name="SourceParticipantId">Unique identifier for the participant initiating the secure session..</param>
 /// <param name="Disconnect">If true, disconnect the agent after creating the session.</param>
 public SecureSession(UriReference Flow = null, string UserData = null, StateEnum?State = null, string SourceParticipantId = null, bool?Disconnect = null)
 {
     this.Flow                = Flow;
     this.UserData            = UserData;
     this.State               = State;
     this.SourceParticipantId = SourceParticipantId;
     this.Disconnect          = Disconnect;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="RuleSet" /> class.
 /// </summary>
 /// <param name="Name">The name of the RuleSet. (required).</param>
 /// <param name="Version">Required for updates, must match the version number of the most recent update.</param>
 /// <param name="ContactList">A ContactList to provide user-interface suggestions for contact columns on relevant conditions and actions..</param>
 /// <param name="Queue">A Queue to provide user-interface suggestions for wrap-up codes on relevant conditions and actions..</param>
 /// <param name="Rules">The list of rules. (required).</param>
 public RuleSet(string Name = null, int?Version = null, UriReference ContactList = null, UriReference Queue = null, List <DialerRule> Rules = null)
 {
     this.Name        = Name;
     this.Version     = Version;
     this.ContactList = ContactList;
     this.Queue       = Queue;
     this.Rules       = Rules;
 }
示例#13
0
        /// <summary>
        /// Initializes a new instance of the <see cref="EmergencyCallFlow" /> class.
        /// </summary>


        /// <param name="EmergencyFlow">The call flow to execute in an emergency..</param>



        /// <param name="Ivrs">The IVR(s) to route to the call flow during an emergency..</param>


        public EmergencyCallFlow(UriReference EmergencyFlow = null, List <UriReference> Ivrs = null)
        {
            this.EmergencyFlow = EmergencyFlow;



            this.Ivrs = Ivrs;
        }
示例#14
0
        /// <summary>
        /// Initializes a new instance of the <see cref="QueueEmailAddress" /> class.
        /// </summary>


        /// <param name="Domain">Domain.</param>



        /// <param name="Route">Route.</param>


        public QueueEmailAddress(UriReference Domain = null, InboundRoute Route = null)
        {
            this.Domain = Domain;



            this.Route = Route;
        }
示例#15
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GDPRRequest" /> class.
 /// </summary>
 /// <param name="Name">Name.</param>
 /// <param name="CreatedBy">The user that created this request (required).</param>
 /// <param name="ReplacementTerms">The replacement terms for the provided search terms, in the case of a GDPR_UPDATE request.</param>
 /// <param name="RequestType">The type of GDPR request (required).</param>
 /// <param name="Subject">The subject of the GDPR request (required).</param>
 public GDPRRequest(string Name = null, UriReference CreatedBy = null, List <ReplacementTerm> ReplacementTerms = null, RequestTypeEnum?RequestType = null, GDPRSubject Subject = null)
 {
     this.Name             = Name;
     this.CreatedBy        = CreatedBy;
     this.ReplacementTerms = ReplacementTerms;
     this.RequestType      = RequestType;
     this.Subject          = Subject;
 }
示例#16
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ContactListFilter" /> class.
 /// </summary>
 /// <param name="Name">The name of the list. (required).</param>
 /// <param name="Version">Required for updates, must match the version number of the most recent update.</param>
 /// <param name="ContactList">The contact list the filter is based on. (required).</param>
 /// <param name="Clauses">Groups of conditions to filter the contacts by..</param>
 /// <param name="FilterType">How to join clauses together..</param>
 public ContactListFilter(string Name = null, int?Version = null, UriReference ContactList = null, List <ContactListFilterClause> Clauses = null, FilterTypeEnum?FilterType = null)
 {
     this.Name        = Name;
     this.Version     = Version;
     this.ContactList = ContactList;
     this.Clauses     = Clauses;
     this.FilterType  = FilterType;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="SurveyAssignment" /> class.
 /// </summary>
 /// <param name="SurveyForm">The survey form used for this survey..</param>
 /// <param name="Flow">The URI reference to the flow associated with this survey..</param>
 /// <param name="InviteTimeInterval">An ISO 8601 repeated interval consisting of the number of repetitions, the start datetime, and the interval (e.g. R2/2018-03-01T13:00:00Z/P1M10DT2H30M). Total duration must not exceed 90 days..</param>
 /// <param name="SendingUser">User together with sendingDomain used to send email, null to use no-reply.</param>
 /// <param name="SendingDomain">Validated email domain, required (required).</param>
 public SurveyAssignment(PublishedSurveyFormReference SurveyForm = null, UriReference Flow = null, string InviteTimeInterval = null, string SendingUser = null, string SendingDomain = null)
 {
     this.SurveyForm         = SurveyForm;
     this.Flow               = Flow;
     this.InviteTimeInterval = InviteTimeInterval;
     this.SendingUser        = SendingUser;
     this.SendingDomain      = SendingDomain;
 }
示例#18
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ConversationDivisionMembership" /> class.
        /// </summary>


        /// <param name="Division">A division the conversation belongs to..</param>



        /// <param name="Entities">The entities on the conversation within the division. These are the users, queues, work flows, etc. that can be on conversations and and be assigned to different divisions..</param>


        public ConversationDivisionMembership(UriReference Division = null, List <UriReference> Entities = null)
        {
            this.Division = Division;



            this.Entities = Entities;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="CampaignInteractions" /> class.
 /// </summary>
 /// <param name="Campaign">Campaign.</param>
 /// <param name="PendingInteractions">PendingInteractions.</param>
 /// <param name="ProceedingInteractions">ProceedingInteractions.</param>
 /// <param name="PreviewingInteractions">PreviewingInteractions.</param>
 /// <param name="InteractingInteractions">InteractingInteractions.</param>
 /// <param name="ScheduledInteractions">ScheduledInteractions.</param>
 public CampaignInteractions(UriReference Campaign = null, List <CampaignInteraction> PendingInteractions = null, List <CampaignInteraction> ProceedingInteractions = null, List <CampaignInteraction> PreviewingInteractions = null, List <CampaignInteraction> InteractingInteractions = null, List <CampaignInteraction> ScheduledInteractions = null)
 {
     this.Campaign                = Campaign;
     this.PendingInteractions     = PendingInteractions;
     this.ProceedingInteractions  = ProceedingInteractions;
     this.PreviewingInteractions  = PreviewingInteractions;
     this.InteractingInteractions = InteractingInteractions;
     this.ScheduledInteractions   = ScheduledInteractions;
 }
示例#20
0
        /// <summary>
        /// Initializes a new instance of the <see cref="DocumentAudit" /> class.
        /// </summary>



        /// <param name="Name">Name.</param>



        /// <param name="User">User.</param>



        /// <param name="Workspace">Workspace.</param>



        /// <param name="TransactionId">TransactionId.</param>



        /// <param name="TransactionInitiator">TransactionInitiator.</param>



        /// <param name="Application">Application.</param>



        /// <param name="ServiceName">ServiceName.</param>



        /// <param name="Level">Level.</param>



        /// <param name="Timestamp">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>



        /// <param name="Status">Status.</param>



        /// <param name="ActionContext">ActionContext.</param>



        /// <param name="Action">Action.</param>



        /// <param name="Entity">Entity.</param>



        /// <param name="Changes">Changes.</param>



        public DocumentAudit(string Name = null, UriReference User = null, UriReference Workspace = null, string TransactionId = null, bool?TransactionInitiator = null, string Application = null, string ServiceName = null, LevelEnum?Level = null, DateTime?Timestamp = null, StatusEnum?Status = null, ActionContextEnum?ActionContext = null, ActionEnum?Action = null, AuditEntityReference Entity = null, List <AuditChange> Changes = null)
        {
            this.Name = Name;



            this.User = User;



            this.Workspace = Workspace;



            this.TransactionId = TransactionId;



            this.TransactionInitiator = TransactionInitiator;



            this.Application = Application;



            this.ServiceName = ServiceName;



            this.Level = Level;



            this.Timestamp = Timestamp;



            this.Status = Status;



            this.ActionContext = ActionContext;



            this.Action = Action;



            this.Entity = Entity;



            this.Changes = Changes;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="WorkspaceMember" /> class.
 /// </summary>
 /// <param name="Name">Name.</param>
 /// <param name="Workspace">Workspace.</param>
 /// <param name="MemberType">The workspace member type. (required).</param>
 /// <param name="Member">Member.</param>
 /// <param name="User">User.</param>
 /// <param name="Group">Group.</param>
 /// <param name="SecurityProfile">SecurityProfile.</param>
 public WorkspaceMember(string Name = null, UriReference Workspace = null, MemberTypeEnum?MemberType = null, UriReference Member = null, User User = null, Group Group = null, SecurityProfile SecurityProfile = null)
 {
     this.Name            = Name;
     this.Workspace       = Workspace;
     this.MemberType      = MemberType;
     this.Member          = Member;
     this.User            = User;
     this.Group           = Group;
     this.SecurityProfile = SecurityProfile;
 }
示例#22
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TimeZoneMappingPreview" /> class.
 /// </summary>
 /// <param name="ContactList">The associated ContactList.</param>
 /// <param name="ContactsPerTimeZone">The number of contacts per time zone that mapped to only that time zone.</param>
 /// <param name="ContactsMappedUsingZipCode">The number of contacts per time zone that mapped to only that time zone and were mapped using the zip code column.</param>
 /// <param name="ContactsMappedToASingleZone">The total number of contacts that mapped to a single time zone.</param>
 /// <param name="ContactsMappedToASingleZoneUsingZipCode">The total number of contacts that mapped to a single time zone and were mapped using the zip code column.</param>
 /// <param name="ContactsMappedToMultipleZones">The total number of contacts that mapped to multiple time zones.</param>
 /// <param name="ContactsMappedToMultipleZonesUsingZipCode">The total number of contacts that mapped to multiple time zones and were mapped using the zip code column.</param>
 /// <param name="ContactsInDefaultWindow">The total number of contacts that will be dialed during the default window.</param>
 /// <param name="ContactListSize">The total number of contacts in the contact list.</param>
 public TimeZoneMappingPreview(UriReference ContactList = null, Dictionary <string, long?> ContactsPerTimeZone = null, Dictionary <string, long?> ContactsMappedUsingZipCode = null, long?ContactsMappedToASingleZone = null, long?ContactsMappedToASingleZoneUsingZipCode = null, long?ContactsMappedToMultipleZones = null, long?ContactsMappedToMultipleZonesUsingZipCode = null, long?ContactsInDefaultWindow = null, long?ContactListSize = null)
 {
     this.ContactList                               = ContactList;
     this.ContactsPerTimeZone                       = ContactsPerTimeZone;
     this.ContactsMappedUsingZipCode                = ContactsMappedUsingZipCode;
     this.ContactsMappedToASingleZone               = ContactsMappedToASingleZone;
     this.ContactsMappedToASingleZoneUsingZipCode   = ContactsMappedToASingleZoneUsingZipCode;
     this.ContactsMappedToMultipleZones             = ContactsMappedToMultipleZones;
     this.ContactsMappedToMultipleZonesUsingZipCode = ContactsMappedToMultipleZonesUsingZipCode;
     this.ContactsInDefaultWindow                   = ContactsInDefaultWindow;
     this.ContactListSize                           = ContactListSize;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="SurveyAssignment" /> class.
        /// </summary>


        /// <param name="SurveyForm">The survey form used for this survey..</param>



        /// <param name="Flow">The URI reference to the flow associated with this survey..</param>



        /// <param name="InviteTimeInterval">An ISO 8601 repeated interval consisting of the number of repetitions, the start datetime, and the interval (e.g. R2/2018-03-01T13:00:00Z/P1M10DT2H30M). Total duration must not exceed 90 days..</param>


        public SurveyAssignment(SurveyFormUriReference SurveyForm = null, UriReference Flow = null, string InviteTimeInterval = null)
        {
            this.SurveyForm = SurveyForm;



            this.Flow = Flow;



            this.InviteTimeInterval = InviteTimeInterval;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="ContactList" /> class.
 /// </summary>
 /// <param name="Name">Name.</param>
 /// <param name="Version">Required for updates, must match the version number of the most recent update.</param>
 /// <param name="Division">The division this entity belongs to..</param>
 /// <param name="ColumnNames">The names of the contact data columns. (required).</param>
 /// <param name="PhoneColumns">Indicates which columns are phone numbers. (required).</param>
 /// <param name="ImportStatus">The status of the import process..</param>
 /// <param name="PreviewModeColumnName">A column to check if a contact should always be dialed in preview mode..</param>
 /// <param name="PreviewModeAcceptedValues">The values in the previewModeColumnName column that indicate a contact should always be dialed in preview mode..</param>
 /// <param name="AttemptLimits">AttemptLimits for this ContactList..</param>
 /// <param name="AutomaticTimeZoneMapping">Indicates if automatic time zone mapping is to be used for this ContactList..</param>
 /// <param name="ZipCodeColumnName">The name of contact list column containing the zip code for use with automatic time zone mapping. Only allowed if &#39;automaticTimeZoneMapping&#39; is set to true..</param>
 public ContactList(string Name = null, int?Version = null, UriReference Division = null, List <string> ColumnNames = null, List <ContactPhoneNumberColumn> PhoneColumns = null, ImportStatus ImportStatus = null, string PreviewModeColumnName = null, List <string> PreviewModeAcceptedValues = null, UriReference AttemptLimits = null, bool?AutomaticTimeZoneMapping = null, string ZipCodeColumnName = null)
 {
     this.Name                      = Name;
     this.Version                   = Version;
     this.Division                  = Division;
     this.ColumnNames               = ColumnNames;
     this.PhoneColumns              = PhoneColumns;
     this.ImportStatus              = ImportStatus;
     this.PreviewModeColumnName     = PreviewModeColumnName;
     this.PreviewModeAcceptedValues = PreviewModeAcceptedValues;
     this.AttemptLimits             = AttemptLimits;
     this.AutomaticTimeZoneMapping  = AutomaticTimeZoneMapping;
     this.ZipCodeColumnName         = ZipCodeColumnName;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="InboundRoute" /> class.
 /// </summary>
 /// <param name="Name">Name.</param>
 /// <param name="Pattern">The search pattern that the mailbox name should match. (required).</param>
 /// <param name="Queue">The queue to route the emails to..</param>
 /// <param name="Priority">The priority to use for routing..</param>
 /// <param name="Skills">The skills to use for routing..</param>
 /// <param name="Language">The language to use for routing..</param>
 /// <param name="FromName">The sender name to use for outgoing replies. (required).</param>
 /// <param name="FromEmail">The sender email to use for outgoing replies. (required).</param>
 /// <param name="Flow">The flow to use for processing the email..</param>
 /// <param name="ReplyEmailAddress">The route to use for email replies..</param>
 /// <param name="AutoBcc">The recipients that should be  automatically blind copied on outbound emails associated with this InboundRoute..</param>
 /// <param name="SpamFlow">The flow to use for processing inbound emails that have been marked as spam..</param>
 public InboundRoute(string Name = null, string Pattern = null, UriReference Queue = null, int?Priority = null, List <UriReference> Skills = null, UriReference Language = null, string FromName = null, string FromEmail = null, UriReference Flow = null, QueueEmailAddress ReplyEmailAddress = null, List <EmailAddress> AutoBcc = null, UriReference SpamFlow = null)
 {
     this.Name              = Name;
     this.Pattern           = Pattern;
     this.Queue             = Queue;
     this.Priority          = Priority;
     this.Skills            = Skills;
     this.Language          = Language;
     this.FromName          = FromName;
     this.FromEmail         = FromEmail;
     this.Flow              = Flow;
     this.ReplyEmailAddress = ReplyEmailAddress;
     this.AutoBcc           = AutoBcc;
     this.SpamFlow          = SpamFlow;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="GDPRRequest" /> class.
        /// </summary>



        /// <param name="Name">Name.</param>



        /// <param name="CreatedBy">The user that created this request (required).</param>



        /// <param name="ReplacementTerms">The replacement terms for the provided search terms, in the case of a GDPR_UPDATE request.</param>



        /// <param name="RequestType">The type of GDPR request (required).</param>



        /// <param name="Subject">The subject of the GDPR request (required).</param>



        public GDPRRequest(string Name = null, UriReference CreatedBy = null, List <ReplacementTerm> ReplacementTerms = null, RequestTypeEnum?RequestType = null, GDPRSubject Subject = null)
        {
            // to ensure "CreatedBy" is required (not null)
            if (CreatedBy == null)
            {
                throw new InvalidDataException("CreatedBy is a required property for GDPRRequest and cannot be null");
            }
            else
            {
                this.CreatedBy = CreatedBy;
            }



            // to ensure "RequestType" is required (not null)
            if (RequestType == null)
            {
                throw new InvalidDataException("RequestType is a required property for GDPRRequest and cannot be null");
            }
            else
            {
                this.RequestType = RequestType;
            }



            // to ensure "Subject" is required (not null)
            if (Subject == null)
            {
                throw new InvalidDataException("Subject is a required property for GDPRRequest and cannot be null");
            }
            else
            {
                this.Subject = Subject;
            }



            this.Name = Name;



            this.ReplacementTerms = ReplacementTerms;
        }
示例#27
0
        /// <summary>
        /// Initializes a new instance of the <see cref="WorkspaceMember" /> class.
        /// </summary>



        /// <param name="Name">Name.</param>



        /// <param name="Workspace">Workspace.</param>



        /// <param name="MemberType">The workspace member type. (required).</param>



        /// <param name="Member">Member.</param>



        /// <param name="User">User.</param>



        /// <param name="Group">Group.</param>



        /// <param name="SecurityProfile">SecurityProfile.</param>



        public WorkspaceMember(string Name = null, UriReference Workspace = null, MemberTypeEnum?MemberType = null, UriReference Member = null, User User = null, Group Group = null, SecurityProfile SecurityProfile = null)
        {
            // to ensure "MemberType" is required (not null)
            if (MemberType == null)
            {
                throw new InvalidDataException("MemberType is a required property for WorkspaceMember and cannot be null");
            }
            else
            {
                this.MemberType = MemberType;
            }



            this.Name = Name;



            this.Workspace = Workspace;



            this.Member = Member;



            this.User = User;



            this.Group = Group;



            this.SecurityProfile = SecurityProfile;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="CampaignInteraction" /> class.
 /// </summary>
 /// <param name="Id">Id.</param>
 /// <param name="Campaign">Campaign.</param>
 /// <param name="Agent">Agent.</param>
 /// <param name="Contact">Contact.</param>
 /// <param name="DestinationAddress">DestinationAddress.</param>
 /// <param name="ActivePreviewCall">Boolean value if there is an active preview call on the interaction.</param>
 /// <param name="LastActivePreviewWrapupTime">The time when the last preview of the interaction was wrapped up. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="CreationTime">The time when dialer created the interaction. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="CallPlacedTime">The time when the agent or system places the call. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="CallRoutedTime">The time when the agent was connected to the call. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="PreviewConnectedTime">The time when the customer and routing participant are connected. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="Queue">Queue.</param>
 /// <param name="Script">Script.</param>
 /// <param name="Disposition">Describes what happened with call analysis for instance: disposition.classification.callable.person, disposition.classification.callable.noanswer.</param>
 /// <param name="CallerName">CallerName.</param>
 /// <param name="CallerAddress">CallerAddress.</param>
 /// <param name="PreviewPopDeliveredTime">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param>
 /// <param name="Conversation">Conversation.</param>
 /// <param name="DialerSystemParticipantId">conversation participant id that is the dialer system participant to monitor the call from dialer perspective.</param>
 /// <param name="DialingMode">DialingMode.</param>
 /// <param name="Skills">Any skills that are attached to the call for routing.</param>
 public CampaignInteraction(string Id = null, UriReference Campaign = null, UriReference Agent = null, UriReference Contact = null, string DestinationAddress = null, bool?ActivePreviewCall = null, DateTime?LastActivePreviewWrapupTime = null, DateTime?CreationTime = null, DateTime?CallPlacedTime = null, DateTime?CallRoutedTime = null, DateTime?PreviewConnectedTime = null, UriReference Queue = null, UriReference Script = null, DispositionEnum?Disposition = null, string CallerName = null, string CallerAddress = null, DateTime?PreviewPopDeliveredTime = null, ConversationBasic Conversation = null, string DialerSystemParticipantId = null, string DialingMode = null, List <UriReference> Skills = null)
 {
     this.Id                          = Id;
     this.Campaign                    = Campaign;
     this.Agent                       = Agent;
     this.Contact                     = Contact;
     this.DestinationAddress          = DestinationAddress;
     this.ActivePreviewCall           = ActivePreviewCall;
     this.LastActivePreviewWrapupTime = LastActivePreviewWrapupTime;
     this.CreationTime                = CreationTime;
     this.CallPlacedTime              = CallPlacedTime;
     this.CallRoutedTime              = CallRoutedTime;
     this.PreviewConnectedTime        = PreviewConnectedTime;
     this.Queue                       = Queue;
     this.Script                      = Script;
     this.Disposition                 = Disposition;
     this.CallerName                  = CallerName;
     this.CallerAddress               = CallerAddress;
     this.PreviewPopDeliveredTime     = PreviewPopDeliveredTime;
     this.Conversation                = Conversation;
     this.DialerSystemParticipantId   = DialerSystemParticipantId;
     this.DialingMode                 = DialingMode;
     this.Skills                      = Skills;
 }
示例#29
0
        /// <summary>
        /// Initializes a new instance of the <see cref="CampaignProgress" /> class.
        /// </summary>


        /// <param name="Campaign">Identifier of the campaign (required).</param>



        /// <param name="ContactList">Identifier of the contact list (required).</param>



        public CampaignProgress(UriReference Campaign = null, UriReference ContactList = null)
        {
            // to ensure "Campaign" is required (not null)
            if (Campaign == null)
            {
                throw new InvalidDataException("Campaign is a required property for CampaignProgress and cannot be null");
            }
            else
            {
                this.Campaign = Campaign;
            }



            // to ensure "ContactList" is required (not null)
            if (ContactList == null)
            {
                throw new InvalidDataException("ContactList is a required property for CampaignProgress and cannot be null");
            }
            else
            {
                this.ContactList = ContactList;
            }
        }
示例#30
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SecureSession" /> class.
        /// </summary>



        /// <param name="Flow">The flow to execute securely (required).</param>



        /// <param name="UserData">Customer-provided data.</param>



        /// <param name="State">The current state of a secure session (required).</param>



        /// <param name="SourceParticipantId">Unique identifier for the participant initiating the secure session..</param>



        /// <param name="Disconnect">If true, disconnect the agent after creating the session.</param>



        public SecureSession(UriReference Flow = null, string UserData = null, StateEnum?State = null, string SourceParticipantId = null, bool?Disconnect = null)
        {
            // to ensure "Flow" is required (not null)
            if (Flow == null)
            {
                throw new InvalidDataException("Flow is a required property for SecureSession and cannot be null");
            }
            else
            {
                this.Flow = Flow;
            }



            // to ensure "State" is required (not null)
            if (State == null)
            {
                throw new InvalidDataException("State is a required property for SecureSession and cannot be null");
            }
            else
            {
                this.State = State;
            }



            this.UserData = UserData;



            this.SourceParticipantId = SourceParticipantId;



            this.Disconnect = Disconnect;
        }