"""Broadworks OCI-P Interface Response Classes"""
# Autogenerated from the Broadworks XML Schemas.
# Do not edit as changes will be overwritten.
# Generated on 2020-10-19T17:35:53.953786
# fmt: off
from typing import List

from classforge import Field

import broadworks_ocip.types as OCI
from .base import ElementInfo as E
from .base import OCIResponse


class AuthenticationResponse(OCIResponse):
    """
    ``AuthenticationRequest()``/Response is 1st stage of the 2 stage OCI login process.


    Attributes:
        user_id: userId
        nonce: nonce
        password_algorithm: passwordAlgorithm
    """

    _ELEMENTS = (
        E("user_id", "userId", str, is_required=True),
        E("nonce", "nonce", str, is_required=True),
        E("password_algorithm", "passwordAlgorithm", str, is_required=True),
    )

    user_id: str = Field(type=str, required=True, mutable=False)
    nonce: str = Field(type=str, required=True, mutable=False)
    password_algorithm: str = Field(type=str, required=True, mutable=False)


class AuthenticationVerifyResponse(OCIResponse):
    """
    Response to ``AuthenticationVerifyRequest()``

    Replaced By: ``AuthenticationVerifyResponse14sp8()``

    Attributes:
        login_type: loginType
        locale: locale
        encoding: encoding
        group_id: groupId
        service_provider_id: serviceProviderId
        is_enterprise: isEnterprise
        password_expires_days: passwordExpiresDays
        user_domain: userDomain
        last_name: lastName
        first_name: firstName
    """

    _ELEMENTS = (
        E("login_type", "loginType", str, is_required=True),
        E("locale", "locale", str, is_required=True),
        E("encoding", "encoding", str, is_required=True),
        E("group_id", "groupId", str),
        E("service_provider_id", "serviceProviderId", str),
        E("is_enterprise", "isEnterprise", bool, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int),
        E("user_domain", "userDomain", str, is_required=True),
        E("last_name", "lastName", str),
        E("first_name", "firstName", str),
    )

    login_type: str = Field(type=str, required=True, mutable=False)
    locale: str = Field(type=str, required=True, mutable=False)
    encoding: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=False, mutable=False)
    service_provider_id: str = Field(type=str, required=False, mutable=False)
    is_enterprise: bool = Field(type=bool, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=False, mutable=False)
    user_domain: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=False, mutable=False)
    first_name: str = Field(type=str, required=False, mutable=False)


class AuthenticationVerifyResponse14sp8(OCIResponse):
    """
    Response to ``AuthenticationVerifyRequest14sp8()`` If a phoneNumber is returned, it
    will be the primay DN of the user

    Attributes:
        login_type: loginType
        locale: locale
        encoding: encoding
        group_id: groupId
        service_provider_id: serviceProviderId
        is_enterprise: isEnterprise
        password_expires_days: passwordExpiresDays
        last_name: lastName
        first_name: firstName
        user_id: userId
        phone_number: phoneNumber
    """

    _ELEMENTS = (
        E("login_type", "loginType", str, is_required=True),
        E("locale", "locale", str, is_required=True),
        E("encoding", "encoding", str, is_required=True),
        E("group_id", "groupId", str),
        E("service_provider_id", "serviceProviderId", str),
        E("is_enterprise", "isEnterprise", bool, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int),
        E("last_name", "lastName", str),
        E("first_name", "firstName", str),
        E("user_id", "userId", str, is_required=True),
        E("phone_number", "phoneNumber", str),
    )

    login_type: str = Field(type=str, required=True, mutable=False)
    locale: str = Field(type=str, required=True, mutable=False)
    encoding: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=False, mutable=False)
    service_provider_id: str = Field(type=str, required=False, mutable=False)
    is_enterprise: bool = Field(type=bool, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=False, mutable=False)
    last_name: str = Field(type=str, required=False, mutable=False)
    first_name: str = Field(type=str, required=False, mutable=False)
    user_id: str = Field(type=str, required=True, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)


class DeviceManagementFileAuthLocationGetResponse(OCIResponse):
    """
    Return the address and credentials of the File Repository hosting the requested access
    device file.

    Also return the file name and path on the File Repository.  This is a response to
    ``DeviceManagementFileAuthLocationGetRequest()``.

    Attributes:
        file_repository_user_name: fileRepositoryUserName
        file_repository_password: fileRepositoryPassword
        net_address: netAddress
        remote_file_format: remoteFileFormat
        port_number: portNumber
        root_directory: rootDirectory
        cpe_file_directory: cpeFileDirectory
        secure: secure
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        completion_notification: completionNotification
        file_category: fileCategory
    """

    _ELEMENTS = (
        E("file_repository_user_name", "fileRepositoryUserName", str, is_required=True),
        E("file_repository_password", "fileRepositoryPassword", str, is_required=True),
        E("net_address", "netAddress", str, is_required=True),
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("port_number", "portNumber", int),
        E("root_directory", "rootDirectory", str),
        E("cpe_file_directory", "cpeFileDirectory", str),
        E("secure", "secure", bool),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
        E("use_http_digest_authentication", "useHttpDigestAuthentication", bool),
        E("mac_based_file_authentication", "macBasedFileAuthentication", bool),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool,
        ),
        E("completion_notification", "completionNotification", bool),
        E("file_category", "fileCategory", str),
    )

    file_repository_user_name: str = Field(type=str, required=True, mutable=False)
    file_repository_password: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=True, mutable=False)
    remote_file_format: str = Field(type=str, required=True, mutable=False)
    port_number: int = Field(type=int, required=False, mutable=False)
    root_directory: str = Field(type=str, required=False, mutable=False)
    cpe_file_directory: str = Field(type=str, required=False, mutable=False)
    secure: bool = Field(type=bool, required=False, mutable=False)
    mac_in_non_request_uri: bool = Field(type=bool, required=False, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=False, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=False, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=False, mutable=False,
    )
    completion_notification: bool = Field(type=bool, required=False, mutable=False)
    file_category: str = Field(type=str, required=False, mutable=False)


class DeviceManagementFileAuthLocationGetResponse17(OCIResponse):
    """
    Return the address and credentials of the File Repository hosting the requested access
    device file.

    Also return the file name and path on the File Repository.  This is a response to
    ``DeviceManagementFileAuthLocationGetRequest17()``. Replaced by:
    ``DeviceManagementFileAuthLocationGetRequest18()``

    Attributes:
        file_repository_user_name: fileRepositoryUserName
        file_repository_password: fileRepositoryPassword
        net_address: netAddress
        remote_file_format: remoteFileFormat
        port_number: portNumber
        root_directory: rootDirectory
        cpe_file_directory: cpeFileDirectory
        secure: secure
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        completion_notification: completionNotification
        file_category: fileCategory
    """

    _ELEMENTS = (
        E("file_repository_user_name", "fileRepositoryUserName", str, is_required=True),
        E("file_repository_password", "fileRepositoryPassword", str, is_required=True),
        E("net_address", "netAddress", str, is_required=True),
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("port_number", "portNumber", int),
        E("root_directory", "rootDirectory", str),
        E("cpe_file_directory", "cpeFileDirectory", str),
        E("secure", "secure", bool),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
        E("use_http_digest_authentication", "useHttpDigestAuthentication", bool),
        E("mac_based_file_authentication", "macBasedFileAuthentication", bool),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool,
        ),
        E("completion_notification", "completionNotification", bool),
        E("file_category", "fileCategory", str),
    )

    file_repository_user_name: str = Field(type=str, required=True, mutable=False)
    file_repository_password: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=True, mutable=False)
    remote_file_format: str = Field(type=str, required=True, mutable=False)
    port_number: int = Field(type=int, required=False, mutable=False)
    root_directory: str = Field(type=str, required=False, mutable=False)
    cpe_file_directory: str = Field(type=str, required=False, mutable=False)
    secure: bool = Field(type=bool, required=False, mutable=False)
    mac_in_non_request_uri: bool = Field(type=bool, required=False, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=False, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=False, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=False, mutable=False,
    )
    completion_notification: bool = Field(type=bool, required=False, mutable=False)
    file_category: str = Field(type=str, required=False, mutable=False)


class DeviceManagementFileAuthLocationGetResponse18(OCIResponse):
    """
    Return the address and credentials of the File Repository hosting the requested access
    device file.

    Also return the file name and path on the File Repository.  This is a response to
    ``DeviceManagementFileAuthLocationGetRequest18()``. Replaced by:
    ``DeviceManagementFileAuthLocationGetResponse21()``.

    Attributes:
        file_repository_user_name: fileRepositoryUserName
        file_repository_password: fileRepositoryPassword
        net_address: netAddress
        remote_file_format: remoteFileFormat
        port_number: portNumber
        root_directory: rootDirectory
        cpe_file_directory: cpeFileDirectory
        secure: secure
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        completion_notification: completionNotification
        file_category: fileCategory
        enable_caching: enableCaching
    """

    _ELEMENTS = (
        E("file_repository_user_name", "fileRepositoryUserName", str, is_required=True),
        E("file_repository_password", "fileRepositoryPassword", str, is_required=True),
        E("net_address", "netAddress", str, is_required=True),
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("port_number", "portNumber", int),
        E("root_directory", "rootDirectory", str),
        E("cpe_file_directory", "cpeFileDirectory", str),
        E("secure", "secure", bool),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
        E("use_http_digest_authentication", "useHttpDigestAuthentication", bool),
        E("mac_based_file_authentication", "macBasedFileAuthentication", bool),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool,
        ),
        E("completion_notification", "completionNotification", bool),
        E("file_category", "fileCategory", str),
        E("enable_caching", "enableCaching", bool),
    )

    file_repository_user_name: str = Field(type=str, required=True, mutable=False)
    file_repository_password: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=True, mutable=False)
    remote_file_format: str = Field(type=str, required=True, mutable=False)
    port_number: int = Field(type=int, required=False, mutable=False)
    root_directory: str = Field(type=str, required=False, mutable=False)
    cpe_file_directory: str = Field(type=str, required=False, mutable=False)
    secure: bool = Field(type=bool, required=False, mutable=False)
    mac_in_non_request_uri: bool = Field(type=bool, required=False, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=False, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=False, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=False, mutable=False,
    )
    completion_notification: bool = Field(type=bool, required=False, mutable=False)
    file_category: str = Field(type=str, required=False, mutable=False)
    enable_caching: bool = Field(type=bool, required=False, mutable=False)


class DeviceManagementFileAuthLocationGetResponse21(OCIResponse):
    """
    This is a response to ``DeviceManagementFileAuthLocationGetRequest21()``.

    Return the address and credentials of the File Repository hosting the requested access
    device file.  Also return the file name and path on the File Repository.  Also returns
    the status of the file authentication.

    Attributes:
        status: status
        file_repository_user_name: fileRepositoryUserName
        file_repository_password: fileRepositoryPassword
        net_address: netAddress
        remote_file_format: remoteFileFormat
        port_number: portNumber
        root_directory: rootDirectory
        cpe_file_directory: cpeFileDirectory
        secure: secure
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        completion_notification: completionNotification
        file_category: fileCategory
        enable_caching: enableCaching
        notify_file_upload: notifyFileUpload
    """

    _ELEMENTS = (
        E("status", "status", str),
        E("file_repository_user_name", "fileRepositoryUserName", str, is_required=True),
        E("file_repository_password", "fileRepositoryPassword", str, is_required=True),
        E("net_address", "netAddress", str, is_required=True),
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("port_number", "portNumber", int),
        E("root_directory", "rootDirectory", str),
        E("cpe_file_directory", "cpeFileDirectory", str),
        E("secure", "secure", bool),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
        E("use_http_digest_authentication", "useHttpDigestAuthentication", bool),
        E("mac_based_file_authentication", "macBasedFileAuthentication", bool),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool,
        ),
        E("completion_notification", "completionNotification", bool),
        E("file_category", "fileCategory", str),
        E("enable_caching", "enableCaching", bool),
        E("notify_file_upload", "notifyFileUpload", bool),
    )

    status: str = Field(type=str, required=False, mutable=False)
    file_repository_user_name: str = Field(type=str, required=True, mutable=False)
    file_repository_password: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=True, mutable=False)
    remote_file_format: str = Field(type=str, required=True, mutable=False)
    port_number: int = Field(type=int, required=False, mutable=False)
    root_directory: str = Field(type=str, required=False, mutable=False)
    cpe_file_directory: str = Field(type=str, required=False, mutable=False)
    secure: bool = Field(type=bool, required=False, mutable=False)
    mac_in_non_request_uri: bool = Field(type=bool, required=False, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=False, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=False, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=False, mutable=False,
    )
    completion_notification: bool = Field(type=bool, required=False, mutable=False)
    file_category: str = Field(type=str, required=False, mutable=False)
    enable_caching: bool = Field(type=bool, required=False, mutable=False)
    notify_file_upload: bool = Field(type=bool, required=False, mutable=False)


class EnterpriseBroadWorksMobileManagerGetDomainListResponse(OCIResponse):
    """
    Response to the ``EnterpriseBroadWorksMobileManagerGetDomainListRequest()``.

    Contains the list of domains.

    Attributes:
        domain_name: domainName
    """

    _ELEMENTS = (
        E("domain_name", "domainName", str, is_array=True),
    )

    domain_name: "List[str]" = Field(type=list, required=False, mutable=False)


class EnterpriseBroadWorksMobileManagerGetHomeZoneListResponse(OCIResponse):
    """
    Response to the ``EnterpriseBroadWorksMobileManagerGetHomeZoneListRequest()``.

    Contains a table with column headings: "Home Zone Id", "Domain Name", "Mobile Country
    Code", "Mobile Network Code", "Local Area Code" and "Cell Identity".

    Attributes:
        home_zones_table: homeZonesTable
    """

    _ELEMENTS = (
        E(
            "home_zones_table", "homeZonesTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    home_zones_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseBroadWorksMobileManagerGetHomeZoneResponse(OCIResponse):
    """
    Response to the ``EnterpriseBroadWorksMobileManagerGetHomeZoneRequest()``

    Attributes:
        home_zone_domain_name: homeZoneDomainName
        mobile_country_code: mobileCountryCode
        mobile_network_code: mobileNetworkCode
        location_area_code: locationAreaCode
        cell_identity: cellIdentity
    """

    _ELEMENTS = (
        E("home_zone_domain_name", "homeZoneDomainName", str, is_required=True),
        E("mobile_country_code", "mobileCountryCode", str, is_required=True),
        E("mobile_network_code", "mobileNetworkCode", str, is_required=True),
        E("location_area_code", "locationAreaCode", str, is_required=True),
        E("cell_identity", "cellIdentity", str, is_required=True),
    )

    home_zone_domain_name: str = Field(type=str, required=True, mutable=False)
    mobile_country_code: str = Field(type=str, required=True, mutable=False)
    mobile_network_code: str = Field(type=str, required=True, mutable=False)
    location_area_code: str = Field(type=str, required=True, mutable=False)
    cell_identity: str = Field(type=str, required=True, mutable=False)


class EnterpriseBroadWorksMobileManagerGetResponse(OCIResponse):
    """
    Response to the ``EnterpriseBroadWorksMobileManagerGetRequest()``

    Attributes:
        mobile_manager_id: mobileManagerId
        name: name
        is_active: isActive
        local_to_carrier: localToCarrier
        deactivation_reason: deactivationReason
        max_tx_per_second_enabled: maxTxPerSecondEnabled
        max_tx_per_second: maxTxPerSecond
        tldn_enabled: tldnEnabled
        generic_number_enabled: genericNumberEnabled
        mobile_state_check_enabled: mobileStateCheckEnabled
        location_based_services_enabled: locationBasedServicesEnabled
    """

    _ELEMENTS = (
        E("mobile_manager_id", "mobileManagerId", str, is_required=True),
        E("name", "name", str, is_required=True),
        E("is_active", "isActive", bool, is_required=True),
        E("local_to_carrier", "localToCarrier", bool, is_required=True),
        E("deactivation_reason", "deactivationReason", str),
        E("max_tx_per_second_enabled", "maxTxPerSecondEnabled", bool, is_required=True),
        E("max_tx_per_second", "maxTxPerSecond", int),
        E("tldn_enabled", "tldnEnabled", bool, is_required=True),
        E("generic_number_enabled", "genericNumberEnabled", bool, is_required=True),
        E("mobile_state_check_enabled", "mobileStateCheckEnabled", bool, is_required=True),
        E(
            "location_based_services_enabled", "locationBasedServicesEnabled", bool,
            is_required=True,
        ),
    )

    mobile_manager_id: str = Field(type=str, required=True, mutable=False)
    name: str = Field(type=str, required=True, mutable=False)
    is_active: bool = Field(type=bool, required=True, mutable=False)
    local_to_carrier: bool = Field(type=bool, required=True, mutable=False)
    deactivation_reason: str = Field(type=str, required=False, mutable=False)
    max_tx_per_second_enabled: bool = Field(type=bool, required=True, mutable=False)
    max_tx_per_second: int = Field(type=int, required=False, mutable=False)
    tldn_enabled: bool = Field(type=bool, required=True, mutable=False)
    generic_number_enabled: bool = Field(type=bool, required=True, mutable=False)
    mobile_state_check_enabled: bool = Field(type=bool, required=True, mutable=False)
    location_based_services_enabled: bool = Field(type=bool, required=True, mutable=False)


class EnterpriseBroadWorksMobilityMobileSubscriberDirectoryNumberGetAssignmentListResponse(OCIResponse):
    """
    Response to
    ``EnterpriseBroadWorksMobilityMobileSubscriberDirectoryNumberGetAssignmentListRequest()``.

    The response contains a table with columns: "Mobile Number", "User Id", "Last Name",
    "First Name","Phone Number","Extension", "Group Id", "Department" and "Mobile
    Network". The "Mobile Number" column contains a single DN. The "User Id", "Last Name"
    and "First Name" columns contains the corresponding attributes of the user possessing
    the DN(s). The "Phone Number" column contains a single DN. The "Group Id" column
    contains the Group Id of the user.  The "Department" column contains the department of
    the user if it is part of a department.  The "Mobile Network" column contains the
    Mobile Network the number belongs to.

    Attributes:
        mobile_subscriber_directory_numbers_assignment_table:
            mobileSubscriberDirectoryNumbersAssignmentTable
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_numbers_assignment_table",
            "mobileSubscriberDirectoryNumbersAssignmentTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    mobile_subscriber_directory_numbers_assignment_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class EnterpriseBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListResponse(OCIResponse):
    """
    Response to
    ``EnterpriseBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListRequest()``.

    Contains a list of available Mobile Subscriber Directory Numbers not yet assigned to
    any user.

    Attributes:
        available_mobile_subscriber_directory_number:
            availableMobileSubscriberDirectoryNumber
    """

    _ELEMENTS = (
        E(
            "available_mobile_subscriber_directory_number",
            "availableMobileSubscriberDirectoryNumber", str, is_array=True,
        ),
    )

    available_mobile_subscriber_directory_number: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )


class EnterpriseCallCenterAgentThresholdDefaultProfileGetResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterAgentThresholdDefaultProfileGetRequest()``.

    The agent table contains the agents assigned to the profile and has column headings:
    "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana First Name",
    "Phone Number", "Extension", "Department", "Email Address";

    Attributes:
        profile_name: profileName
        profile_description: profileDescription
        threshold_current_call_state_idle_time_yellow:
            thresholdCurrentCallStateIdleTimeYellow
        threshold_current_call_state_idle_time_red: thresholdCurrentCallStateIdleTimeRed
        threshold_current_call_state_on_call_time_yellow:
            thresholdCurrentCallStateOnCallTimeYellow
        threshold_current_call_state_on_call_time_red:
            thresholdCurrentCallStateOnCallTimeRed
        threshold_current_agent_state_unavailable_time_yellow:
            thresholdCurrentAgentStateUnavailableTimeYellow
        threshold_current_agent_state_unavailable_time_red:
            thresholdCurrentAgentStateUnavailableTimeRed
        threshold_average_busy_in_time_yellow: thresholdAverageBusyInTimeYellow
        threshold_average_busy_in_time_red: thresholdAverageBusyInTimeRed
        threshold_average_busy_out_time_yellow: thresholdAverageBusyOutTimeYellow
        threshold_average_busy_out_time_red: thresholdAverageBusyOutTimeRed
        threshold_average_wrap_up_time_yellow: thresholdAverageWrapUpTimeYellow
        threshold_average_wrap_up_time_red: thresholdAverageWrapUpTimeRed
        enable_notification_email: enableNotificationEmail
        notification_email_address: notificationEmailAddress
        agent_table: agentTable
    """

    _ELEMENTS = (
        E("profile_name", "profileName", str, is_required=True),
        E("profile_description", "profileDescription", str),
        E(
            "threshold_current_call_state_idle_time_yellow",
            "thresholdCurrentCallStateIdleTimeYellow", int,
        ),
        E(
            "threshold_current_call_state_idle_time_red",
            "thresholdCurrentCallStateIdleTimeRed", int,
        ),
        E(
            "threshold_current_call_state_on_call_time_yellow",
            "thresholdCurrentCallStateOnCallTimeYellow", int,
        ),
        E(
            "threshold_current_call_state_on_call_time_red",
            "thresholdCurrentCallStateOnCallTimeRed", int,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_yellow",
            "thresholdCurrentAgentStateUnavailableTimeYellow", int,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_red",
            "thresholdCurrentAgentStateUnavailableTimeRed", int,
        ),
        E("threshold_average_busy_in_time_yellow", "thresholdAverageBusyInTimeYellow", int),
        E("threshold_average_busy_in_time_red", "thresholdAverageBusyInTimeRed", int),
        E("threshold_average_busy_out_time_yellow", "thresholdAverageBusyOutTimeYellow", int),
        E("threshold_average_busy_out_time_red", "thresholdAverageBusyOutTimeRed", int),
        E("threshold_average_wrap_up_time_yellow", "thresholdAverageWrapUpTimeYellow", int),
        E("threshold_average_wrap_up_time_red", "thresholdAverageWrapUpTimeRed", int),
        E("enable_notification_email", "enableNotificationEmail", bool, is_required=True),
        E("notification_email_address", "notificationEmailAddress", str),
        E("agent_table", "agentTable", list, is_complex=True, is_table=True),
    )

    profile_name: str = Field(type=str, required=True, mutable=False)
    profile_description: str = Field(type=str, required=False, mutable=False)
    threshold_current_call_state_idle_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_idle_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_on_call_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_on_call_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_agent_state_unavailable_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_agent_state_unavailable_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_in_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_in_time_red: int = Field(type=int, required=False, mutable=False)
    threshold_average_busy_out_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_out_time_red: int = Field(type=int, required=False, mutable=False)
    threshold_average_wrap_up_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_wrap_up_time_red: int = Field(type=int, required=False, mutable=False)
    enable_notification_email: bool = Field(type=bool, required=True, mutable=False)
    notification_email_address: str = Field(type=str, required=False, mutable=False)
    agent_table: "list" = Field(type=list, required=False, mutable=False)


class EnterpriseCallCenterAgentThresholdProfileGetAvailableAgentListResponse(OCIResponse):
    """
    Response to the
    ``EnterpriseCallCenterAgentThresholdProfileGetAvailableAgentListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address", "Agent Threshold Profile";

    Attributes:
        agent_table: agentTable
    """

    _ELEMENTS = (
        E(
            "agent_table", "agentTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    agent_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterAgentThresholdProfileGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterAgentThresholdProfileGetListRequest()``.

    Contains a table with all the Call Center Agent Threshold Profiles in the Enterprise.
    The column headings are: "Default", "Name", "Description".

    Attributes:
        profiles_table: profilesTable
    """

    _ELEMENTS = (
        E(
            "profiles_table", "profilesTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profiles_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterAgentThresholdProfileGetResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterAgentThresholdProfileGetRequest()``.

    The agentTable contains the agents assigned to the profile and has the column
    headings: "User Id", "Group Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address";

    Attributes:
        profile_description: profileDescription
        threshold_current_call_state_idle_time_yellow:
            thresholdCurrentCallStateIdleTimeYellow
        threshold_current_call_state_idle_time_red: thresholdCurrentCallStateIdleTimeRed
        threshold_current_call_state_on_call_time_yellow:
            thresholdCurrentCallStateOnCallTimeYellow
        threshold_current_call_state_on_call_time_red:
            thresholdCurrentCallStateOnCallTimeRed
        threshold_current_agent_state_unavailable_time_yellow:
            thresholdCurrentAgentStateUnavailableTimeYellow
        threshold_current_agent_state_unavailable_time_red:
            thresholdCurrentAgentStateUnavailableTimeRed
        threshold_average_busy_in_time_yellow: thresholdAverageBusyInTimeYellow
        threshold_average_busy_in_time_red: thresholdAverageBusyInTimeRed
        threshold_average_busy_out_time_yellow: thresholdAverageBusyOutTimeYellow
        threshold_average_busy_out_time_red: thresholdAverageBusyOutTimeRed
        threshold_average_wrap_up_time_yellow: thresholdAverageWrapUpTimeYellow
        threshold_average_wrap_up_time_red: thresholdAverageWrapUpTimeRed
        enable_notification_email: enableNotificationEmail
        notification_email_address: notificationEmailAddress
        agent_table: agentTable
    """

    _ELEMENTS = (
        E("profile_description", "profileDescription", str),
        E(
            "threshold_current_call_state_idle_time_yellow",
            "thresholdCurrentCallStateIdleTimeYellow", int,
        ),
        E(
            "threshold_current_call_state_idle_time_red",
            "thresholdCurrentCallStateIdleTimeRed", int,
        ),
        E(
            "threshold_current_call_state_on_call_time_yellow",
            "thresholdCurrentCallStateOnCallTimeYellow", int,
        ),
        E(
            "threshold_current_call_state_on_call_time_red",
            "thresholdCurrentCallStateOnCallTimeRed", int,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_yellow",
            "thresholdCurrentAgentStateUnavailableTimeYellow", int,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_red",
            "thresholdCurrentAgentStateUnavailableTimeRed", int,
        ),
        E("threshold_average_busy_in_time_yellow", "thresholdAverageBusyInTimeYellow", int),
        E("threshold_average_busy_in_time_red", "thresholdAverageBusyInTimeRed", int),
        E("threshold_average_busy_out_time_yellow", "thresholdAverageBusyOutTimeYellow", int),
        E("threshold_average_busy_out_time_red", "thresholdAverageBusyOutTimeRed", int),
        E("threshold_average_wrap_up_time_yellow", "thresholdAverageWrapUpTimeYellow", int),
        E("threshold_average_wrap_up_time_red", "thresholdAverageWrapUpTimeRed", int),
        E("enable_notification_email", "enableNotificationEmail", bool, is_required=True),
        E("notification_email_address", "notificationEmailAddress", str),
        E(
            "agent_table", "agentTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_description: str = Field(type=str, required=False, mutable=False)
    threshold_current_call_state_idle_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_idle_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_on_call_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_on_call_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_agent_state_unavailable_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_agent_state_unavailable_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_in_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_in_time_red: int = Field(type=int, required=False, mutable=False)
    threshold_average_busy_out_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_out_time_red: int = Field(type=int, required=False, mutable=False)
    threshold_average_wrap_up_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_wrap_up_time_red: int = Field(type=int, required=False, mutable=False)
    enable_notification_email: bool = Field(type=bool, required=True, mutable=False)
    notification_email_address: str = Field(type=str, required=False, mutable=False)
    agent_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterAgentUnavailableCodeGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterAgentUnavailableCodeGetListRequest()``.

    Contains a table with column headings: "Is Active", "Code", "Description".

    Attributes:
        unavailable_codes_table: unavailableCodesTable
    """

    _ELEMENTS = (
        E(
            "unavailable_codes_table", "unavailableCodesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    unavailable_codes_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterAgentUnavailableCodeGetResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterAgentUnavailableCodeGetRequest()``

    Attributes:
        is_active: isActive
        description: description
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("description", "description", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class EnterpriseCallCenterAgentUnavailableCodeSettingsGetResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterAgentUnavailableCodeSettingsGetRequest()``.

    Replaced by ``EnterpriseCallCenterAgentUnavailableCodeSettingsGetResponse17sp4()``.

    Attributes:
        enable_agent_unavailable_codes: enableAgentUnavailableCodes
        default_agent_unavailable_code_on_dnd: defaultAgentUnavailableCodeOnDND
        default_agent_unavailable_code_on_personal_calls:
            defaultAgentUnavailableCodeOnPersonalCalls
        default_agent_unavailable_code_on_consecutive_bounces:
            defaultAgentUnavailableCodeOnConsecutiveBounces
        force_use_of_agent_unavailable_codes: forceUseOfAgentUnavailableCodes
        default_agent_unavailable_code: defaultAgentUnavailableCode
    """

    _ELEMENTS = (
        E(
            "enable_agent_unavailable_codes", "enableAgentUnavailableCodes", bool,
            is_required=True,
        ),
        E("default_agent_unavailable_code_on_dnd", "defaultAgentUnavailableCodeOnDND", str),
        E(
            "default_agent_unavailable_code_on_personal_calls",
            "defaultAgentUnavailableCodeOnPersonalCalls", str,
        ),
        E(
            "default_agent_unavailable_code_on_consecutive_bounces",
            "defaultAgentUnavailableCodeOnConsecutiveBounces", str,
        ),
        E(
            "force_use_of_agent_unavailable_codes", "forceUseOfAgentUnavailableCodes",
            bool, is_required=True,
        ),
        E("default_agent_unavailable_code", "defaultAgentUnavailableCode", str),
    )

    enable_agent_unavailable_codes: bool = Field(type=bool, required=True, mutable=False)
    default_agent_unavailable_code_on_dnd: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_personal_calls: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_consecutive_bounces: str = Field(
        type=str, required=False, mutable=False,
    )
    force_use_of_agent_unavailable_codes: bool = Field(
        type=bool, required=True, mutable=False,
    )
    default_agent_unavailable_code: str = Field(type=str, required=False, mutable=False)


class EnterpriseCallCenterAgentUnavailableCodeSettingsGetResponse17sp4(OCIResponse):
    """
    Response to ``EnterpriseCallCenterAgentUnavailableCodeSettingsGetRequest17sp4()``.


    Attributes:
        enable_agent_unavailable_codes: enableAgentUnavailableCodes
        default_agent_unavailable_code_on_dnd: defaultAgentUnavailableCodeOnDND
        default_agent_unavailable_code_on_personal_calls:
            defaultAgentUnavailableCodeOnPersonalCalls
        default_agent_unavailable_code_on_consecutive_bounces:
            defaultAgentUnavailableCodeOnConsecutiveBounces
        default_agent_unavailable_code_on_not_reachable:
            defaultAgentUnavailableCodeOnNotReachable
        force_use_of_agent_unavailable_codes: forceUseOfAgentUnavailableCodes
        default_agent_unavailable_code: defaultAgentUnavailableCode
    """

    _ELEMENTS = (
        E(
            "enable_agent_unavailable_codes", "enableAgentUnavailableCodes", bool,
            is_required=True,
        ),
        E("default_agent_unavailable_code_on_dnd", "defaultAgentUnavailableCodeOnDND", str),
        E(
            "default_agent_unavailable_code_on_personal_calls",
            "defaultAgentUnavailableCodeOnPersonalCalls", str,
        ),
        E(
            "default_agent_unavailable_code_on_consecutive_bounces",
            "defaultAgentUnavailableCodeOnConsecutiveBounces", str,
        ),
        E(
            "default_agent_unavailable_code_on_not_reachable",
            "defaultAgentUnavailableCodeOnNotReachable", str,
        ),
        E(
            "force_use_of_agent_unavailable_codes", "forceUseOfAgentUnavailableCodes",
            bool, is_required=True,
        ),
        E("default_agent_unavailable_code", "defaultAgentUnavailableCode", str),
    )

    enable_agent_unavailable_codes: bool = Field(type=bool, required=True, mutable=False)
    default_agent_unavailable_code_on_dnd: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_personal_calls: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_consecutive_bounces: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_not_reachable: str = Field(
        type=str, required=False, mutable=False,
    )
    force_use_of_agent_unavailable_codes: bool = Field(
        type=bool, required=True, mutable=False,
    )
    default_agent_unavailable_code: str = Field(type=str, required=False, mutable=False)


class EnterpriseCallCenterCallDispositionCodeGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterCallDispositionCodeGetListRequest()``.

    Contains a table with column headings: "Is Active", "Code", "Description".

    Attributes:
        disposition_codes_table: dispositionCodesTable
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table", "dispositionCodesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    disposition_codes_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterCallDispositionCodeGetResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterCallDispositionCodeGetRequest()``

    Attributes:
        is_active: isActive
        description: description
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("description", "description", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class EnterpriseCallCenterCallDispositionCodeGetUsageListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterCallDispositionCodeGetUsageListRequest()``.

    The Type column contains either "Call Center" or "Route Point". Contains a table with
    column headings: "Group Id", "Id", "Name" and "Type".

    Attributes:
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterCurrentAndPastAgentGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterCurrentAndPastAgentGetListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        agent_user_table: agentUserTable
        deleted_agent_user_table: deletedAgentUserTable
    """

    _ELEMENTS = (
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "deleted_agent_user_table", "deletedAgentUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    deleted_agent_user_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterCurrentAndPastCallCenterGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterCurrentAndPastCallCenterGetListRequest()``.


    Attributes:
        service_user_id: serviceUserId
        deleted_service_user_id: deletedServiceUserId
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_array=True),
        E("deleted_service_user_id", "deletedServiceUserId", str, is_array=True),
    )

    service_user_id: "List[str]" = Field(type=list, required=False, mutable=False)
    deleted_service_user_id: "List[str]" = Field(type=list, required=False, mutable=False)


class EnterpriseCallCenterCurrentAndPastDNISGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterCurrentAndPastDNISGetListRequest()``.


    Attributes:
        name: name
        deleted_name: deletedName
    """

    _ELEMENTS = (
        E("name", "name", str, is_array=True),
        E("deleted_name", "deletedName", str, is_array=True),
    )

    name: "List[str]" = Field(type=list, required=False, mutable=False)
    deleted_name: "List[str]" = Field(type=list, required=False, mutable=False)


class EnterpriseCallCenterEnhancedReportingBrandingGetResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterEnhancedReportingBrandingGetRequest()``.


    Attributes:
        branding_choice: brandingChoice
        branding_file_description: brandingFileDescription
    """

    _ELEMENTS = (
        E("branding_choice", "brandingChoice", str, is_required=True),
        E("branding_file_description", "brandingFileDescription", str),
    )

    branding_choice: str = Field(type=str, required=True, mutable=False)
    branding_file_description: str = Field(type=str, required=False, mutable=False)


class EnterpriseCallCenterEnhancedReportingGetAvailableReportTemplateListResponse(OCIResponse):
    """
    Response to
    ``EnterpriseCallCenterEnhancedReportingGetAvailableReportTemplateListRequest()``.

    Contains a table with column headings: "Name", "Description" and "Level", "Is Agent
    Required", "Is Call Center Required", "Is Call Center Dnis Required", "Is Real Time
    Report", "Is Sampling Period Required", "Call Completion Threshold Parameter", "Short
    Duration Threshold Parameter", "Service Level Threshold Parameter", "Service Level
    Inclusions Parameter", "Service Level Objective Threshold Parameter", "Abandoned Call
    Threshold Parameter", "Service Level Threshold Parameter Number", "Abandoned Call
    Threshold Parameter Number" and "Scope". The possible values for "Level" are "System"
    and "Enterprise". The possible values for "Is Agent Required", "Is Call Center
    Required", "Is Call Center Dnis Required", "Is Real Time Report" and "Is Sampling
    Period Required" are "true" and "false". The possible values for "Call Completion
    Threshold Parameter", "Short Duration Threshold Parameter", "Service Level Threshold
    Parameter", "Service Level Inclusions Parameter", "Service Level Objective Threshold
    Parameter" and "Abandoned Call Threshold Parameter" are "Required", "Hidden" and "Does
    Not Apply". The possible values for "Scope" are "Supervisor Only" and "Supervisor and
    Agent".

    Attributes:
        report_template_table: reportTemplateTable
    """

    _ELEMENTS = (
        E(
            "report_template_table", "reportTemplateTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    report_template_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterEnhancedReportingGetResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterEnhancedReportingGetRequest()``.

    Replaced by ``EnterpriseCallCenterEnhancedReportingGetResponse19()``

    Attributes:
        reporting_server: reportingServer
        web_statistic_source: webStatisticSource
    """

    _ELEMENTS = (
        E("reporting_server", "reportingServer", str, is_required=True),
        E("web_statistic_source", "webStatisticSource", str, is_required=True),
    )

    reporting_server: str = Field(type=str, required=True, mutable=False)
    web_statistic_source: str = Field(type=str, required=True, mutable=False)


class EnterpriseCallCenterEnhancedReportingGetResponse19(OCIResponse):
    """
    Response to ``EnterpriseCallCenterEnhancedReportingGetRequest19()``.


    Attributes:
        reporting_server: reportingServer
    """

    _ELEMENTS = (
        E("reporting_server", "reportingServer", str, is_required=True),
    )

    reporting_server: str = Field(type=str, required=True, mutable=False)


class EnterpriseCallCenterEnhancedReportingReportTemplateGetListResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterEnhancedReportingReportTemplateGetListRequest()``.

    Contains a table with column headings: "Name", "Description", "Type" and "Enabled".

    Attributes:
        report_template_table: reportTemplateTable
    """

    _ELEMENTS = (
        E(
            "report_template_table", "reportTemplateTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    report_template_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterEnhancedReportingReportTemplateGetResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterEnhancedReportingReportTemplateGetRequest()``.


    Attributes:
        description: description
        data_template: dataTemplate
        filter_number: filterNumber
        xslt_template_description: xsltTemplateDescription
        scope: scope
        is_enabled: isEnabled
        is_realtime_report: isRealtimeReport
        call_completion_threshold_param: callCompletionThresholdParam
        short_duration_threshold_param: shortDurationThresholdParam
        service_level_threshold_param: serviceLevelThresholdParam
        service_level_inclusions_param: serviceLevelInclusionsParam
        service_level_objective_threshold_param: serviceLevelObjectiveThresholdParam
        abandoned_call_threshold_param: abandonedCallThresholdParam
        service_level_threshold_param_number: serviceLevelThresholdParamNumber
        abandoned_call_threshold_param_number: abandonedCallThresholdParamNumber
        filter_value: filterValue
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("data_template", "dataTemplate", str, is_required=True),
        E("filter_number", "filterNumber", int),
        E("xslt_template_description", "xsltTemplateDescription", str, is_required=True),
        E("scope", "scope", str, is_required=True),
        E("is_enabled", "isEnabled", bool, is_required=True),
        E("is_realtime_report", "isRealtimeReport", bool),
        E("call_completion_threshold_param", "callCompletionThresholdParam", str),
        E("short_duration_threshold_param", "shortDurationThresholdParam", str),
        E("service_level_threshold_param", "serviceLevelThresholdParam", str),
        E("service_level_inclusions_param", "serviceLevelInclusionsParam", str),
        E(
            "service_level_objective_threshold_param",
            "serviceLevelObjectiveThresholdParam", str,
        ),
        E("abandoned_call_threshold_param", "abandonedCallThresholdParam", str),
        E("service_level_threshold_param_number", "serviceLevelThresholdParamNumber", int),
        E("abandoned_call_threshold_param_number", "abandonedCallThresholdParamNumber", int),
        E("filter_value", "filterValue", str),
    )

    description: str = Field(type=str, required=False, mutable=False)
    data_template: str = Field(type=str, required=True, mutable=False)
    filter_number: int = Field(type=int, required=False, mutable=False)
    xslt_template_description: str = Field(type=str, required=True, mutable=False)
    scope: str = Field(type=str, required=True, mutable=False)
    is_enabled: bool = Field(type=bool, required=True, mutable=False)
    is_realtime_report: bool = Field(type=bool, required=False, mutable=False)
    call_completion_threshold_param: str = Field(type=str, required=False, mutable=False)
    short_duration_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_inclusions_param: str = Field(type=str, required=False, mutable=False)
    service_level_objective_threshold_param: str = Field(
        type=str, required=False, mutable=False,
    )
    abandoned_call_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_threshold_param_number: int = Field(type=int, required=False, mutable=False)
    abandoned_call_threshold_param_number: int = Field(
        type=int, required=False, mutable=False,
    )
    filter_value: str = Field(type=str, required=False, mutable=False)


class EnterpriseCallCenterEnhancedReportingScheduledReportGetActiveListResponse(OCIResponse):
    """
    Response to
    ``EnterpriseCallCenterEnhancedReportingScheduledReportGetActiveListRequest()``.

    Contains a table with column headings : "Schedule Name", "Description", "Created By",
    "Is Supervisor Report", "Report Template Name", "Report Template Level" and
    "Recurring". The "Created By" can be either "Administrator" or user id if created by
    supervisor.  The possible values for "Recurring" are "None", "Daily", "Weekly",
    "Monthly" and "Yearly". The possible values for "Report Level" are "System" and
    "Enterprise".

    Attributes:
        scheduled_report_table: scheduledReportTable
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table", "scheduledReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    scheduled_report_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterEnhancedReportingScheduledReportGetCompletedListResponse(OCIResponse):
    """
    Response to
    ``EnterpriseCallCenterEnhancedReportingScheduledReportGetCompletedListRequest()``
    Contains a table with column headings : "Schedule Name", "Description", "Created By",
    "Is Supervisor Report", "Report Template Name", "Report Template Level" and
    "Recurring".

    The "Created By" can be either "Administrator" or user id if created by supervisor.
    The possible values for "Recurring" are "None", "Daily", "Weekly", "Monthly" and
    "Yearly". The possible values for "Report Level" are "System" and "Enterprise".

    Attributes:
        scheduled_report_table: scheduledReportTable
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table", "scheduledReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    scheduled_report_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterEnhancedReportingScheduledReportGetListResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterEnhancedReportingScheduledReportGetListRequest()``.

    Contains a table with column headings : "Schedule Name", "Description", "Created By",
    "Is Supervisor Report", "Status", "Report Template Name", "Report Template Level" and
    "Recurring". The "Created By" can be either "Administrator" or user id if created by
    supervisor.  The possible values for "Status" are "Active", and "Completed". The
    possible values for "Recurring" are "None", "Daily", "Weekly", "Monthly" and "Yearly".
    The possible values for "Report Level" are "System" and "Enterprise".

    Attributes:
        scheduled_report_table: scheduledReportTable
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table", "scheduledReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    scheduled_report_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterEnhancedReportingScheduledReportGetReportTemplateUsageListResponse(OCIResponse):
    """
    Response to
    ``EnterpriseCallCenterEnhancedReportingScheduledReportGetReportTemplateUsageListRequest()``.

    Contains a table with column headings: "Schedule Name", "Created By", "Created By
    Supervisor", and "Is Active". The "Created By" can be either "Administrator" or user
    id if created by supervisor.

    Attributes:
        schedule_report_table: scheduleReportTable
    """

    _ELEMENTS = (
        E(
            "schedule_report_table", "scheduleReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    schedule_report_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseCallCenterGetResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterGetRequest()``.

    Replaced by ``EnterpriseCallCenterGetResponse17sp4()``.

    Attributes:
        use_system_default_guard_timer: useSystemDefaultGuardTimer
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        use_system_default_unavailable_settings: useSystemDefaultUnavailableSettings
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
    """

    _ELEMENTS = (
        E(
            "use_system_default_guard_timer", "useSystemDefaultGuardTimer", bool,
            is_required=True,
        ),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings", bool,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int,
        ),
    )

    use_system_default_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    use_system_default_unavailable_settings: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=False, mutable=False,
    )


class EnterpriseCallCenterGetResponse17sp4(OCIResponse):
    """
    Response to ``EnterpriseCallCenterGetRequest17sp4()``.


    Attributes:
        use_system_default_guard_timer: useSystemDefaultGuardTimer
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        use_system_default_unavailable_settings: useSystemDefaultUnavailableSettings
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        force_agent_unavailable_on_not_reachable: forceAgentUnavailableOnNotReachable
    """

    _ELEMENTS = (
        E(
            "use_system_default_guard_timer", "useSystemDefaultGuardTimer", bool,
            is_required=True,
        ),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings", bool,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable", bool,
        ),
    )

    use_system_default_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    use_system_default_unavailable_settings: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=False, mutable=False,
    )
    force_agent_unavailable_on_not_reachable: bool = Field(
        type=bool, required=False, mutable=False,
    )


class EnterpriseCallCenterGetRoutingPolicyResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterGetRoutingPolicyRequest()``.

    Contains a table with column headings: "Service User Id", "Name" and "Priority".

    Attributes:
        routing_policy: routingPolicy
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E("routing_policy", "routingPolicy", str, is_required=True),
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    routing_policy: str = Field(type=str, required=True, mutable=False)
    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseEnterpriseTrunkGetAvailableUserListResponse(OCIResponse):
    """
    Response to ``EnterpriseEnterpriseTrunkGetAvailableUserListRequest()``.

    The column headings for the enterpriseTrunkUserTable are: "User Id", "Last Name",
    "First Name", "Hiragana Last Name", "Hiragana First Name", "Phone Number",
    "Extension", "Department", "Email Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseEnterpriseTrunkGetListResponse(OCIResponse):
    """
    Response to ``EnterpriseEnterpriseTrunkGetListRequest()``.

    Contains a table of enterprise trunks defined in the enterprise The column headings
    are: "Enterprise Trunk Name", "Routing Type"

    Attributes:
        enterprise_trunk_table: enterpriseTrunkTable
    """

    _ELEMENTS = (
        E(
            "enterprise_trunk_table", "enterpriseTrunkTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    enterprise_trunk_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseEnterpriseTrunkGetResponse(OCIResponse):
    """
    Response to ``EnterpriseEnterpriseTrunkGetRequest()``.

    Replaced by: ``EnterpriseEnterpriseTrunkGetResponse21()``.

    Attributes:
        maximum_reroute_attempts: maximumRerouteAttempts
        route_exhaustion_action: routeExhaustionAction
        route_exhaustion_forward_address: routeExhaustionForwardAddress
        ordered_routing: orderedRouting
        priority_weighted_routing: priorityWeightedRouting
    """

    _ELEMENTS = (
        E("maximum_reroute_attempts", "maximumRerouteAttempts", int, is_required=True),
        E("route_exhaustion_action", "routeExhaustionAction", str, is_required=True),
        E("route_exhaustion_forward_address", "routeExhaustionForwardAddress", str),
        E("ordered_routing", "orderedRouting", str, is_complex=True),  # unknown
        E(
            "priority_weighted_routing", "priorityWeightedRouting", str, is_complex=True,
        ),  # unknown
    )

    maximum_reroute_attempts: int = Field(type=int, required=True, mutable=False)
    route_exhaustion_action: str = Field(type=str, required=True, mutable=False)
    route_exhaustion_forward_address: str = Field(type=str, required=False, mutable=False)
    ordered_routing: str = Field(type=str, required=False, mutable=False)
    priority_weighted_routing: str = Field(type=str, required=False, mutable=False)


class EnterpriseEnterpriseTrunkGetResponse21(OCIResponse):
    """
    Response to ``EnterpriseEnterpriseTrunkGetRequest21()``.


    Attributes:
        maximum_reroute_attempts: maximumRerouteAttempts
        route_exhaustion_action: routeExhaustionAction
        route_exhaustion_forward_address: routeExhaustionForwardAddress
        ordered_routing: orderedRouting
        priority_weighted_routing: priorityWeightedRouting
        enable_capacity_management: enableCapacityManagement
        max_active_calls: maxActiveCalls
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
    """

    _ELEMENTS = (
        E("maximum_reroute_attempts", "maximumRerouteAttempts", int, is_required=True),
        E("route_exhaustion_action", "routeExhaustionAction", str, is_required=True),
        E("route_exhaustion_forward_address", "routeExhaustionForwardAddress", str),
        E("ordered_routing", "orderedRouting", str, is_complex=True),  # unknown
        E(
            "priority_weighted_routing", "priorityWeightedRouting", str, is_complex=True,
        ),  # unknown
        E("enable_capacity_management", "enableCapacityManagement", bool, is_required=True),
        E("max_active_calls", "maxActiveCalls", int),
        E("capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls", int),
        E("capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int),
    )

    maximum_reroute_attempts: int = Field(type=int, required=True, mutable=False)
    route_exhaustion_action: str = Field(type=str, required=True, mutable=False)
    route_exhaustion_forward_address: str = Field(type=str, required=False, mutable=False)
    ordered_routing: str = Field(type=str, required=False, mutable=False)
    priority_weighted_routing: str = Field(type=str, required=False, mutable=False)
    enable_capacity_management: bool = Field(type=bool, required=True, mutable=False)
    max_active_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=False, mutable=False)


class EnterpriseEnterpriseTrunkGetUserListResponse(OCIResponse):
    """
    Response to ``EnterpriseEnterpriseTrunkGetUserListRequest()``.

    The column headings for the enterpriseTrunkUserTable are: "Group Id", "User Id", "Last
    Name", "First Name", "Phone Number", "Alternate Trunk Identity", "Hiragana Last Name",
    "Hiragana First Name", "Extension", "Department", "Email Address" and "Route List
    Assigned".

    Attributes:
        enterprise_trunk_user_table: enterpriseTrunkUserTable
    """

    _ELEMENTS = (
        E(
            "enterprise_trunk_user_table", "enterpriseTrunkUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    enterprise_trunk_user_table: "list" = Field(type=list, required=True, mutable=False)


class EnterprisePhoneDirectoryGetListResponse(OCIResponse):
    """
    Response to ``EnterprisePhoneDirectoryGetListRequest()``.

    Contains a table with a row for each phone number and column headings : "Name",
    "Number", "Extension", "Mobile", "Email Address", "Department", "Hiragana Name",
    "Group Id", "Yahoo Id". If extended directory information is requested, the following
    columns are also included: "First Name", "Last Name", "User Id", "Pager", "Title",
    "Time Zone", "Location", "Address Line 1", "Address Line 2", "City", "State", "Zip",
    "Country". Replace by: ``EnterprisePhoneDirectoryGetListResponse17()``

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class EnterprisePhoneDirectoryGetListResponse17(OCIResponse):
    """
    Response to ``EnterprisePhoneDirectoryGetListRequest17()``.

    Contains a table with a row for each phone number and column headings : "Name",
    "Number", "Extension", "Mobile", "Email Address", "Department", "Hiragana Name",
    "Group Id", "Yahoo Id", "Is Virtual On-Net User". If extended directory information is
    requested, the following columns are also included: "First Name", "Last Name", "User
    Id", "Pager", "Title", "Time Zone", "Location", "Address Line 1", "Address Line 2",
    "City", "State", "Zip", "Country". Replaced by:
    ``EnterprisePhoneDirectoryGetListResponse18()``

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class EnterprisePhoneDirectoryGetListResponse17sp3(OCIResponse):
    """
    Response to ``EnterprisePhoneDirectoryGetListRequest17sp3()``.

    Contains a table with a row for each phone number and column headings : "Name",
    "Number", "Extension", "Mobile", "Email Address", "Department", "Hiragana Name",
    "Group Id", "Yahoo Id", "IMP Id", "Is Virtual On-Net User". If extended directory
    information is requested, the following columns are also included: "First Name", "Last
    Name", "User Id", "Pager", "Title", "Time Zone", "Location", "Address Line 1",
    "Address Line 2", "City", "State", "Zip", "Country". Replaced by:
    ``EnterprisePhoneDirectoryGetListResponse18()``

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class EnterprisePhoneDirectoryGetListResponse18(OCIResponse):
    """
    Response to ``EnterprisePhoneDirectoryGetListRequest18()``.

    Contains a table with a row for each phone number and column headings : "Name",
    "Number", "Extension", "Mobile", "Email Address", "Department", "Hiragana Name",
    "Group Id", "Yahoo Id", "User Id", "IMP Id", "Is Virtual On-Net User". If extended
    directory information is requested, the following columns are also included: "First
    Name", "Last Name", "Pager", "Title", "Time Zone", "Location", "Address Line 1",
    "Address Line 2", "City", "State", "Zip", "Country".

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class EnterprisePreAlertingAnnouncementGetResponse(OCIResponse):
    """
    Get the Enterprise level pre-alerting service settings.

    The response is either a ``EnterprisePreAlertingAnnouncementGetResponse()`` or an
    ``ErrorResponse()``.

    Attributes:
        announcement_interruption: announcementInterruption
        interruption_digit_sequence: interruptionDigitSequence
        audio_selection: audioSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        video_file_url: videoFileUrl
    """

    _ELEMENTS = (
        E("announcement_interruption", "announcementInterruption", str, is_required=True),
        E("interruption_digit_sequence", "interruptionDigitSequence", str),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("video_file_url", "videoFileUrl", str),
    )

    announcement_interruption: str = Field(type=str, required=True, mutable=False)
    interruption_digit_sequence: str = Field(type=str, required=False, mutable=False)
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)


class EnterpriseRouteListEnterpriseTrunkNumberRangeGetAvailableListResponse(OCIResponse):
    """
    Response to
    ``EnterpriseRouteListEnterpriseTrunkNumberRangeGetAvailableListRequest()``.

    Contains a list of number ranges that are assigned to an enterprise and still
    available for assignment to users within the enterprise.  The column headings are
    "Number Range Start", "Number Range End" and "Is Active".

    Attributes:
        available_number_range_table: availableNumberRangeTable
    """

    _ELEMENTS = (
        E(
            "available_number_range_table", "availableNumberRangeTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    available_number_range_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseRouteListEnterpriseTrunkNumberRangeGetSummaryListResponse(OCIResponse):
    """
    Response to ``EnterpriseRouteListEnterpriseTrunkNumberRangeGetSummaryListRequest()``.

    The response contains a table with columns: "Number Range Start", "Number Range End",
    "Group Id", "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Phone Number", "Extension", "Department", "Email Address", "Enterprise
    Trunk" and "Is Active". The "User Id", "Last Name", "First Name", "Hiragana Last
    Name", "Hiragana First Name", "Phone Number", "Extension", "Department" and "Email
    Address" columns contains the corresponding attributes of the user possessing the
    number range.  The "Enterprise Trunk" column contains the enterprise trunk the user
    possessing the number range belongs to.  The "Is Active" column indicates if the
    number range has been activated.

    Attributes:
        number_range_summary_table: numberRangeSummaryTable
    """

    _ELEMENTS = (
        E(
            "number_range_summary_table", "numberRangeSummaryTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    number_range_summary_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseSessionAdmissionControlGroupGetListResponse(OCIResponse):
    """
    Response to ``EnterpriseSessionAdmissionControlGroupGetListRequest()``.

    Contains a table of session admission control group configured in the enterprise.  The
    column headings are: "Name", "Is Default", "Maximum Sessions", "Maximum Originating
    Sessions", "Maximum Terminating Sessions"..

    Attributes:
        session_admission_control_group_table: sessionAdmissionControlGroupTable
    """

    _ELEMENTS = (
        E(
            "session_admission_control_group_table", "sessionAdmissionControlGroupTable",
            list, is_complex=True, is_required=True, is_table=True,
        ),
    )

    session_admission_control_group_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class EnterpriseVirtualOnNetEnterpriseExtensionsGetUserListResponse(OCIResponse):
    """
    Response to ``EnterpriseVirtualOnNetEnterpriseExtensionsGetUserListRequest()``.

    Contains a table with column headings : "Group Id", "Last Name", "First Name", "Phone
    Number", "Extension", "Virtual On-Net Call Type" in a row for each user.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseVoiceVPNGetPolicyListResponse(OCIResponse):
    """
    Response to ``EnterpriseVoiceVPNGetListResponse()``.

    Returns a 4 column table with column headings: "Location Code", "Min Extension
    Length", "Max Extension Length", "Location Selection".

    Attributes:
        location_list: locationList
    """

    _ELEMENTS = (
        E(
            "location_list", "locationList", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    location_list: "list" = Field(type=list, required=True, mutable=False)


class EnterpriseVoiceVPNGetResponse(OCIResponse):
    """
    Response to ``EnterpriseVoiceVPNGetRequest()``.

    Replaced By: ``EnterpriseVoiceVPNGetResponse14sp3()``

    Attributes:
        is_active: isActive
        default_selection: defaultSelection
        e164_selection: e164Selection
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("default_selection", "defaultSelection", str, is_required=True),
        E("e164_selection", "e164Selection", str, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    default_selection: str = Field(type=str, required=True, mutable=False)
    e164_selection: str = Field(type=str, required=True, mutable=False)


class EnterpriseVoiceVPNGetResponse14sp3(OCIResponse):
    """
    Response to ``EnterpriseVoiceVPNGetRequest14sp3()``.


    Attributes:
        is_active: isActive
        default_selection: defaultSelection
        e164_selection: e164Selection
        use_phone_context: usePhoneContext
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("default_selection", "defaultSelection", str, is_required=True),
        E("e164_selection", "e164Selection", str, is_required=True),
        E("use_phone_context", "usePhoneContext", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    default_selection: str = Field(type=str, required=True, mutable=False)
    e164_selection: str = Field(type=str, required=True, mutable=False)
    use_phone_context: bool = Field(type=bool, required=True, mutable=False)


class ExternalAuthenticationCreateLoginTokenResponse(OCIResponse):
    """
    Response to ``ExternalAuthenticationCreateLoginTokenRequest()``.


    Attributes:
        login_token: loginToken
    """

    _ELEMENTS = (
        E("login_token", "loginToken", str, is_required=True),
    )

    login_token: str = Field(type=str, required=True, mutable=False)


class GroupAccessDeviceAvailablePortGetListResponse(OCIResponse):
    """
    Response to ``GroupAccessDeviceAvailablePortGetListRequest()``.

    Contains a list of available ports in a device using static mode.  The list is empty
    in case the device is using dynamic mode.

    Attributes:
        port_number: portNumber
    """

    _ELEMENTS = (
        E("port_number", "portNumber", int, is_array=True),
    )

    port_number: "List[int]" = Field(type=list, required=False, mutable=False)


class GroupAccessDeviceCustomTagGetListResponse(OCIResponse):
    """
    Response to ``GroupAccessDeviceCustomTagGetListRequest()``.

    Contains a table of custom configuration tags managed by the Device Management System
    on a per-device profile basis.  The column headings are: "Tag Name", "Tag Value"

    Attributes:
        device_custom_tags_table: deviceCustomTagsTable
    """

    _ELEMENTS = (
        E(
            "device_custom_tags_table", "deviceCustomTagsTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_custom_tags_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAccessDeviceFileGetListResponse(OCIResponse):
    """
    Response to ``GroupAccessDeviceFileGetListRequest()``.

    Contains a table of device files managed by the Device Management System on a per-
    device profile basis.  The column headings are: "File Type", "File Format", "Is
    Authenticated".

    Replaced By: ``GroupAccessDeviceFileGetListResponse14sp8()``

    Attributes:
        device_files_table: deviceFilesTable
    """

    _ELEMENTS = (
        E(
            "device_files_table", "deviceFilesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_files_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAccessDeviceFileGetListResponse14sp8(OCIResponse):
    """
    Response to ``GroupAccessDeviceFileGetListRequest14sp8()``.

    Contains a table of device files managed by the Device Management System on a per-
    device profile basis.  The column headings are: "File Format", "Is Authenticated",
    "Access URL", "Repository URL", "Template URL", "Extended Capture". The following
    columns are only used in AS data mode: "Extended Capture"

    Attributes:
        device_files_table: deviceFilesTable
    """

    _ELEMENTS = (
        E(
            "device_files_table", "deviceFilesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_files_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAccessDeviceFileGetResponse(OCIResponse):
    """
    Response to ``GroupAccessDeviceFileGetRequest()``.

    Replaced By: ``GroupAccessDeviceFileGetResponse14sp8()``

    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)


class GroupAccessDeviceFileGetResponse14sp8(OCIResponse):
    """
    Response to ``GroupAccessDeviceFileGetRequest14sp8()``.

    Replaced by: ``GroupAccessDeviceFileGetResponse16sp1()``

    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)


class GroupAccessDeviceFileGetResponse16sp1(OCIResponse):
    """
    Response to ``GroupAccessDeviceFileGetRequest16sp1()``.


    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)


class GroupAccessDeviceFileGetResponse20(OCIResponse):
    """
    Response to ``GroupAccessDeviceFileGetRequest20()``.


    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
        extended_capture_enabled: extendedCaptureEnabled
        extended_capture_url: extendedCaptureURL
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
        E("extended_capture_enabled", "extendedCaptureEnabled", bool),
        E("extended_capture_url", "extendedCaptureURL", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)
    extended_capture_enabled: bool = Field(type=bool, required=False, mutable=False)
    extended_capture_url: str = Field(type=str, required=False, mutable=False)


class GroupAccessDeviceGetAvailableDetailListResponse14(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetAvailableDetailListRequest14()``.


    Attributes:
        available_access_device: availableAccessDevice
    """

    _ELEMENTS = (
        E(
            "available_access_device", "availableAccessDevice", str, is_complex=True,
            is_array=True,
        ),  # unknown
    )

    available_access_device: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupAccessDeviceGetAvailableDetailListResponse19(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetAvailableDetailListRequest19()``.


    Attributes:
        available_access_device: availableAccessDevice
    """

    _ELEMENTS = (
        E(
            "available_access_device", "availableAccessDevice", str, is_complex=True,
            is_array=True,
        ),  # unknown
    )

    available_access_device: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupAccessDeviceGetEnhancedConfigurationTypeListResponse(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetEnhancedConfigurationTypeListRequest()``.


    Attributes:
        device_type: deviceType
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_array=True),
    )

    device_type: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupAccessDeviceGetEnhancedConfigurationTypeResponse14(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetEnhancedConfigurationTypeRequest14()``.


    Attributes:
        supports_enhanced_configuration: supportsEnhancedConfiguration
        supports_reset: supportsReset
        configuration_type: configurationType
        configuration_file_name: configurationFileName
    """

    _ELEMENTS = (
        E(
            "supports_enhanced_configuration", "supportsEnhancedConfiguration", bool,
            is_required=True,
        ),
        E("supports_reset", "supportsReset", bool, is_required=True),
        E("configuration_type", "configurationType", str),
        E("configuration_file_name", "configurationFileName", str),
    )

    supports_enhanced_configuration: bool = Field(type=bool, required=True, mutable=False)
    supports_reset: bool = Field(type=bool, required=True, mutable=False)
    configuration_type: str = Field(type=str, required=False, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)


class GroupAccessDeviceGetListResponse(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetListRequest()``.

    Contains a table of devices configured in the group.  The column headings are: "Device
    Name", "Device Type", "Available Ports", "Net Address", "MAC Address", "Status" and
    "Version".

    Attributes:
        access_device_table: accessDeviceTable
    """

    _ELEMENTS = (
        E(
            "access_device_table", "accessDeviceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    access_device_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAccessDeviceGetUserListResponse(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetUserListRequest()``.

    The column headings for the deviceUserTable are: "Line/Port", "Last Name", "First
    Name", "Phone Number", "User Id", "User Type", "Endpoint Type", "Order", "Primary
    Line/Port", "Extension", "Department", "Email Address", "Private Identity". In IMS
    mode, the table will contain a row for each TEL-URI in the Phone Number column.  In
    Standalone mode, rows for the alternate numbers are not included.  The User Type
    column contains one of the enumerated UserType values.  The Endpoint Type column
    contains one of the enumerated EndpointType values.  The Private Identity column is
    empty is AS mode.

    Attributes:
        device_user_table: deviceUserTable
    """

    _ELEMENTS = (
        E(
            "device_user_table", "deviceUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAccountAuthorizationCodesGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupAccountAuthorizationCodesGetAvailableUserListRequest()``.

    The column headings are: "User Id", "Last Name", "First Name", "Hiragana Last Name"
    and "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAccountAuthorizationCodesGetResponse(OCIResponse):
    """
    Response to ``GroupAccountAuthorizationCodesGetRequest()``.

    The tables has the following column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Phone Number", "Extension",
    "Department", "Email Address".

    Attributes:
        type: type
        number_of_digits: numberOfDigits
        allow_local_and_toll_free_calls: allowLocalAndTollFreeCalls
        mandatory_usage_user_table: mandatoryUsageUserTable
        optional_usage_user_table: optionalUsageUserTable
    """

    _ELEMENTS = (
        E("type", "type", str, is_required=True),
        E("number_of_digits", "numberOfDigits", int, is_required=True),
        E(
            "allow_local_and_toll_free_calls", "allowLocalAndTollFreeCalls", bool,
            is_required=True,
        ),
        E(
            "mandatory_usage_user_table", "mandatoryUsageUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "optional_usage_user_table", "optionalUsageUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    type: str = Field(type=str, required=True, mutable=False)
    number_of_digits: int = Field(type=int, required=True, mutable=False)
    allow_local_and_toll_free_calls: bool = Field(type=bool, required=True, mutable=False)
    mandatory_usage_user_table: "list" = Field(type=list, required=True, mutable=False)
    optional_usage_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAdminGetListResponse(OCIResponse):
    """
    Response to ``GroupAdminGetListRequest()``.

    Contains a 5 column table with column headings "Administrator ID", "Last Name", "First
    Name", "Department", "Language".

    Attributes:
        group_admin_table: groupAdminTable
    """

    _ELEMENTS = (
        E(
            "group_admin_table", "groupAdminTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    group_admin_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAdminGetPolicyResponse(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest()``.

    Contains the policy settings for the group administrator.

    Attributes:
        profile_access: profileAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        enhanced_service_instance_access: enhancedServiceInstanceAccess
        feature_access_code_access: featureAccessCodeAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        service_access: serviceAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "enhanced_service_instance_access", "enhancedServiceInstanceAccess", str,
            is_required=True,
        ),
        E("feature_access_code_access", "featureAccessCodeAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    enhanced_service_instance_access: str = Field(type=str, required=True, mutable=False)
    feature_access_code_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)


class GroupAdminGetPolicyResponse14sp1(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest14sp1()``.

    Contains the policy settings for the group administrator.

    Attributes:
        profile_access: profileAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        enhanced_service_instance_access: enhancedServiceInstanceAccess
        feature_access_code_access: featureAccessCodeAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        service_access: serviceAccess
        trunk_group_access: trunkGroupAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "enhanced_service_instance_access", "enhancedServiceInstanceAccess", str,
            is_required=True,
        ),
        E("feature_access_code_access", "featureAccessCodeAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("trunk_group_access", "trunkGroupAccess", str, is_required=True),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    enhanced_service_instance_access: str = Field(type=str, required=True, mutable=False)
    feature_access_code_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    trunk_group_access: str = Field(type=str, required=True, mutable=False)


class GroupAdminGetPolicyResponse16sp1(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest16sp1()``.

    Contains the policy settings for the group administrator.  Replaced by:
    ``GroupAdminGetPolicyRequest17()``

    Attributes:
        profile_access: profileAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        enhanced_service_instance_access: enhancedServiceInstanceAccess
        feature_access_code_access: featureAccessCodeAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        service_access: serviceAccess
        trunk_group_access: trunkGroupAccess
        session_admission_control_access: sessionAdmissionControlAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "enhanced_service_instance_access", "enhancedServiceInstanceAccess", str,
            is_required=True,
        ),
        E("feature_access_code_access", "featureAccessCodeAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("trunk_group_access", "trunkGroupAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    enhanced_service_instance_access: str = Field(type=str, required=True, mutable=False)
    feature_access_code_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    trunk_group_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)


class GroupAdminGetPolicyResponse16sp2(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest16sp2()``.

    Contains the policy settings for the group administrator.

    Attributes:
        profile_access: profileAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        enhanced_service_instance_access: enhancedServiceInstanceAccess
        feature_access_code_access: featureAccessCodeAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        trunk_group_access: trunkGroupAccess
        session_admission_control_access: sessionAdmissionControlAccess
        dialable_caller_id_access: dialableCallerIDAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "enhanced_service_instance_access", "enhancedServiceInstanceAccess", str,
            is_required=True,
        ),
        E("feature_access_code_access", "featureAccessCodeAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("trunk_group_access", "trunkGroupAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("dialable_caller_id_access", "dialableCallerIDAccess", str, is_required=True),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    enhanced_service_instance_access: str = Field(type=str, required=True, mutable=False)
    feature_access_code_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    trunk_group_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)


class GroupAdminGetPolicyResponse17(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest17()``.

    Contains the policy settings for the group administrator.

    Attributes:
        profile_access: profileAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        enhanced_service_instance_access: enhancedServiceInstanceAccess
        feature_access_code_access: featureAccessCodeAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        trunk_group_access: trunkGroupAccess
        session_admission_control_access: sessionAdmissionControlAccess
        office_zone_access: officeZoneAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "enhanced_service_instance_access", "enhancedServiceInstanceAccess", str,
            is_required=True,
        ),
        E("feature_access_code_access", "featureAccessCodeAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("trunk_group_access", "trunkGroupAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    enhanced_service_instance_access: str = Field(type=str, required=True, mutable=False)
    feature_access_code_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    trunk_group_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)


class GroupAdminGetPolicyResponse17sp3(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest17sp3()``.

    Contains the policy settings for the group administrator.  The following elements are
    only used in AS data mode: dialableCallerIDAccess

    Attributes:
        profile_access: profileAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        enhanced_service_instance_access: enhancedServiceInstanceAccess
        feature_access_code_access: featureAccessCodeAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        trunk_group_access: trunkGroupAccess
        session_admission_control_access: sessionAdmissionControlAccess
        office_zone_access: officeZoneAccess
        dialable_caller_id_access: dialableCallerIDAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "enhanced_service_instance_access", "enhancedServiceInstanceAccess", str,
            is_required=True,
        ),
        E("feature_access_code_access", "featureAccessCodeAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("trunk_group_access", "trunkGroupAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
        E("dialable_caller_id_access", "dialableCallerIDAccess", str, is_required=True),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    enhanced_service_instance_access: str = Field(type=str, required=True, mutable=False)
    feature_access_code_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    trunk_group_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)
    dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)


class GroupAdminGetPolicyResponse18(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest18()``.

    Contains the policy settings for the group administrator.  The following elements are
    only used in AS data mode: dialableCallerIDAccess

    Attributes:
        profile_access: profileAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        enhanced_service_instance_access: enhancedServiceInstanceAccess
        feature_access_code_access: featureAccessCodeAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        trunk_group_access: trunkGroupAccess
        session_admission_control_access: sessionAdmissionControlAccess
        office_zone_access: officeZoneAccess
        number_activation_access: numberActivationAccess
        dialable_caller_id_access: dialableCallerIDAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "enhanced_service_instance_access", "enhancedServiceInstanceAccess", str,
            is_required=True,
        ),
        E("feature_access_code_access", "featureAccessCodeAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("trunk_group_access", "trunkGroupAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
        E("number_activation_access", "numberActivationAccess", str, is_required=True),
        E("dialable_caller_id_access", "dialableCallerIDAccess", str, is_required=True),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    enhanced_service_instance_access: str = Field(type=str, required=True, mutable=False)
    feature_access_code_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    trunk_group_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)
    number_activation_access: str = Field(type=str, required=True, mutable=False)
    dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)


class GroupAdminGetPolicyResponse19sp1(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest19sp1()``.

    Contains the policy settings for the group administrator.  The following elements are
    only used in AS data mode: dialableCallerIDAccess
    communicationBarringUserProfileAccess (This element will not be returned in the
    response for Service Provider group administrators)

    Attributes:
        profile_access: profileAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        enhanced_service_instance_access: enhancedServiceInstanceAccess
        feature_access_code_access: featureAccessCodeAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        trunk_group_access: trunkGroupAccess
        session_admission_control_access: sessionAdmissionControlAccess
        office_zone_access: officeZoneAccess
        number_activation_access: numberActivationAccess
        dialable_caller_id_access: dialableCallerIDAccess
        communication_barring_user_profile_access: communicationBarringUserProfileAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "enhanced_service_instance_access", "enhancedServiceInstanceAccess", str,
            is_required=True,
        ),
        E("feature_access_code_access", "featureAccessCodeAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("trunk_group_access", "trunkGroupAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
        E("number_activation_access", "numberActivationAccess", str, is_required=True),
        E("dialable_caller_id_access", "dialableCallerIDAccess", str, is_required=True),
        E(
            "communication_barring_user_profile_access",
            "communicationBarringUserProfileAccess", str,
        ),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    enhanced_service_instance_access: str = Field(type=str, required=True, mutable=False)
    feature_access_code_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    trunk_group_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)
    number_activation_access: str = Field(type=str, required=True, mutable=False)
    dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)
    communication_barring_user_profile_access: str = Field(
        type=str, required=False, mutable=False,
    )


class GroupAdminGetPolicyResponse20(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest20()``.

    Contains the policy settings for the group administrator.  The following elements are
    only used in AS data mode: dialableCallerIDAccess verifyTranslationAndroutingAccess
    communicationBarringUserProfileAccess (This element is only returned for groups in an
    enterprise)

    Attributes:
        profile_access: profileAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        enhanced_service_instance_access: enhancedServiceInstanceAccess
        feature_access_code_access: featureAccessCodeAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        trunk_group_access: trunkGroupAccess
        session_admission_control_access: sessionAdmissionControlAccess
        office_zone_access: officeZoneAccess
        number_activation_access: numberActivationAccess
        dialable_caller_id_access: dialableCallerIDAccess
        verify_translation_and_routing_access: verifyTranslationAndRoutingAccess
        communication_barring_user_profile_access: communicationBarringUserProfileAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "enhanced_service_instance_access", "enhancedServiceInstanceAccess", str,
            is_required=True,
        ),
        E("feature_access_code_access", "featureAccessCodeAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("trunk_group_access", "trunkGroupAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
        E("number_activation_access", "numberActivationAccess", str, is_required=True),
        E("dialable_caller_id_access", "dialableCallerIDAccess", str, is_required=True),
        E(
            "verify_translation_and_routing_access", "verifyTranslationAndRoutingAccess",
            str, is_required=True,
        ),
        E(
            "communication_barring_user_profile_access",
            "communicationBarringUserProfileAccess", str,
        ),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    enhanced_service_instance_access: str = Field(type=str, required=True, mutable=False)
    feature_access_code_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    trunk_group_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)
    number_activation_access: str = Field(type=str, required=True, mutable=False)
    dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)
    verify_translation_and_routing_access: str = Field(type=str, required=True, mutable=False)
    communication_barring_user_profile_access: str = Field(
        type=str, required=False, mutable=False,
    )


class GroupAdminGetResponse(OCIResponse):
    """
    Response to the ``GroupAdminGetRequest()``.

    The response contains the group administrators profile information.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        first_name: firstName
        last_name: lastName
        language: language
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("first_name", "firstName", str),
        E("last_name", "lastName", str),
        E("language", "language", str, is_required=True),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=False, mutable=False)
    last_name: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)


class GroupAdviceOfChargeGetResponse(OCIResponse):
    """
    Response to ``GroupAdviceOfChargeGetRequest()``.

    Contains a list of Advice of Charge group parameters.

    Attributes:
        use_group_level_ao_c_settings: useGroupLevelAoCSettings
        delay_between_notification_seconds: delayBetweenNotificationSeconds
    """

    _ELEMENTS = (
        E(
            "use_group_level_ao_c_settings", "useGroupLevelAoCSettings", bool,
            is_required=True,
        ),
        E(
            "delay_between_notification_seconds", "delayBetweenNotificationSeconds", int,
            is_required=True,
        ),
    )

    use_group_level_ao_c_settings: bool = Field(type=bool, required=True, mutable=False)
    delay_between_notification_seconds: int = Field(type=int, required=True, mutable=False)


class GroupAnnouncementFileGetListResponse(OCIResponse):
    """
    Response to ``GroupAnnouncementFileGetAvailableListRequest()``.

    When requested, the response contains a table with columns: "Name", "Media Type" and
    "File Size". The "Name" column contains the name of the announcement file.  The "Media
    Type" column contains the media type of the announcement File with the possible
    values: WMA - Windows Media Audio file WAV - A WAV file 3GP - A 3GP file MOV - A MOV
    file using a H.263 or H.264 codec.  The "File Size" column contains the file size (KB)
    of the announcement file.

    The response also contains the current total file size (KB) for the group across all
    media types and the maximum total file size (MB) allowed for the group.

    Attributes:
        announcement_table: announcementTable
        total_file_size: totalFileSize
        max_file_size: maxFileSize
    """

    _ELEMENTS = (
        E("announcement_table", "announcementTable", list, is_complex=True, is_table=True),
        E("total_file_size", "totalFileSize", int, is_required=True),
        E("max_file_size", "maxFileSize", int, is_required=True),
    )

    announcement_table: "list" = Field(type=list, required=False, mutable=False)
    total_file_size: int = Field(type=int, required=True, mutable=False)
    max_file_size: int = Field(type=int, required=True, mutable=False)


class GroupAnnouncementFileGetResponse(OCIResponse):
    """
    Response to ``GroupAnnouncementFileGetRequest()``.

    The response contains the file size, uploaded timestamp, description and usage for an
    announcement file in the user announcement repository.  The usage table has columns
    "Service Name", and "Instance Name". The Service Name values correspond to string
    values of the GroupService and UserService data types.  With the exception of the
    string "Voice Portal" which is returned when the announcement is being used by Voice
    Portal Personalized Name.

    Attributes:
        description: description
        filesize: filesize
        last_uploaded: lastUploaded
        usage_table: usageTable
    """

    _ELEMENTS = (
        E("description", "description", str, is_required=True),
        E("filesize", "filesize", int, is_required=True),
        E("last_uploaded", "lastUploaded", str, is_required=True),
        E(
            "usage_table", "usageTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    description: str = Field(type=str, required=True, mutable=False)
    filesize: int = Field(type=int, required=True, mutable=False)
    last_uploaded: str = Field(type=str, required=True, mutable=False)
    usage_table: "list" = Field(type=list, required=True, mutable=False)


class GroupApplicationServerSetGetResponse(OCIResponse):
    """
    Response to the ``GroupApplicationServerSetGetRequest()``.

    The response contains the group's Application Server set information.

    Attributes:
        application_server_set_name: applicationServerSetName
    """

    _ELEMENTS = (
        E("application_server_set_name", "applicationServerSetName", str),
    )

    application_server_set_name: str = Field(type=str, required=False, mutable=False)


class GroupAutoAttendantGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupAutoAttendantGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Video", "Phone
    Number", "Extension", "Department", "Is Active", "Type". The column values for "Video"
    and "Is Active" can either be true, or false.  The column values for "Type" can either
    be Basic or Standard.  In HSS Mode the value for the "Type" column will always be
    populated with Basic.

    Attributes:
        auto_attendant_table: autoAttendantTable
    """

    _ELEMENTS = (
        E(
            "auto_attendant_table", "autoAttendantTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    auto_attendant_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAutoAttendantSubmenuGetListResponse(OCIResponse):
    """
    Response to the ``GroupAutoAttendantSubmenuGetListRequest()``.

    Contains a table with column headings: "Submenu Id" "Is Used". The column values for
    "Is Used" can either be true, or false.

    Attributes:
        submenu_table: submenuTable
    """

    _ELEMENTS = (
        E(
            "submenu_table", "submenuTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    submenu_table: "list" = Field(type=list, required=True, mutable=False)


class GroupAutoAttendantSubmenuGetUsageListResponse(OCIResponse):
    """
    Response to the ``GroupAutoAttendantSubmenuGetUsageListRequest()``.

    Contains a table with column headings: "Type" and "Submenu ID". The "Type" Column will
    contain one of the following: Business Hours Menu, After Hours Menu, Holiday Menu or
    Submenu.  The "Submenu ID" Column will be left blank when the "Type" Column contains
    one of the base menu types (Business Hours Menu, After Hours Menu or Holiday Menu),
    and will contain the Submenu ID when the "Type" Column contains type Submenu.

    Attributes:
        submenu_table: submenuTable
    """

    _ELEMENTS = (
        E(
            "submenu_table", "submenuTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    submenu_table: "list" = Field(type=list, required=True, mutable=False)


class GroupBroadWorksAnywhereGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupBroadWorksAnywhereGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Phone Number",
    "Extension", "Department", "Is Active". The column value for "Is Active" can either be
    true, or false.

    Attributes:
        broad_works_anywhere_table: broadWorksAnywhereTable
    """

    _ELEMENTS = (
        E(
            "broad_works_anywhere_table", "broadWorksAnywhereTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    broad_works_anywhere_table: "list" = Field(type=list, required=True, mutable=False)


class GroupBroadWorksMobileManagerGetDomainListResponse(OCIResponse):
    """
    Response to the ``GroupBroadWorksMobileManagerGetDomainListRequest()``.

    Contains the list of domains.

    Attributes:
        domain_name: domainName
    """

    _ELEMENTS = (
        E("domain_name", "domainName", str, is_array=True),
    )

    domain_name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupBroadWorksMobileManagerGetHomeZoneListResponse(OCIResponse):
    """
    Response to the ``GroupBroadWorksMobileManagerGetHomeZoneListRequest()``.

    Contains a table with column headings: "Home Zone Id", "Domain Name", "Mobile Country
    Code", "Mobile Network Code", "Local Area Code" and "Cell Identity".

    Attributes:
        home_zones_table: homeZonesTable
    """

    _ELEMENTS = (
        E(
            "home_zones_table", "homeZonesTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    home_zones_table: "list" = Field(type=list, required=True, mutable=False)


class GroupBroadWorksMobileManagerGetHomeZoneResponse(OCIResponse):
    """
    Response to the ``GroupBroadWorksMobileManagerGetHomeZoneRequest()``

    Attributes:
        home_zone_domain_name: homeZoneDomainName
        mobile_country_code: mobileCountryCode
        mobile_network_code: mobileNetworkCode
        location_area_code: locationAreaCode
        cell_identity: cellIdentity
    """

    _ELEMENTS = (
        E("home_zone_domain_name", "homeZoneDomainName", str, is_required=True),
        E("mobile_country_code", "mobileCountryCode", str, is_required=True),
        E("mobile_network_code", "mobileNetworkCode", str, is_required=True),
        E("location_area_code", "locationAreaCode", str, is_required=True),
        E("cell_identity", "cellIdentity", str, is_required=True),
    )

    home_zone_domain_name: str = Field(type=str, required=True, mutable=False)
    mobile_country_code: str = Field(type=str, required=True, mutable=False)
    mobile_network_code: str = Field(type=str, required=True, mutable=False)
    location_area_code: str = Field(type=str, required=True, mutable=False)
    cell_identity: str = Field(type=str, required=True, mutable=False)


class GroupBroadWorksMobileManagerGetResponse(OCIResponse):
    """
    Response to the ``GroupBroadWorksMobileManagerGetRequest()``

    Attributes:
        mobile_manager_id: mobileManagerId
        name: name
        is_active: isActive
        local_to_carrier: localToCarrier
        deactivation_reason: deactivationReason
        max_tx_per_second_enabled: maxTxPerSecondEnabled
        max_tx_per_second: maxTxPerSecond
        tldn_enabled: tldnEnabled
        generic_number_enabled: genericNumberEnabled
        mobile_state_check_enabled: mobileStateCheckEnabled
        location_based_services_enabled: locationBasedServicesEnabled
    """

    _ELEMENTS = (
        E("mobile_manager_id", "mobileManagerId", str, is_required=True),
        E("name", "name", str, is_required=True),
        E("is_active", "isActive", bool, is_required=True),
        E("local_to_carrier", "localToCarrier", bool, is_required=True),
        E("deactivation_reason", "deactivationReason", str),
        E("max_tx_per_second_enabled", "maxTxPerSecondEnabled", bool, is_required=True),
        E("max_tx_per_second", "maxTxPerSecond", int),
        E("tldn_enabled", "tldnEnabled", bool, is_required=True),
        E("generic_number_enabled", "genericNumberEnabled", bool, is_required=True),
        E("mobile_state_check_enabled", "mobileStateCheckEnabled", bool, is_required=True),
        E(
            "location_based_services_enabled", "locationBasedServicesEnabled", bool,
            is_required=True,
        ),
    )

    mobile_manager_id: str = Field(type=str, required=True, mutable=False)
    name: str = Field(type=str, required=True, mutable=False)
    is_active: bool = Field(type=bool, required=True, mutable=False)
    local_to_carrier: bool = Field(type=bool, required=True, mutable=False)
    deactivation_reason: str = Field(type=str, required=False, mutable=False)
    max_tx_per_second_enabled: bool = Field(type=bool, required=True, mutable=False)
    max_tx_per_second: int = Field(type=int, required=False, mutable=False)
    tldn_enabled: bool = Field(type=bool, required=True, mutable=False)
    generic_number_enabled: bool = Field(type=bool, required=True, mutable=False)
    mobile_state_check_enabled: bool = Field(type=bool, required=True, mutable=False)
    location_based_services_enabled: bool = Field(type=bool, required=True, mutable=False)


class GroupBroadWorksMobilityGetResponse(OCIResponse):
    """
    The response to a ``GroupBroadWorksMobilityGetRequest()``.


    Attributes:
        use_setting_level: useSettingLevel
        enable_location_services: enableLocationServices
        enable_msrn_lookup: enableMSRNLookup
        enable_mobile_state_checking: enableMobileStateChecking
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
    """

    _ELEMENTS = (
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("enable_location_services", "enableLocationServices", bool, is_required=True),
        E("enable_msrn_lookup", "enableMSRNLookup", bool, is_required=True),
        E(
            "enable_mobile_state_checking", "enableMobileStateChecking", bool,
            is_required=True,
        ),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
    )

    use_setting_level: str = Field(type=str, required=True, mutable=False)
    enable_location_services: bool = Field(type=bool, required=True, mutable=False)
    enable_msrn_lookup: bool = Field(type=bool, required=True, mutable=False)
    enable_mobile_state_checking: bool = Field(type=bool, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)


class GroupBroadWorksMobilityGetResponse19sp1(OCIResponse):
    """
    The response to a ``GroupBroadWorksMobilityGetRequest19sp1()``.


    Attributes:
        use_setting_level: useSettingLevel
        enable_location_services: enableLocationServices
        enable_msrn_lookup: enableMSRNLookup
        enable_mobile_state_checking: enableMobileStateChecking
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
        enable_announcement_suppression: enableAnnouncementSuppression
    """

    _ELEMENTS = (
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("enable_location_services", "enableLocationServices", bool, is_required=True),
        E("enable_msrn_lookup", "enableMSRNLookup", bool, is_required=True),
        E(
            "enable_mobile_state_checking", "enableMobileStateChecking", bool,
            is_required=True,
        ),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
        E(
            "enable_announcement_suppression", "enableAnnouncementSuppression", bool,
            is_required=True,
        ),
    )

    use_setting_level: str = Field(type=str, required=True, mutable=False)
    enable_location_services: bool = Field(type=bool, required=True, mutable=False)
    enable_msrn_lookup: bool = Field(type=bool, required=True, mutable=False)
    enable_mobile_state_checking: bool = Field(type=bool, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)
    enable_announcement_suppression: bool = Field(type=bool, required=True, mutable=False)


class GroupBroadWorksMobilityMobileSubscriberDirectoryNumberGetAssignmentListResponse(OCIResponse):
    """
    Response to the
    ``GroupBroadWorksMobilityMobileSubscriberDirectoryNumberGetAssignmentListRequest()``.

    The response contains a table with columns: "Mobile Number", "User Id", "Last Name",
    "First Name","Phone Number", "Extension", "Department",. The "Mobile Number" column
    contains a single DN. The "User Id", "Last Name" and "First Name" columns contains the
    corresponding attributes of the user possessing the DN(s). The "Phone Number" column
    contains a single DN. The "Department" column contains the department of the user if
    it is part of a department.

    Attributes:
        mobile_subscriber_directory_number_table: mobileSubscriberDirectoryNumberTable
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_number_table",
            "mobileSubscriberDirectoryNumberTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    mobile_subscriber_directory_number_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class GroupBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListResponse(OCIResponse):
    """
    Response to
    ``GroupBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListRequest()``.

    Contains a list of available Mobile Subscriber Directory Numbers not yet assigned to
    any user.

    Attributes:
        mobile_subscriber_directory_number: mobileSubscriberDirectoryNumber
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_number", "mobileSubscriberDirectoryNumber", str,
            is_array=True,
        ),
    )

    mobile_subscriber_directory_number: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupCallCapacityManagementGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupCallCapacityManagementGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCapacityManagementGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupCallCapacityManagementGetInstanceListRequest()``.

    Contains a table with column headings: "Name", "Is Default", "Maximum Calls", "Maximum
    Incoming Calls", "Maximum Outgoing Calls".

    Attributes:
        call_capacity_group_table: callCapacityGroupTable
    """

    _ELEMENTS = (
        E(
            "call_capacity_group_table", "callCapacityGroupTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    call_capacity_group_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCapacityManagementGetInstanceResponse(OCIResponse):
    """
    Response to the ``GroupCallCapacityManagementGetInstanceRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        name: name
        max_active_calls_allowed: maxActiveCallsAllowed
        max_incoming_active_calls_allowed: maxIncomingActiveCallsAllowed
        max_outgoing_active_calls_allowed: maxOutgoingActiveCallsAllowed
        default_group_for_new_users: defaultGroupForNewUsers
        user_table: userTable
    """

    _ELEMENTS = (
        E("name", "name", str, is_required=True),
        E("max_active_calls_allowed", "maxActiveCallsAllowed", int, is_required=True),
        E("max_incoming_active_calls_allowed", "maxIncomingActiveCallsAllowed", int),
        E("max_outgoing_active_calls_allowed", "maxOutgoingActiveCallsAllowed", int),
        E("default_group_for_new_users", "defaultGroupForNewUsers", bool, is_required=True),
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    name: str = Field(type=str, required=True, mutable=False)
    max_active_calls_allowed: int = Field(type=int, required=True, mutable=False)
    max_incoming_active_calls_allowed: int = Field(type=int, required=False, mutable=False)
    max_outgoing_active_calls_allowed: int = Field(type=int, required=False, mutable=False)
    default_group_for_new_users: bool = Field(type=bool, required=True, mutable=False)
    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterAgentThresholdDefaultProfileGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterAgentThresholdDefaultProfileGetRequest()``.

    The agent table contains the agents assigned to the profile and has column headings:
    "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana First Name",
    "Phone Number", "Extension", "Department", "Email Address";

    Attributes:
        profile_name: profileName
        profile_description: profileDescription
        threshold_current_call_state_idle_time_yellow:
            thresholdCurrentCallStateIdleTimeYellow
        threshold_current_call_state_idle_time_red: thresholdCurrentCallStateIdleTimeRed
        threshold_current_call_state_on_call_time_yellow:
            thresholdCurrentCallStateOnCallTimeYellow
        threshold_current_call_state_on_call_time_red:
            thresholdCurrentCallStateOnCallTimeRed
        threshold_current_agent_state_unavailable_time_yellow:
            thresholdCurrentAgentStateUnavailableTimeYellow
        threshold_current_agent_state_unavailable_time_red:
            thresholdCurrentAgentStateUnavailableTimeRed
        threshold_average_busy_in_time_yellow: thresholdAverageBusyInTimeYellow
        threshold_average_busy_in_time_red: thresholdAverageBusyInTimeRed
        threshold_average_busy_out_time_yellow: thresholdAverageBusyOutTimeYellow
        threshold_average_busy_out_time_red: thresholdAverageBusyOutTimeRed
        threshold_average_wrap_up_time_yellow: thresholdAverageWrapUpTimeYellow
        threshold_average_wrap_up_time_red: thresholdAverageWrapUpTimeRed
        enable_notification_email: enableNotificationEmail
        notification_email_address: notificationEmailAddress
        agent_table: agentTable
    """

    _ELEMENTS = (
        E("profile_name", "profileName", str, is_required=True),
        E("profile_description", "profileDescription", str),
        E(
            "threshold_current_call_state_idle_time_yellow",
            "thresholdCurrentCallStateIdleTimeYellow", int,
        ),
        E(
            "threshold_current_call_state_idle_time_red",
            "thresholdCurrentCallStateIdleTimeRed", int,
        ),
        E(
            "threshold_current_call_state_on_call_time_yellow",
            "thresholdCurrentCallStateOnCallTimeYellow", int,
        ),
        E(
            "threshold_current_call_state_on_call_time_red",
            "thresholdCurrentCallStateOnCallTimeRed", int,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_yellow",
            "thresholdCurrentAgentStateUnavailableTimeYellow", int,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_red",
            "thresholdCurrentAgentStateUnavailableTimeRed", int,
        ),
        E("threshold_average_busy_in_time_yellow", "thresholdAverageBusyInTimeYellow", int),
        E("threshold_average_busy_in_time_red", "thresholdAverageBusyInTimeRed", int),
        E("threshold_average_busy_out_time_yellow", "thresholdAverageBusyOutTimeYellow", int),
        E("threshold_average_busy_out_time_red", "thresholdAverageBusyOutTimeRed", int),
        E("threshold_average_wrap_up_time_yellow", "thresholdAverageWrapUpTimeYellow", int),
        E("threshold_average_wrap_up_time_red", "thresholdAverageWrapUpTimeRed", int),
        E("enable_notification_email", "enableNotificationEmail", bool, is_required=True),
        E("notification_email_address", "notificationEmailAddress", str),
        E("agent_table", "agentTable", list, is_complex=True, is_table=True),
    )

    profile_name: str = Field(type=str, required=True, mutable=False)
    profile_description: str = Field(type=str, required=False, mutable=False)
    threshold_current_call_state_idle_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_idle_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_on_call_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_on_call_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_agent_state_unavailable_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_agent_state_unavailable_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_in_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_in_time_red: int = Field(type=int, required=False, mutable=False)
    threshold_average_busy_out_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_out_time_red: int = Field(type=int, required=False, mutable=False)
    threshold_average_wrap_up_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_wrap_up_time_red: int = Field(type=int, required=False, mutable=False)
    enable_notification_email: bool = Field(type=bool, required=True, mutable=False)
    notification_email_address: str = Field(type=str, required=False, mutable=False)
    agent_table: "list" = Field(type=list, required=False, mutable=False)


class GroupCallCenterAgentThresholdProfileGetAvailableAgentListResponse(OCIResponse):
    """
    Response to the
    ``GroupCallCenterAgentThresholdProfileGetAvailableAgentListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address", "Agent Threshold Profile";

    Attributes:
        agent_table: agentTable
    """

    _ELEMENTS = (
        E(
            "agent_table", "agentTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    agent_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterAgentThresholdProfileGetListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterAgentThresholdProfileGetListRequest()``.

    Contains a table with all the Call Center Agent Threshold Profiles in the Group.  The
    column headings are: "Default", "Name", "Description".

    Attributes:
        profiles_table: profilesTable
    """

    _ELEMENTS = (
        E(
            "profiles_table", "profilesTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profiles_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterAgentThresholdProfileGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterAgentThresholdProfileGetRequest()``.

    The agentTable contains the agents assigned to the profile and has the column
    headings: "User Id", "Group Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address";

    Attributes:
        profile_description: profileDescription
        threshold_current_call_state_idle_time_yellow:
            thresholdCurrentCallStateIdleTimeYellow
        threshold_current_call_state_idle_time_red: thresholdCurrentCallStateIdleTimeRed
        threshold_current_call_state_on_call_time_yellow:
            thresholdCurrentCallStateOnCallTimeYellow
        threshold_current_call_state_on_call_time_red:
            thresholdCurrentCallStateOnCallTimeRed
        threshold_current_agent_state_unavailable_time_yellow:
            thresholdCurrentAgentStateUnavailableTimeYellow
        threshold_current_agent_state_unavailable_time_red:
            thresholdCurrentAgentStateUnavailableTimeRed
        threshold_average_busy_in_time_yellow: thresholdAverageBusyInTimeYellow
        threshold_average_busy_in_time_red: thresholdAverageBusyInTimeRed
        threshold_average_busy_out_time_yellow: thresholdAverageBusyOutTimeYellow
        threshold_average_busy_out_time_red: thresholdAverageBusyOutTimeRed
        threshold_average_wrap_up_time_yellow: thresholdAverageWrapUpTimeYellow
        threshold_average_wrap_up_time_red: thresholdAverageWrapUpTimeRed
        enable_notification_email: enableNotificationEmail
        notification_email_address: notificationEmailAddress
        agent_table: agentTable
    """

    _ELEMENTS = (
        E("profile_description", "profileDescription", str),
        E(
            "threshold_current_call_state_idle_time_yellow",
            "thresholdCurrentCallStateIdleTimeYellow", int,
        ),
        E(
            "threshold_current_call_state_idle_time_red",
            "thresholdCurrentCallStateIdleTimeRed", int,
        ),
        E(
            "threshold_current_call_state_on_call_time_yellow",
            "thresholdCurrentCallStateOnCallTimeYellow", int,
        ),
        E(
            "threshold_current_call_state_on_call_time_red",
            "thresholdCurrentCallStateOnCallTimeRed", int,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_yellow",
            "thresholdCurrentAgentStateUnavailableTimeYellow", int,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_red",
            "thresholdCurrentAgentStateUnavailableTimeRed", int,
        ),
        E("threshold_average_busy_in_time_yellow", "thresholdAverageBusyInTimeYellow", int),
        E("threshold_average_busy_in_time_red", "thresholdAverageBusyInTimeRed", int),
        E("threshold_average_busy_out_time_yellow", "thresholdAverageBusyOutTimeYellow", int),
        E("threshold_average_busy_out_time_red", "thresholdAverageBusyOutTimeRed", int),
        E("threshold_average_wrap_up_time_yellow", "thresholdAverageWrapUpTimeYellow", int),
        E("threshold_average_wrap_up_time_red", "thresholdAverageWrapUpTimeRed", int),
        E("enable_notification_email", "enableNotificationEmail", bool, is_required=True),
        E("notification_email_address", "notificationEmailAddress", str),
        E(
            "agent_table", "agentTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_description: str = Field(type=str, required=False, mutable=False)
    threshold_current_call_state_idle_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_idle_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_on_call_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_call_state_on_call_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_agent_state_unavailable_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_agent_state_unavailable_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_in_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_in_time_red: int = Field(type=int, required=False, mutable=False)
    threshold_average_busy_out_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_busy_out_time_red: int = Field(type=int, required=False, mutable=False)
    threshold_average_wrap_up_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_wrap_up_time_red: int = Field(type=int, required=False, mutable=False)
    enable_notification_email: bool = Field(type=bool, required=True, mutable=False)
    notification_email_address: str = Field(type=str, required=False, mutable=False)
    agent_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterAgentUnavailableCodeGetListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterAgentUnavailableCodeGetListRequest()``.

    Contains a table with column headings: "Is Active", "Code", "Description".

    Attributes:
        unavailable_codes_table: unavailableCodesTable
    """

    _ELEMENTS = (
        E(
            "unavailable_codes_table", "unavailableCodesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    unavailable_codes_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterAgentUnavailableCodeGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterAgentUnavailableCodeGetRequest()``

    Attributes:
        is_active: isActive
        description: description
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("description", "description", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterAgentUnavailableCodeSettingsGetResponse(OCIResponse):
    """
    Response to ``GroupCallCenterAgentUnavailableCodeSettingsGetRequest()``.

    Replaced by ``GroupCallCenterAgentUnavailableCodeSettingsGetResponse17sp4()``.

    Attributes:
        enable_agent_unavailable_codes: enableAgentUnavailableCodes
        default_agent_unavailable_code_on_dnd: defaultAgentUnavailableCodeOnDND
        default_agent_unavailable_code_on_personal_calls:
            defaultAgentUnavailableCodeOnPersonalCalls
        default_agent_unavailable_code_on_consecutive_bounces:
            defaultAgentUnavailableCodeOnConsecutiveBounces
        force_use_of_agent_unavailable_codes: forceUseOfAgentUnavailableCodes
        default_agent_unavailable_code: defaultAgentUnavailableCode
    """

    _ELEMENTS = (
        E(
            "enable_agent_unavailable_codes", "enableAgentUnavailableCodes", bool,
            is_required=True,
        ),
        E("default_agent_unavailable_code_on_dnd", "defaultAgentUnavailableCodeOnDND", str),
        E(
            "default_agent_unavailable_code_on_personal_calls",
            "defaultAgentUnavailableCodeOnPersonalCalls", str,
        ),
        E(
            "default_agent_unavailable_code_on_consecutive_bounces",
            "defaultAgentUnavailableCodeOnConsecutiveBounces", str,
        ),
        E(
            "force_use_of_agent_unavailable_codes", "forceUseOfAgentUnavailableCodes",
            bool, is_required=True,
        ),
        E("default_agent_unavailable_code", "defaultAgentUnavailableCode", str),
    )

    enable_agent_unavailable_codes: bool = Field(type=bool, required=True, mutable=False)
    default_agent_unavailable_code_on_dnd: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_personal_calls: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_consecutive_bounces: str = Field(
        type=str, required=False, mutable=False,
    )
    force_use_of_agent_unavailable_codes: bool = Field(
        type=bool, required=True, mutable=False,
    )
    default_agent_unavailable_code: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterAgentUnavailableCodeSettingsGetResponse17sp4(OCIResponse):
    """
    Response to ``GroupCallCenterAgentUnavailableCodeSettingsGetRequest17sp4()``.


    Attributes:
        enable_agent_unavailable_codes: enableAgentUnavailableCodes
        default_agent_unavailable_code_on_dnd: defaultAgentUnavailableCodeOnDND
        default_agent_unavailable_code_on_personal_calls:
            defaultAgentUnavailableCodeOnPersonalCalls
        default_agent_unavailable_code_on_consecutive_bounces:
            defaultAgentUnavailableCodeOnConsecutiveBounces
        default_agent_unavailable_code_on_not_reachable:
            defaultAgentUnavailableCodeOnNotReachable
        force_use_of_agent_unavailable_codes: forceUseOfAgentUnavailableCodes
        default_agent_unavailable_code: defaultAgentUnavailableCode
    """

    _ELEMENTS = (
        E(
            "enable_agent_unavailable_codes", "enableAgentUnavailableCodes", bool,
            is_required=True,
        ),
        E("default_agent_unavailable_code_on_dnd", "defaultAgentUnavailableCodeOnDND", str),
        E(
            "default_agent_unavailable_code_on_personal_calls",
            "defaultAgentUnavailableCodeOnPersonalCalls", str,
        ),
        E(
            "default_agent_unavailable_code_on_consecutive_bounces",
            "defaultAgentUnavailableCodeOnConsecutiveBounces", str,
        ),
        E(
            "default_agent_unavailable_code_on_not_reachable",
            "defaultAgentUnavailableCodeOnNotReachable", str,
        ),
        E(
            "force_use_of_agent_unavailable_codes", "forceUseOfAgentUnavailableCodes",
            bool, is_required=True,
        ),
        E("default_agent_unavailable_code", "defaultAgentUnavailableCode", str),
    )

    enable_agent_unavailable_codes: bool = Field(type=bool, required=True, mutable=False)
    default_agent_unavailable_code_on_dnd: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_personal_calls: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_consecutive_bounces: str = Field(
        type=str, required=False, mutable=False,
    )
    default_agent_unavailable_code_on_not_reachable: str = Field(
        type=str, required=False, mutable=False,
    )
    force_use_of_agent_unavailable_codes: bool = Field(
        type=bool, required=True, mutable=False,
    )
    default_agent_unavailable_code: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterBouncedCallGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterBouncedCallGetRequest()``.


    Attributes:
        is_active: isActive
        number_of_rings_before_bouncing_call: numberOfRingsBeforeBouncingCall
        enable_transfer: enableTransfer
        transfer_phone_number: transferPhoneNumber
        bounce_call_when_agent_unavailable: bounceCallWhenAgentUnavailable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "number_of_rings_before_bouncing_call", "numberOfRingsBeforeBouncingCall",
            int, is_required=True,
        ),
        E("enable_transfer", "enableTransfer", bool),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "bounce_call_when_agent_unavailable", "bounceCallWhenAgentUnavailable", bool,
            is_required=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    number_of_rings_before_bouncing_call: int = Field(type=int, required=True, mutable=False)
    enable_transfer: bool = Field(type=bool, required=False, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    bounce_call_when_agent_unavailable: bool = Field(type=bool, required=True, mutable=False)


class GroupCallCenterBouncedCallGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterBouncedCallGetRequest17()``.


    Attributes:
        is_active: isActive
        number_of_rings_before_bouncing_call: numberOfRingsBeforeBouncingCall
        enable_transfer: enableTransfer
        transfer_phone_number: transferPhoneNumber
        bounce_call_when_agent_unavailable: bounceCallWhenAgentUnavailable
        alert_call_center_call_on_hold: alertCallCenterCallOnHold
        alert_call_center_call_on_hold_seconds: alertCallCenterCallOnHoldSeconds
        bounce_call_center_call_on_hold: bounceCallCenterCallOnHold
        bounce_call_center_call_on_hold_seconds: bounceCallCenterCallOnHoldSeconds
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "number_of_rings_before_bouncing_call", "numberOfRingsBeforeBouncingCall",
            int, is_required=True,
        ),
        E("enable_transfer", "enableTransfer", bool),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("bounce_call_when_agent_unavailable", "bounceCallWhenAgentUnavailable", bool),
        E("alert_call_center_call_on_hold", "alertCallCenterCallOnHold", bool),
        E("alert_call_center_call_on_hold_seconds", "alertCallCenterCallOnHoldSeconds", int),
        E("bounce_call_center_call_on_hold", "bounceCallCenterCallOnHold", bool),
        E(
            "bounce_call_center_call_on_hold_seconds",
            "bounceCallCenterCallOnHoldSeconds", int,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    number_of_rings_before_bouncing_call: int = Field(type=int, required=True, mutable=False)
    enable_transfer: bool = Field(type=bool, required=False, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    bounce_call_when_agent_unavailable: bool = Field(type=bool, required=False, mutable=False)
    alert_call_center_call_on_hold: bool = Field(type=bool, required=False, mutable=False)
    alert_call_center_call_on_hold_seconds: int = Field(
        type=int, required=False, mutable=False,
    )
    bounce_call_center_call_on_hold: bool = Field(type=bool, required=False, mutable=False)
    bounce_call_center_call_on_hold_seconds: int = Field(
        type=int, required=False, mutable=False,
    )


class GroupCallCenterCallDispositionCodeGetListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterCallDispositionCodeGetListRequest()``.

    Contains a table with column headings: "Is Active", "Code", "Description".

    Attributes:
        disposition_codes_table: dispositionCodesTable
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table", "dispositionCodesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    disposition_codes_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterCallDispositionCodeGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterCallDispositionCodeGetRequest()``

    Attributes:
        is_active: isActive
        description: description
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("description", "description", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterCallDispositionCodeGetUsageListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterCallDispositionCodeGetUsageListRequest()``.

    The Type column contains either "Call Center" or "Route Point". Contains a table with
    column headings: "Id", "Name" and "Type".

    Attributes:
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterComfortMessageBypassGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterComfortMessageBypassGetRequest()``.


    Attributes:
        is_active: isActive
        call_waiting_age_threshold_seconds: callWaitingAgeThresholdSeconds
        play_announcement_after_ringing: playAnnouncementAfterRinging
        ring_time_before_playing_announcement_seconds:
            ringTimeBeforePlayingAnnouncementSeconds
        audio_message_selection: audioMessageSelection
        audio_file_url: audioFileUrl
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_message_selection: videoMessageSelection
        video_file_url: videoFileUrl
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "call_waiting_age_threshold_seconds", "callWaitingAgeThresholdSeconds", int,
            is_required=True,
        ),
        E(
            "play_announcement_after_ringing", "playAnnouncementAfterRinging", bool,
            is_required=True,
        ),
        E(
            "ring_time_before_playing_announcement_seconds",
            "ringTimeBeforePlayingAnnouncementSeconds", int, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E("audio_file_url", "audioFileUrl", str),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E("video_file_url", "videoFileUrl", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    call_waiting_age_threshold_seconds: int = Field(type=int, required=True, mutable=False)
    play_announcement_after_ringing: bool = Field(type=bool, required=True, mutable=False)
    ring_time_before_playing_announcement_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterCurrentAndPastAgentGetListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterCurrentAndPastAgentGetListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        agent_user_table: agentUserTable
        deleted_agent_user_table: deletedAgentUserTable
    """

    _ELEMENTS = (
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "deleted_agent_user_table", "deletedAgentUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    deleted_agent_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterCurrentAndPastCallCenterGetListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterCurrentAndPastCallCenterGetListRequest()``.


    Attributes:
        service_user_id: serviceUserId
        deleted_service_user_id: deletedServiceUserId
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_array=True),
        E("deleted_service_user_id", "deletedServiceUserId", str, is_array=True),
    )

    service_user_id: "List[str]" = Field(type=list, required=False, mutable=False)
    deleted_service_user_id: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupCallCenterCurrentAndPastDNISGetListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterCurrentAndPastDNISGetListRequest()``.


    Attributes:
        name: name
        deleted_name: deletedName
    """

    _ELEMENTS = (
        E("name", "name", str, is_array=True),
        E("deleted_name", "deletedName", str, is_array=True),
    )

    name: "List[str]" = Field(type=list, required=False, mutable=False)
    deleted_name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupCallCenterDistinctiveRingingGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterDistinctiveRingingGetRequest()``.


    Attributes:
        distinctive_ringing_call_center_calls: distinctiveRingingCallCenterCalls
        distinctive_ringing_ring_pattern_for_call_center:
            distinctiveRingingRingPatternForCallCenter
        distinctive_ringing_force_delivery_ring_pattern:
            distinctiveRingingForceDeliveryRingPattern
    """

    _ELEMENTS = (
        E(
            "distinctive_ringing_call_center_calls", "distinctiveRingingCallCenterCalls",
            bool, is_required=True,
        ),
        E(
            "distinctive_ringing_ring_pattern_for_call_center",
            "distinctiveRingingRingPatternForCallCenter", str, is_required=True,
        ),
        E(
            "distinctive_ringing_force_delivery_ring_pattern",
            "distinctiveRingingForceDeliveryRingPattern", str,
        ),
    )

    distinctive_ringing_call_center_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    distinctive_ringing_ring_pattern_for_call_center: str = Field(
        type=str, required=True, mutable=False,
    )
    distinctive_ringing_force_delivery_ring_pattern: str = Field(
        type=str, required=False, mutable=False,
    )


class GroupCallCenterEnhancedGetResponse(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedGetRequest()``.


    Attributes:
        override_agent_wrap_up_time: overrideAgentWrapUpTime
        wrap_up_seconds: wrapUpSeconds
    """

    _ELEMENTS = (
        E("override_agent_wrap_up_time", "overrideAgentWrapUpTime", bool, is_required=True),
        E("wrap_up_seconds", "wrapUpSeconds", int),
    )

    override_agent_wrap_up_time: bool = Field(type=bool, required=True, mutable=False)
    wrap_up_seconds: int = Field(type=int, required=False, mutable=False)


class GroupCallCenterEnhancedReportingBrandingGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterEnhancedReportingBrandingGetRequest()``.


    Attributes:
        branding_choice: brandingChoice
        branding_file_description: brandingFileDescription
    """

    _ELEMENTS = (
        E("branding_choice", "brandingChoice", str, is_required=True),
        E("branding_file_description", "brandingFileDescription", str),
    )

    branding_choice: str = Field(type=str, required=True, mutable=False)
    branding_file_description: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterEnhancedReportingGetAvailableReportTemplateListResponse(OCIResponse):
    """
    Response to
    ``GroupCallCenterEnhancedReportingGetAvailableReportTemplateListRequest()``.

    Contains a table with column headings: "Name", "Description" and "Level", "Is Agent
    Required", "Is Call Center Required", "Is Call Center Dnis Required","Is Real Time
    Report", "Is Sampling Period Required", "Call Completion Threshold Parameter", "Short
    Duration Threshold Parameter", "Service Level Threshold Parameter", "Service Level
    Inclusions Parameter", "Service Level Objective Threshold Parameter", "Abandoned Call
    Threshold Parameter", "Service Level Threshold Parameter Number", and "Abandoned Call
    Threshold Parameter Number". The possible values for "Level" are "System" and "Group".
    The possible values for "Is Agent Required", "Is Call Center Required", "Is Call
    Center Dnis Required", "Is Real Time Report" and "Is Sampling Period Required" are
    "true" and "false". The possible values for "Call Completion Threshold Parameter",
    "Short Duration Threshold Parameter", "Service Level Threshold Parameter", "Service
    Level Inclusions Parameter","Service Level Objective Threshold Parameter" and
    "Abandoned Call Threshold Parameter" are "Required", "Hidden" and "Does Not Apply".

    Attributes:
        report_template_table: reportTemplateTable
    """

    _ELEMENTS = (
        E(
            "report_template_table", "reportTemplateTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    report_template_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterEnhancedReportingGetResponse(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedReportingGetRequest()``.

    Replaced by ``GroupCallCenterEnhancedReportingGetResponse19()``

    Attributes:
        reporting_server: reportingServer
        web_statistic_source: webStatisticSource
    """

    _ELEMENTS = (
        E("reporting_server", "reportingServer", str, is_required=True),
        E("web_statistic_source", "webStatisticSource", str, is_required=True),
    )

    reporting_server: str = Field(type=str, required=True, mutable=False)
    web_statistic_source: str = Field(type=str, required=True, mutable=False)


class GroupCallCenterEnhancedReportingGetResponse19(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedReportingGetRequest19()``.


    Attributes:
        reporting_server: reportingServer
    """

    _ELEMENTS = (
        E("reporting_server", "reportingServer", str, is_required=True),
    )

    reporting_server: str = Field(type=str, required=True, mutable=False)


class GroupCallCenterEnhancedReportingReportTemplateGetListResponse(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedReportingReportTemplateGetListRequest()``.

    Contains a table with column headings: "Name", "Description", "Type" and "Enabled"

    Attributes:
        report_template_table: reportTemplateTable
    """

    _ELEMENTS = (
        E(
            "report_template_table", "reportTemplateTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    report_template_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterEnhancedReportingReportTemplateGetResponse(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedReportingReportTemplateGetRequest()``.


    Attributes:
        description: description
        data_template: dataTemplate
        filter_number: filterNumber
        xslt_template_description: xsltTemplateDescription
        scope: scope
        is_enabled: isEnabled
        is_realtime_report: isRealtimeReport
        call_completion_threshold_param: callCompletionThresholdParam
        short_duration_threshold_param: shortDurationThresholdParam
        service_level_threshold_param: serviceLevelThresholdParam
        service_level_inclusions_param: serviceLevelInclusionsParam
        service_level_objective_threshold_param: serviceLevelObjectiveThresholdParam
        abandoned_call_threshold_param: abandonedCallThresholdParam
        service_level_threshold_param_number: serviceLevelThresholdParamNumber
        abandoned_call_threshold_param_number: abandonedCallThresholdParamNumber
        filter_value: filterValue
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("data_template", "dataTemplate", str, is_required=True),
        E("filter_number", "filterNumber", int),
        E("xslt_template_description", "xsltTemplateDescription", str, is_required=True),
        E("scope", "scope", str, is_required=True),
        E("is_enabled", "isEnabled", bool, is_required=True),
        E("is_realtime_report", "isRealtimeReport", bool),
        E("call_completion_threshold_param", "callCompletionThresholdParam", str),
        E("short_duration_threshold_param", "shortDurationThresholdParam", str),
        E("service_level_threshold_param", "serviceLevelThresholdParam", str),
        E("service_level_inclusions_param", "serviceLevelInclusionsParam", str),
        E(
            "service_level_objective_threshold_param",
            "serviceLevelObjectiveThresholdParam", str,
        ),
        E("abandoned_call_threshold_param", "abandonedCallThresholdParam", str),
        E("service_level_threshold_param_number", "serviceLevelThresholdParamNumber", int),
        E("abandoned_call_threshold_param_number", "abandonedCallThresholdParamNumber", int),
        E("filter_value", "filterValue", str),
    )

    description: str = Field(type=str, required=False, mutable=False)
    data_template: str = Field(type=str, required=True, mutable=False)
    filter_number: int = Field(type=int, required=False, mutable=False)
    xslt_template_description: str = Field(type=str, required=True, mutable=False)
    scope: str = Field(type=str, required=True, mutable=False)
    is_enabled: bool = Field(type=bool, required=True, mutable=False)
    is_realtime_report: bool = Field(type=bool, required=False, mutable=False)
    call_completion_threshold_param: str = Field(type=str, required=False, mutable=False)
    short_duration_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_inclusions_param: str = Field(type=str, required=False, mutable=False)
    service_level_objective_threshold_param: str = Field(
        type=str, required=False, mutable=False,
    )
    abandoned_call_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_threshold_param_number: int = Field(type=int, required=False, mutable=False)
    abandoned_call_threshold_param_number: int = Field(
        type=int, required=False, mutable=False,
    )
    filter_value: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterEnhancedReportingScheduledReportGetActiveListResponse(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedReportingScheduledReportGetActiveListRequest()``
    Contains a table with column headings : "Schedule Name", "Description", "Created By",
    "Is Supervisor Report", "Report Template Name", "Report Template Level" and
    "Recurring".

    The "Created By" can be either "Administrator" or user id if created by supervisor.
    The possible values for "Recurring" are "None", "Daily", "Weekly", "Monthly" and
    "Yearly". The possible values for "Report Template Level" are "System" and "Group".

    Attributes:
        scheduled_report_table: scheduledReportTable
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table", "scheduledReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    scheduled_report_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterEnhancedReportingScheduledReportGetCompletedListResponse(OCIResponse):
    """
    Response to
    ``GroupCallCenterEnhancedReportingScheduledReportGetCompletedListRequest()`` Contains
    a table with column headings : "Schedule Name", "Description", "Created By", "Is
    Supervisor Report", "Report Template Name", "Report Template Level" and "Recurring".

    The "Created By" can be either "Administrator" or user id if created by supervisor.
    The possible values for "Recurring" are "None", "Daily", "Weekly", "Monthly" and
    "Yearly". The possible values for "Report Template Level" are "System" and "Group".

    Attributes:
        scheduled_report_table: scheduledReportTable
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table", "scheduledReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    scheduled_report_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterEnhancedReportingScheduledReportGetListResponse(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedReportingScheduledReportGetListRequest()``.

    Contains a table with column headings : "Schedule Name", "Description", "Created By",
    "Is Supervisor Report", "Status", "Report Template Name", "Report Template Level" and
    "Recurring". The "Created By" can be either "Administrator" or user id if created by
    supervisor.  The possible values for "Status" are "Active", and "Completed". The
    possible values for "Recurring" are "None", "Daily", "Weekly", "Monthly" and "Yearly".
    The possible values for "Report Template Level" are "System" and "Group".

    Attributes:
        scheduled_report_table: scheduledReportTable
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table", "scheduledReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    scheduled_report_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterEnhancedReportingScheduledReportGetReportTemplateUsageListResponse(OCIResponse):
    """
    Response to
    ``GroupCallCenterEnhancedReportingScheduledReportGetReportTemplateUsageListRequest()``.

    Contains a table with column headings: "Schedule Name", "Created By", "Created By
    Supervisor", and "Is Active". The "Created By" can be either "Administrator" or user
    id if created by supervisor.

    Attributes:
        schedule_report_table: scheduleReportTable
    """

    _ELEMENTS = (
        E(
            "schedule_report_table", "scheduleReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    schedule_report_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterForcedForwardingGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterForcedForwardingGetRequest()``.


    Attributes:
        is_active: isActive
        forward_to_phone_number: forwardToPhoneNumber
        allow_enable_via_fac: allowEnableViaFAC
        play_announcement_before_forwarding: playAnnouncementBeforeForwarding
        audio_message_selection: audioMessageSelection
        audio_file_url: audioFileUrl
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_message_selection: videoMessageSelection
        video_file_url: videoFileUrl
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E("allow_enable_via_fac", "allowEnableViaFAC", bool, is_required=True),
        E(
            "play_announcement_before_forwarding", "playAnnouncementBeforeForwarding",
            bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E("audio_file_url", "audioFileUrl", str),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E("video_file_url", "videoFileUrl", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    allow_enable_via_fac: bool = Field(type=bool, required=True, mutable=False)
    play_announcement_before_forwarding: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterGetAgentListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAgentListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Weight", "Phone Number", "Extension",
    "Department", "Email Address", "Skill Level".

    Attributes:
        agent_table: agentTable
    """

    _ELEMENTS = (
        E(
            "agent_table", "agentTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    agent_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetAnnouncementResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest()``.


    Attributes:
        entrance_message_selection: entranceMessageSelection
        entrance_message_audio_file_description: entranceMessageAudioFileDescription
        entrance_message_video_file_description: entranceMessageVideoFileDescription
        periodic_comfort_message_selection: periodicComfortMessageSelection
        periodic_comfort_message_audio_file_description:
            periodicComfortMessageAudioFileDescription
        periodic_comfort_message_video_file_description:
            periodicComfortMessageVideoFileDescription
        on_hold_message_selection: onHoldMessageSelection
        on_hold_message_audio_file_description: onHoldMessageAudioFileDescription
        on_hold_message_video_file_description: onHoldMessageVideoFileDescription
    """

    _ELEMENTS = (
        E("entrance_message_selection", "entranceMessageSelection", str, is_required=True),
        E(
            "entrance_message_audio_file_description",
            "entranceMessageAudioFileDescription", str,
        ),
        E(
            "entrance_message_video_file_description",
            "entranceMessageVideoFileDescription", str,
        ),
        E(
            "periodic_comfort_message_selection", "periodicComfortMessageSelection", str,
            is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_file_description",
            "periodicComfortMessageAudioFileDescription", str,
        ),
        E(
            "periodic_comfort_message_video_file_description",
            "periodicComfortMessageVideoFileDescription", str,
        ),
        E("on_hold_message_selection", "onHoldMessageSelection", str, is_required=True),
        E("on_hold_message_audio_file_description", "onHoldMessageAudioFileDescription", str),
        E("on_hold_message_video_file_description", "onHoldMessageVideoFileDescription", str),
    )

    entrance_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    entrance_message_video_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_selection: str = Field(type=str, required=True, mutable=False)
    periodic_comfort_message_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    on_hold_message_selection: str = Field(type=str, required=True, mutable=False)
    on_hold_message_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    on_hold_message_video_file_description: str = Field(
        type=str, required=False, mutable=False,
    )


class GroupCallCenterGetAvailableAgentListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAvailableAgentListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetAvailableSupervisorListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAvailableSupervisorListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetDNISAgentListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISAgentListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        agent_table: agentTable
    """

    _ELEMENTS = (
        E(
            "agent_table", "agentTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    agent_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetDNISListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISListResponse()``.

    Contains a table with column headings: "Name", "Phone Number", "Extension",
    "Priority", "Is Primary DNIS".

    Attributes:
        display_dnis_number: displayDNISNumber
        display_dnis_name: displayDNISName
        promote_calls_from_priority1to0: promoteCallsFromPriority1to0
        promote_calls_from_priority2to1: promoteCallsFromPriority2to1
        promote_calls_from_priority3to2: promoteCallsFromPriority3to2
        promote_calls_from_priority1to0_seconds: promoteCallsFromPriority1to0Seconds
        promote_calls_from_priority2to1_seconds: promoteCallsFromPriority2to1Seconds
        promote_calls_from_priority3to2_seconds: promoteCallsFromPriority3to2Seconds
        dnis_table: dnisTable
    """

    _ELEMENTS = (
        E("display_dnis_number", "displayDNISNumber", bool, is_required=True),
        E("display_dnis_name", "displayDNISName", bool, is_required=True),
        E(
            "promote_calls_from_priority1to0", "promoteCallsFromPriority1to0", bool,
            is_required=True,
        ),
        E(
            "promote_calls_from_priority2to1", "promoteCallsFromPriority2to1", bool,
            is_required=True,
        ),
        E(
            "promote_calls_from_priority3to2", "promoteCallsFromPriority3to2", bool,
            is_required=True,
        ),
        E(
            "promote_calls_from_priority1to0_seconds",
            "promoteCallsFromPriority1to0Seconds", int, is_required=True,
        ),
        E(
            "promote_calls_from_priority2to1_seconds",
            "promoteCallsFromPriority2to1Seconds", int, is_required=True,
        ),
        E(
            "promote_calls_from_priority3to2_seconds",
            "promoteCallsFromPriority3to2Seconds", int, is_required=True,
        ),
        E("dnis_table", "dnisTable", list, is_complex=True, is_required=True, is_table=True),
    )

    display_dnis_number: bool = Field(type=bool, required=True, mutable=False)
    display_dnis_name: bool = Field(type=bool, required=True, mutable=False)
    promote_calls_from_priority1to0: bool = Field(type=bool, required=True, mutable=False)
    promote_calls_from_priority2to1: bool = Field(type=bool, required=True, mutable=False)
    promote_calls_from_priority3to2: bool = Field(type=bool, required=True, mutable=False)
    promote_calls_from_priority1to0_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    promote_calls_from_priority2to1_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    promote_calls_from_priority3to2_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    dnis_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetDNISResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISResponse()``.


    Attributes:
        dnis_phone_number: dnisPhoneNumber
        extension: extension
        use_custom_clid_settings: useCustomCLIDSettings
        calling_line_id_phone_number: callingLineIdPhoneNumber
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        use_custom_dnis_announcement_settings: useCustomDnisAnnouncementSettings
        priority: priority
        allow_outgoing_acd_call: allowOutgoingACDCall
    """

    _ELEMENTS = (
        E("dnis_phone_number", "dnisPhoneNumber", str),
        E("extension", "extension", str),
        E("use_custom_clid_settings", "useCustomCLIDSettings", bool, is_required=True),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("calling_line_id_last_name", "callingLineIdLastName", str),
        E("calling_line_id_first_name", "callingLineIdFirstName", str),
        E(
            "use_custom_dnis_announcement_settings", "useCustomDnisAnnouncementSettings",
            bool, is_required=True,
        ),
        E("priority", "priority", str, is_required=True),
        E("allow_outgoing_acd_call", "allowOutgoingACDCall", bool, is_required=True),
    )

    dnis_phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    use_custom_clid_settings: bool = Field(type=bool, required=True, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=False, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=False, mutable=False)
    use_custom_dnis_announcement_settings: bool = Field(
        type=bool, required=True, mutable=False,
    )
    priority: str = Field(type=str, required=True, mutable=False)
    allow_outgoing_acd_call: bool = Field(type=bool, required=True, mutable=False)


class GroupCallCenterGetDistinctiveRingingResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDistinctiveRingingRequest()``.


    Attributes:
        distinctive_ringing_call_center_calls: distinctiveRingingCallCenterCalls
        distinctive_ringing_ring_pattern_for_call_center:
            distinctiveRingingRingPatternForCallCenter
        distinctive_ringing_force_delivery_ring_pattern:
            distinctiveRingingForceDeliveryRingPattern
    """

    _ELEMENTS = (
        E(
            "distinctive_ringing_call_center_calls", "distinctiveRingingCallCenterCalls",
            bool, is_required=True,
        ),
        E(
            "distinctive_ringing_ring_pattern_for_call_center",
            "distinctiveRingingRingPatternForCallCenter", str, is_required=True,
        ),
        E(
            "distinctive_ringing_force_delivery_ring_pattern",
            "distinctiveRingingForceDeliveryRingPattern", str,
        ),
    )

    distinctive_ringing_call_center_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    distinctive_ringing_ring_pattern_for_call_center: str = Field(
        type=str, required=True, mutable=False,
    )
    distinctive_ringing_force_delivery_ring_pattern: str = Field(
        type=str, required=False, mutable=False,
    )


class GroupCallCenterGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Video", "Phone
    Number", "Extension", "Department", "Is Active", "Policy", "Type". The column values
    for "Video" and "Is Active" can either be true, or false.  The column values for
    "Type" can be "Basic", "Standard" or "Premium". NOTE: prior to release 14, the policy
    column did not match the HuntPolicy enumerated type.

    Attributes:
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetInstanceQueueStatusResponse(OCIResponse):
    """
    Contains Call Center queue status and a table with column headings: "User Id", "First
    Name", "Last Name", "Phone Number", "Extension", "Department", "Email Address".


    Attributes:
        number_of_calls_queued_now: numberOfCallsQueuedNow
        agents_currently_staffed: agentsCurrentlyStaffed
    """

    _ELEMENTS = (
        E("number_of_calls_queued_now", "numberOfCallsQueuedNow", int, is_required=True),
        E(
            "agents_currently_staffed", "agentsCurrentlyStaffed", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    number_of_calls_queued_now: int = Field(type=int, required=True, mutable=False)
    agents_currently_staffed: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetInstanceStatisticsReportingResponse(OCIResponse):
    """
    Contains Call Center statistics reporting settings.


    Attributes:
        generate_daily_report: generateDailyReport
        collection_period_minutes: collectionPeriodMinutes
        reporting_email_address1: reportingEmailAddress1
        reporting_email_address2: reportingEmailAddress2
    """

    _ELEMENTS = (
        E("generate_daily_report", "generateDailyReport", bool, is_required=True),
        E("collection_period_minutes", "collectionPeriodMinutes", int, is_required=True),
        E("reporting_email_address1", "reportingEmailAddress1", str),
        E("reporting_email_address2", "reportingEmailAddress2", str),
    )

    generate_daily_report: bool = Field(type=bool, required=True, mutable=False)
    collection_period_minutes: int = Field(type=int, required=True, mutable=False)
    reporting_email_address1: str = Field(type=str, required=False, mutable=False)
    reporting_email_address2: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterGetInstanceStatisticsReportingResponse16(OCIResponse):
    """
    Contains Call Center statistics reporting settings.


    Attributes:
        generate_daily_report: generateDailyReport
        collection_period_minutes: collectionPeriodMinutes
        reporting_email_address1: reportingEmailAddress1
        reporting_email_address2: reportingEmailAddress2
        statistics_source: statisticsSource
    """

    _ELEMENTS = (
        E("generate_daily_report", "generateDailyReport", bool, is_required=True),
        E("collection_period_minutes", "collectionPeriodMinutes", int, is_required=True),
        E("reporting_email_address1", "reportingEmailAddress1", str),
        E("reporting_email_address2", "reportingEmailAddress2", str),
        E("statistics_source", "statisticsSource", str, is_required=True),
    )

    generate_daily_report: bool = Field(type=bool, required=True, mutable=False)
    collection_period_minutes: int = Field(type=int, required=True, mutable=False)
    reporting_email_address1: str = Field(type=str, required=False, mutable=False)
    reporting_email_address2: str = Field(type=str, required=False, mutable=False)
    statistics_source: str = Field(type=str, required=True, mutable=False)


class GroupCallCenterGetInstanceStatisticsReportingResponse17sp1(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceStatisticsReportingRequest17sp1()``.

    Contains Call Center statistics reporting settings.

    Attributes:
        generate_daily_report: generateDailyReport
        collection_period_minutes: collectionPeriodMinutes
        reporting_email_address1: reportingEmailAddress1
        reporting_email_address2: reportingEmailAddress2
        statistics_source: statisticsSource
    """

    _ELEMENTS = (
        E("generate_daily_report", "generateDailyReport", bool, is_required=True),
        E("collection_period_minutes", "collectionPeriodMinutes", int, is_required=True),
        E("reporting_email_address1", "reportingEmailAddress1", str),
        E("reporting_email_address2", "reportingEmailAddress2", str),
        E("statistics_source", "statisticsSource", str, is_required=True),
    )

    generate_daily_report: bool = Field(type=bool, required=True, mutable=False)
    collection_period_minutes: int = Field(type=int, required=True, mutable=False)
    reporting_email_address1: str = Field(type=str, required=False, mutable=False)
    reporting_email_address2: str = Field(type=str, required=False, mutable=False)
    statistics_source: str = Field(type=str, required=True, mutable=False)


class GroupCallCenterGetResponse(OCIResponse):
    """
    Response to ``GroupCallCenterGetRequest()``.

    Replaced by ``GroupCallCenterGetResponse17sp4()``.

    Attributes:
        use_system_default_guard_timer: useSystemDefaultGuardTimer
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        use_system_default_unavailable_settings: useSystemDefaultUnavailableSettings
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
    """

    _ELEMENTS = (
        E(
            "use_system_default_guard_timer", "useSystemDefaultGuardTimer", bool,
            is_required=True,
        ),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings", bool,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int,
        ),
    )

    use_system_default_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    use_system_default_unavailable_settings: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=False, mutable=False,
    )


class GroupCallCenterGetResponse17sp4(OCIResponse):
    """
    Response to ``GroupCallCenterGetRequest17sp4()``.


    Attributes:
        use_system_default_guard_timer: useSystemDefaultGuardTimer
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        use_system_default_unavailable_settings: useSystemDefaultUnavailableSettings
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        force_agent_unavailable_on_not_reachable: forceAgentUnavailableOnNotReachable
    """

    _ELEMENTS = (
        E(
            "use_system_default_guard_timer", "useSystemDefaultGuardTimer", bool,
            is_required=True,
        ),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings", bool,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable", bool,
        ),
    )

    use_system_default_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    use_system_default_unavailable_settings: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=False, mutable=False,
    )
    force_agent_unavailable_on_not_reachable: bool = Field(
        type=bool, required=False, mutable=False,
    )


class GroupCallCenterGetRoutingPolicyResponse(OCIResponse):
    """
    Response to ``GroupCallCenterGetRoutingPolicyRequest()``.

    Contains a table with column headings: "Service User Id", "Name" and "Priority".

    Attributes:
        routing_policy: routingPolicy
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E("routing_policy", "routingPolicy", str, is_required=True),
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    routing_policy: str = Field(type=str, required=True, mutable=False)
    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetSupervisorListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetSupervisorListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name". Element "reportingServerURL"" will always be blank.

    Replaced By: ``GroupCallCenterSupervisorReportingGetResponse()``

    Attributes:
        reporting_server_url: reportingServerURL
        supervisor_table: supervisorTable
    """

    _ELEMENTS = (
        E("reporting_server_url", "reportingServerURL", str),
        E(
            "supervisor_table", "supervisorTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    reporting_server_url: str = Field(type=str, required=False, mutable=False)
    supervisor_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetSupervisorListResponse16(OCIResponse):
    """
    Response to the ``GroupCallCenterGetSupervisorListRequest16()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        supervisor_table: supervisorTable
    """

    _ELEMENTS = (
        E(
            "supervisor_table", "supervisorTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    supervisor_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterGetUnlicensedAgentListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetUnlicensedAgentListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Group Id", "Extension",
    "Department", "Email Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterHolidayServiceGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterHolidayServiceGetRequest()``.


    Attributes:
        action: action
        holiday_schedule: holidaySchedule
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_file_url: audioFileUrl
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_message_selection: videoMessageSelection
        video_file_url: videoFileUrl
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("holiday_schedule", "holidaySchedule", str),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E("audio_file_url", "audioFileUrl", str),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E("video_file_url", "videoFileUrl", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
    )

    action: str = Field(type=str, required=True, mutable=False)
    holiday_schedule: str = Field(type=str, required=False, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterNightServiceGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterNightServiceGetRequest()``.


    Attributes:
        action: action
        business_hours: businessHours
        force_night_service: forceNightService
        allow_manual_override_via_fac: allowManualOverrideViaFAC
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_file_url: audioFileUrl
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_message_selection: videoMessageSelection
        video_file_url: videoFileUrl
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        manual_announcement_mode: manualAnnouncementMode
        manual_audio_message_selection: manualAudioMessageSelection
        manual_audio_file_url: manualAudioFileUrl
        manual_audio_file_description: manualAudioFileDescription
        manual_audio_media_type: manualAudioMediaType
        manual_video_message_selection: manualVideoMessageSelection
        manual_video_file_url: manualVideoFileUrl
        manual_video_file_description: manualVideoFileDescription
        manual_video_media_type: manualVideoMediaType
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("business_hours", "businessHours", str),
        E("force_night_service", "forceNightService", bool, is_required=True),
        E(
            "allow_manual_override_via_fac", "allowManualOverrideViaFAC", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E("audio_file_url", "audioFileUrl", str),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E("video_file_url", "videoFileUrl", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("manual_announcement_mode", "manualAnnouncementMode", str, is_required=True),
        E(
            "manual_audio_message_selection", "manualAudioMessageSelection", str,
            is_required=True,
        ),
        E("manual_audio_file_url", "manualAudioFileUrl", str),
        E("manual_audio_file_description", "manualAudioFileDescription", str),
        E("manual_audio_media_type", "manualAudioMediaType", str),
        E(
            "manual_video_message_selection", "manualVideoMessageSelection", str,
            is_required=True,
        ),
        E("manual_video_file_url", "manualVideoFileUrl", str),
        E("manual_video_file_description", "manualVideoFileDescription", str),
        E("manual_video_media_type", "manualVideoMediaType", str),
    )

    action: str = Field(type=str, required=True, mutable=False)
    business_hours: str = Field(type=str, required=False, mutable=False)
    force_night_service: bool = Field(type=bool, required=True, mutable=False)
    allow_manual_override_via_fac: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    manual_announcement_mode: str = Field(type=str, required=True, mutable=False)
    manual_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_audio_file_url: str = Field(type=str, required=False, mutable=False)
    manual_audio_file_description: str = Field(type=str, required=False, mutable=False)
    manual_audio_media_type: str = Field(type=str, required=False, mutable=False)
    manual_video_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_video_file_url: str = Field(type=str, required=False, mutable=False)
    manual_video_file_description: str = Field(type=str, required=False, mutable=False)
    manual_video_media_type: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterOverflowGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterOverflowGetRequest()``.


    Attributes:
        action: action
        transfer_phone_number: transferPhoneNumber
        overflow_after_timeout: overflowAfterTimeout
        timeout_seconds: timeoutSeconds
        play_announcement_before_overflow_processing:
            playAnnouncementBeforeOverflowProcessing
        audio_message_selection: audioMessageSelection
        audio_file_url: audioFileUrl
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_message_selection: videoMessageSelection
        video_file_url: videoFileUrl
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("overflow_after_timeout", "overflowAfterTimeout", bool, is_required=True),
        E("timeout_seconds", "timeoutSeconds", int, is_required=True),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing", bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E("audio_file_url", "audioFileUrl", str),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_message_selection", "videoMessageSelection", str),
        E("video_file_url", "videoFileUrl", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
    )

    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    overflow_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    timeout_seconds: int = Field(type=int, required=True, mutable=False)
    play_announcement_before_overflow_processing: bool = Field(
        type=bool, required=True, mutable=False,
    )
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterQueueCallDispositionCodeGetListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterQueueCallDispositionCodeGetListRequest()``.

    Contains a table with column headings: "Is Active", "Code", "Description" and "Level".
    Level column can be any of the values in the data type CallDispositionCodeLevel.

    Attributes:
        disposition_codes_table: dispositionCodesTable
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table", "dispositionCodesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    disposition_codes_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallCenterQueueCallDispositionCodeGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterQueueCallDispositionCodeGetRequest()``

    Attributes:
        is_active: isActive
        description: description
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("description", "description", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterQueueStatusNotificationGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterQueueStatusNotificationGetRequest()``.

    The response contains the call center status configuration information.

    Attributes:
        enable_queue_status_notification: enableQueueStatusNotification
        enable_queue_depth_threshold: enableQueueDepthThreshold
        enable_waiting_time_threshold: enableWaitingTimeThreshold
        number_of_calls_threshold: numberOfCallsThreshold
        waiting_time_of_calls_threshold: waitingTimeOfCallsThreshold
    """

    _ELEMENTS = (
        E(
            "enable_queue_status_notification", "enableQueueStatusNotification", bool,
            is_required=True,
        ),
        E(
            "enable_queue_depth_threshold", "enableQueueDepthThreshold", bool,
            is_required=True,
        ),
        E(
            "enable_waiting_time_threshold", "enableWaitingTimeThreshold", bool,
            is_required=True,
        ),
        E("number_of_calls_threshold", "numberOfCallsThreshold", int, is_required=True),
        E(
            "waiting_time_of_calls_threshold", "waitingTimeOfCallsThreshold", int,
            is_required=True,
        ),
    )

    enable_queue_status_notification: bool = Field(type=bool, required=True, mutable=False)
    enable_queue_depth_threshold: bool = Field(type=bool, required=True, mutable=False)
    enable_waiting_time_threshold: bool = Field(type=bool, required=True, mutable=False)
    number_of_calls_threshold: int = Field(type=int, required=True, mutable=False)
    waiting_time_of_calls_threshold: int = Field(type=int, required=True, mutable=False)


class GroupCallCenterQueueThresholdsGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterQueueThresholdsGetRequest()``.


    Attributes:
        is_active: isActive
        threshold_current_calls_in_queue_yellow: thresholdCurrentCallsInQueueYellow
        threshold_current_calls_in_queue_red: thresholdCurrentCallsInQueueRed
        threshold_current_longest_waiting_call_yellow:
            thresholdCurrentLongestWaitingCallYellow
        threshold_current_longest_waiting_call_red: thresholdCurrentLongestWaitingCallRed
        threshold_average_estimated_wait_time_yellow:
            thresholdAverageEstimatedWaitTimeYellow
        threshold_average_estimated_wait_time_red: thresholdAverageEstimatedWaitTimeRed
        threshold_average_handling_time_yellow: thresholdAverageHandlingTimeYellow
        threshold_average_handling_time_red: thresholdAverageHandlingTimeRed
        threshold_average_speed_of_answer_yellow: thresholdAverageSpeedOfAnswerYellow
        threshold_average_speed_of_answer_red: thresholdAverageSpeedOfAnswerRed
        enable_notification_email: enableNotificationEmail
        notification_email_address: notificationEmailAddress
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "threshold_current_calls_in_queue_yellow",
            "thresholdCurrentCallsInQueueYellow", int,
        ),
        E("threshold_current_calls_in_queue_red", "thresholdCurrentCallsInQueueRed", int),
        E(
            "threshold_current_longest_waiting_call_yellow",
            "thresholdCurrentLongestWaitingCallYellow", int,
        ),
        E(
            "threshold_current_longest_waiting_call_red",
            "thresholdCurrentLongestWaitingCallRed", int,
        ),
        E(
            "threshold_average_estimated_wait_time_yellow",
            "thresholdAverageEstimatedWaitTimeYellow", int,
        ),
        E(
            "threshold_average_estimated_wait_time_red",
            "thresholdAverageEstimatedWaitTimeRed", int,
        ),
        E(
            "threshold_average_handling_time_yellow",
            "thresholdAverageHandlingTimeYellow", int,
        ),
        E("threshold_average_handling_time_red", "thresholdAverageHandlingTimeRed", int),
        E(
            "threshold_average_speed_of_answer_yellow",
            "thresholdAverageSpeedOfAnswerYellow", int,
        ),
        E("threshold_average_speed_of_answer_red", "thresholdAverageSpeedOfAnswerRed", int),
        E("enable_notification_email", "enableNotificationEmail", bool, is_required=True),
        E("notification_email_address", "notificationEmailAddress", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    threshold_current_calls_in_queue_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_calls_in_queue_red: int = Field(type=int, required=False, mutable=False)
    threshold_current_longest_waiting_call_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_current_longest_waiting_call_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_estimated_wait_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_estimated_wait_time_red: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_handling_time_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_handling_time_red: int = Field(type=int, required=False, mutable=False)
    threshold_average_speed_of_answer_yellow: int = Field(
        type=int, required=False, mutable=False,
    )
    threshold_average_speed_of_answer_red: int = Field(
        type=int, required=False, mutable=False,
    )
    enable_notification_email: bool = Field(type=bool, required=True, mutable=False)
    notification_email_address: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterStrandedCallGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterStrandedCallGetRequest()``.


    Attributes:
        action: action
        transfer_phone_number: transferPhoneNumber
        audio_message_selection: audioMessageSelection
        audio_file_url: audioFileUrl
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_message_selection: videoMessageSelection
        video_file_url: videoFileUrl
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("audio_message_selection", "audioMessageSelection", str),
        E("audio_file_url", "audioFileUrl", str),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_message_selection", "videoMessageSelection", str),
        E("video_file_url", "videoFileUrl", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
    )

    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    audio_message_selection: str = Field(type=str, required=False, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterSupervisorReportingGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterSupervisorReportingGetRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name".

    Attributes:
        reporting_server_name: reportingServerName
        supervisor_table: supervisorTable
    """

    _ELEMENTS = (
        E("reporting_server_name", "reportingServerName", str),
        E(
            "supervisor_table", "supervisorTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    reporting_server_name: str = Field(type=str, required=False, mutable=False)
    supervisor_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallParkGetAvailableAlternateRecallUserListResponse(OCIResponse):
    """
    Response to the ``GroupCallParkGetAvailableAlternateRecallUserListResponse()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name".

    Attributes:
        available_hunt_group_table: availableHuntGroupTable
    """

    _ELEMENTS = (
        E(
            "available_hunt_group_table", "availableHuntGroupTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    available_hunt_group_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallParkGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupCallParkGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallParkGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupCallParkGetInstanceListRequest()``.


    Attributes:
        name: name
    """

    _ELEMENTS = (
        E("name", "name", str, is_array=True),
    )

    name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupCallParkGetInstanceResponse(OCIResponse):
    """
    Response to the ``GroupCallParkGetInstanceRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name". The users are in the table are in the order they
    will try to be parked on.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallParkGetInstanceResponse16sp2(OCIResponse):
    """
    Response to the ``GroupCallParkGetInstanceRequest16sp2()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address". The users are in the table are in the order they will try to be parked on.
    The following elements are only used in AS data mode: recallAlternateUserId recallTo

    Attributes:
        recall_alternate_user_id: recallAlternateUserId
        recall_to: recallTo
        user_table: userTable
    """

    _ELEMENTS = (
        E("recall_alternate_user_id", "recallAlternateUserId", str),
        E("recall_to", "recallTo", str, is_required=True),
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    recall_alternate_user_id: str = Field(type=str, required=False, mutable=False)
    recall_to: str = Field(type=str, required=True, mutable=False)
    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallParkGetResponse(OCIResponse):
    """
    Response to the ``GroupCallParkGetRequest()``.

    Contains the settings that apply to the whole group for Call Park.

    Attributes:
        recall_timer_seconds: recallTimerSeconds
        display_timer_seconds: displayTimerSeconds
        enable_destination_announcement: enableDestinationAnnouncement
    """

    _ELEMENTS = (
        E("recall_timer_seconds", "recallTimerSeconds", int, is_required=True),
        E("display_timer_seconds", "displayTimerSeconds", int, is_required=True),
        E(
            "enable_destination_announcement", "enableDestinationAnnouncement", bool,
            is_required=True,
        ),
    )

    recall_timer_seconds: int = Field(type=int, required=True, mutable=False)
    display_timer_seconds: int = Field(type=int, required=True, mutable=False)
    enable_destination_announcement: bool = Field(type=bool, required=True, mutable=False)


class GroupCallParkGetResponse16sp2(OCIResponse):
    """
    Response to the ``GroupCallParkGetRequest16sp2()``.

    Contains the settings that apply to the whole group for Call Park.  The following
    elements are only used in AS data mode: recallAlternateUserId recallRingPattern
    recallTo alternateUserRecallTimerSeconds

    Attributes:
        recall_timer_seconds: recallTimerSeconds
        display_timer_seconds: displayTimerSeconds
        enable_destination_announcement: enableDestinationAnnouncement
        recall_alternate_user_id: recallAlternateUserId
        recall_ring_pattern: recallRingPattern
        recall_to: recallTo
        alternate_user_recall_timer_seconds: alternateUserRecallTimerSeconds
    """

    _ELEMENTS = (
        E("recall_timer_seconds", "recallTimerSeconds", int, is_required=True),
        E("display_timer_seconds", "displayTimerSeconds", int, is_required=True),
        E(
            "enable_destination_announcement", "enableDestinationAnnouncement", bool,
            is_required=True,
        ),
        E("recall_alternate_user_id", "recallAlternateUserId", str),
        E("recall_ring_pattern", "recallRingPattern", str, is_required=True),
        E("recall_to", "recallTo", str, is_required=True),
        E(
            "alternate_user_recall_timer_seconds", "alternateUserRecallTimerSeconds", int,
            is_required=True,
        ),
    )

    recall_timer_seconds: int = Field(type=int, required=True, mutable=False)
    display_timer_seconds: int = Field(type=int, required=True, mutable=False)
    enable_destination_announcement: bool = Field(type=bool, required=True, mutable=False)
    recall_alternate_user_id: str = Field(type=str, required=False, mutable=False)
    recall_ring_pattern: str = Field(type=str, required=True, mutable=False)
    recall_to: str = Field(type=str, required=True, mutable=False)
    alternate_user_recall_timer_seconds: int = Field(type=int, required=True, mutable=False)


class GroupCallPickupGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupCallPickupGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallPickupGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupCallPickupGetInstanceListRequest()``.


    Attributes:
        name: name
    """

    _ELEMENTS = (
        E("name", "name", str, is_array=True),
    )

    name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupCallPickupGetInstanceResponse(OCIResponse):
    """
    Response to the ``GroupCallPickupGetInstanceRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCallProcessingGetPolicyResponse14(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest14()``.


    Attributes:
        use_group_setting: useGroupSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
    """

    _ELEMENTS = (
        E("use_group_setting", "useGroupSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
    )

    use_group_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupCallProcessingGetPolicyResponse14sp1(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest14sp1()``.


    Attributes:
        use_group_setting: useGroupSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_group_setting", "useGroupSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_group_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class GroupCallProcessingGetPolicyResponse14sp4(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest14sp4()``.

    Replaced By : ``GroupCallProcessingGetPolicyResponse15()``

    Attributes:
        use_group_setting: useGroupSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_external_calls_via_private_dialing_plan:
            overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_group_setting", "useGroupSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan", bool,
            is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_group_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_external_calls_via_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class GroupCallProcessingGetPolicyResponse14sp7(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest14sp7()``.


    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_external_calls_via_private_dialing_plan:
            overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan", bool,
            is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_external_calls_via_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)


class GroupCallProcessingGetPolicyResponse15(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest15()``.


    Attributes:
        use_group_setting: useGroupSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_group_setting", "useGroupSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_group_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class GroupCallProcessingGetPolicyResponse15sp2(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest15sp2()``.


    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)


class GroupCallProcessingGetPolicyResponse16(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest16()``.


    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)


class GroupCallProcessingGetPolicyResponse16sp2(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest16sp2()``.


    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_group_dclid_setting: useGroupDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_group_dclid_setting", "useGroupDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class GroupCallProcessingGetPolicyResponse17(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest17()``.


    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupCallProcessingGetPolicyResponse17sp3(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest17sp3()``.

    The following elements are only used in AS data mode: useGroupDCLIDSetting
    enableDialableCallerID Replaced by ``GroupCallProcessingGetPolicyResponse17sp4()``

    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_group_dclid_setting: useGroupDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_group_dclid_setting", "useGroupDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class GroupCallProcessingGetPolicyResponse17sp4(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest17sp4()``.

    The following elements are only used in AS data mode: useGroupDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity Replaced by
    ``GroupCallProcessingGetPolicyResponse18()``

    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_group_dclid_setting: useGroupDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_group_dclid_setting", "useGroupDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupCallProcessingGetPolicyResponse18(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest18()``.

    The following elements are only used in AS data mode: useGroupDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity
    allowDepartmentCLIDNameOverride

    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_group_dclid_setting: useGroupDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_group_dclid_setting", "useGroupDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)


class GroupCallProcessingGetPolicyResponse18sp1(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest18()``.

    The following elements are only used in AS data mode: useGroupDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity
    allowDepartmentCLIDNameOverride enterpriseCallsCLIDPolicy groupCallsCLIDPolicy
    Replaced by: ``GroupCallProcessingGetPolicyResponse19sp1()``

    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_group_dclid_setting: useGroupDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        group_calls_clid_policy: groupCallsCLIDPolicy
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_group_dclid_setting", "useGroupDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E("group_calls_clid_policy", "groupCallsCLIDPolicy", str, is_required=True),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)


class GroupCallProcessingGetPolicyResponse19sp1(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest()``.

    The following elements are only used in AS data mode: useGroupDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity
    allowDepartmentCLIDNameOverride enterpriseCallsCLIDPolicy groupCallsCLIDPolicy

    Attributes:
        use_group_clid_setting: useGroupCLIDSetting
        use_group_media_setting: useGroupMediaSetting
        use_group_call_limits_setting: useGroupCallLimitsSetting
        use_group_translation_routing_setting: useGroupTranslationRoutingSetting
        use_group_dclid_setting: useGroupDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        group_calls_clid_policy: groupCallsCLIDPolicy
    """

    _ELEMENTS = (
        E("use_group_clid_setting", "useGroupCLIDSetting", bool, is_required=True),
        E("use_group_media_setting", "useGroupMediaSetting", bool, is_required=True),
        E(
            "use_group_call_limits_setting", "useGroupCallLimitsSetting", bool,
            is_required=True,
        ),
        E(
            "use_group_translation_routing_setting", "useGroupTranslationRoutingSetting",
            bool, is_required=True,
        ),
        E("use_group_dclid_setting", "useGroupDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E("group_calls_clid_policy", "groupCallsCLIDPolicy", str, is_required=True),
    )

    use_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_group_translation_routing_setting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=False, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)


class GroupCallRecordingGetResponse(OCIResponse):
    """
    Response to the ``GroupCallRecordingGetRequest()``.

    The response contains the group's Call Recording platform information.

    Attributes:
        name: name
    """

    _ELEMENTS = (
        E("name", "name", str),
    )

    name: str = Field(type=str, required=False, mutable=False)


class GroupCallingLineIdGetResponse(OCIResponse):
    """
    Response to the ``GroupCallingLineIdGetRequest()``.

    The response contains the group's calling line id settings.

    Attributes:
        use_group_number: useGroupNumber
        use_group_name: useGroupName
        calling_line_id_phone_number: callingLineIdPhoneNumber
        calling_line_id_name: callingLineIdName
    """

    _ELEMENTS = (
        E("use_group_number", "useGroupNumber", bool, is_required=True),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("calling_line_id_name", "callingLineIdName", str),
    )

    use_group_number: bool = Field(type=bool, required=True, mutable=False)
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    calling_line_id_name: str = Field(type=str, required=False, mutable=False)


class GroupCallingPlanGetDigitPatternListResponse(OCIResponse):
    """
    Response to ``GroupCallingPlanGetDigitPatternListRequest()``.

    Contains a table with column headings: "Name", "Digit Pattern".

    Attributes:
        digit_pattern_table: digitPatternTable
    """

    _ELEMENTS = (
        E(
            "digit_pattern_table", "digitPatternTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    digit_pattern_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCollaborateBridgeGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupCollaborateBridgeGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", and "Hiragana First Name", "Phone Number", "Extension", "Department",
    "Email Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCollaborateBridgeGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupCollaborateBridgeGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Phone Number",
    "Extension", "Department", "Participants", and "Is Default". The column values for "Is
    default" can either be true, or false.

    Attributes:
        collaborate_bridge_table: collaborateBridgeTable
    """

    _ELEMENTS = (
        E(
            "collaborate_bridge_table", "collaborateBridgeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    collaborate_bridge_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCommPilotCallManagerGetResponse(OCIResponse):
    """
    Response to ``GroupCommPilotCallManagerGetRequest()``.


    Attributes:
        group_directory: groupDirectory
    """

    _ELEMENTS = (
        E("group_directory", "groupDirectory", str, is_required=True),
    )

    group_directory: str = Field(type=str, required=True, mutable=False)


class GroupCommunicationBarringGetResponse(OCIResponse):
    """
    Response to ``SystemCommunicationBarringGetRequest()``.


    Attributes:
        use_default_service_provider_profile: useDefaultServiceProviderProfile
        profile: profile
    """

    _ELEMENTS = (
        E(
            "use_default_service_provider_profile", "useDefaultServiceProviderProfile",
            bool, is_required=True,
        ),
        E("profile", "profile", str),
    )

    use_default_service_provider_profile: bool = Field(
        type=bool, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=False, mutable=False)


class GroupCommunicationBarringProfileGetAssignedListResponse(OCIResponse):
    """
    Response to the ``GroupCommunicationBarringProfileGetAssignedListRequest()``.

    The response contains a simple list of all communication barring profiles assigned to
    the group.

    Attributes:
        profile_name: profileName
    """

    _ELEMENTS = (
        E("profile_name", "profileName", str, is_array=True),
    )

    profile_name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupCustomContactDirectoryGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupCustomContactDirectoryGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name". Replace by:
    ``GroupCustomContactDirectoryGetAvailableUserListResponse17()``

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCustomContactDirectoryGetAvailableUserListResponse17(OCIResponse):
    """
    Response to the ``GroupCustomContactDirectoryGetAvailableUserListRequest17()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Virtual On-Net Phone Number", "Group Id", "Is
    Virtual On-Net User", "Phone Number", "Extension", "Department", "Email Address". If
    the entry represents a Virtual On-Net user then "User Id" is blank, the "Virtual On-
    Net Phone Number" contains the phone Number of the Virtual On-Net user, the "Group Id"
    contains the Virtual On-Net user's group and the "Is Virtual On-Net User" contains
    true.  If the entry represents a BroadWorks user then the "User Id" contains his
    BroadWorks userId, the "Virtual On-Net Phone Number" and "Group Id" fields are blank
    and the "Is Virtual On-Net User" contains false.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCustomContactDirectoryGetListResponse(OCIResponse):
    """
    Response to the ``GroupCustomContactDirectoryGetListRequest()``.

    The response contains all the group's custom contact directory names.

    Attributes:
        name: name
    """

    _ELEMENTS = (
        E("name", "name", str, is_array=True),
    )

    name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupCustomContactDirectoryGetResponse(OCIResponse):
    """
    Response to the ``GroupCustomContactDirectoryGetRequest()``.

    The response contains all the group's custom contact directory names.  Contains a
    table with column headings: "User Id", "Last Name", "First Name", "Hiragana Last
    Name", "Hiragana First Name". Replace by:
    ``GroupCustomContactDirectoryGetResponse17()``

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCustomContactDirectoryGetResponse17(OCIResponse):
    """
    Response to the ``GroupCustomContactDirectoryGetRequest17()``.

    The response contains all the contacts in the group's given custom contact directory.
    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Virtual On-Net Phone Number", "Group Id", "Is
    Virtual On-Net User", "Department", "Phone Number", "Extension", "Mobile", "Email
    Address", "Yahoo Id", "Title", "IMP Id". If the entry represents a Virtual On-Net user
    then "User Id" is blank, the "Virtual On-Net Phone Number" contains the phone Number
    of the Virtual On-Net user, the "Group Id" contains the Virtual On-Net user's group
    and the "Is Virtual On-Net User" contains true.  If the entry represents a BroadWorks
    user then the "User Id" contains his BroadWorks userId, the "Virtual On-Net Phone
    Number" and "Group Id" fields are field is blank and the "Is Virtual On-Net User"
    contains false.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupCustomRingbackGroupGetResponse(OCIResponse):
    """
    Response to the ``GroupCustomRingbackGroupGetRequest()``.

    Replaced By: ``GroupCustomRingbackGroupGetResponse16()``

    Attributes:
        is_active: isActive
        audio_selection: audioSelection
        audio_file_description: audioFileDescription
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file_description: videoFileDescription
        video_file_url: videoFileUrl
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file_description", "videoFileDescription", str),
        E("video_file_url", "videoFileUrl", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)


class GroupCustomRingbackGroupGetResponse16(OCIResponse):
    """
    Response to the ``GroupCustomRingbackGroupGetRequest16()``.


    Attributes:
        is_active: isActive
        audio_selection: audioSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        video_file_url: videoFileUrl
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("video_file_url", "videoFileUrl", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)


class GroupDepartmentAdminGetListResponse(OCIResponse):
    """
    Response to ``GroupDepartmentAdminGetListRequest()``.

    Contains a 5 column table with column headings "Administrator ID", "Last Name", "First
    Name", "Department", "Language".

    Attributes:
        department_admin_table: departmentAdminTable
    """

    _ELEMENTS = (
        E(
            "department_admin_table", "departmentAdminTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    department_admin_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDepartmentGetListResponse18(OCIResponse):
    """
    Response to ``GroupDepartmentGetListRequest18()``.

    Contains a table of department attributes.  The column headings are: "Is Enterprise
    Department", "Department Name", "Full Path Name", "Calling Line Id Name", and "Calling
    Line Id Phone Number"

    Attributes:
        department_table: departmentTable
    """

    _ELEMENTS = (
        E(
            "department_table", "departmentTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    department_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDeviceManagementEventGetListResponse(OCIResponse):
    """
    Response to ``GroupDeviceManagementEventGetListRequest()``.

    Contains a table with column headings: "Event Id", "Status", "Action", "Level",
    "Type", "Additional Info", "Is Local", "Completion %", "Pushed/ Same Hash/ Not
    Pushed", "Login Id", "Start Time", "Process Time". "Event Id" is a unique identifer
    for the event.  "Status" can be: Pending, Queued, In Progress, Process On Other Host,
    Stale, Completed, Canceled.  "Action" can be: Delete, Download, Rebuild, Reset,
    Upload.  "Level" can be: Device, Device Type, Device Type Group, Group, User.  "Type"
    can be: Automatic, Manual.  "Additional Info" includes the affected device type,
    device or group.  It depends on the level of the event: Device Profile: "Device Name"
    "Service Provider Id" "Group Id" Device Type: "Device Type Name" Device Type Group:
    "Service Provider Id" "Group Id" "Device Type Name" Group: "Service Provider Id"
    "Group Id" User: "User Id" "Is Local" is set to "yes" if the event is processed on the
    server who received the request, "no" otherwise meaning that the event is processed on
    another server.  "Completion %" provides an estimate of the completion of the event.
    A percentage is given, the current number of completed expanded event, and the total
    number of expanded event.  "Pushed/ Same Hash/ Not Pushed" gives the total number of
    files that were pushed, not pushed because of same hash, and not pushed when
    processing the event.  "LoginId" is the user or admin id who triggered the event.
    "Start Time" is the date when the event was started.  The display shows the month,
    days, hours, and minutes (MM-dd hh:mm). "Process Time" is the time taken to process
    the event in hours, minutes, seconds, and milliseconds (hhhh:mm:ss.SSS). Each row
    represents an event sorted by priority of processing.  The first row in the table is
    an event that has an associated expanded event currently being processed or next in
    line to be processed.

    Attributes:
        event_table: eventTable
    """

    _ELEMENTS = (
        E(
            "event_table", "eventTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    event_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDeviceManagementGetAccessDeviceCountForDeviceTypeGroupResponse(OCIResponse):
    """
    Response to ``GroupDeviceManagementGetAccessDeviceCountForDeviceTypeGroupRequest()``.


    Attributes:
        access_device_count: accessDeviceCount
    """

    _ELEMENTS = (
        E("access_device_count", "accessDeviceCount", int, is_required=True),
    )

    access_device_count: int = Field(type=int, required=True, mutable=False)


class GroupDeviceTypeCustomTagGetListResponse(OCIResponse):
    """
    Response to ``GroupDeviceTypeCustomTagGetListRequest()``.

    Contains a table of custom configuration tags managed by the Device Management System
    on a per-device type basis for a group.  The column headings are: "Tag Name", "Tag
    Value"

    Attributes:
        group_device_type_custom_tags_table: groupDeviceTypeCustomTagsTable
    """

    _ELEMENTS = (
        E(
            "group_device_type_custom_tags_table", "groupDeviceTypeCustomTagsTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    group_device_type_custom_tags_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class GroupDeviceTypeFileGetListResponse(OCIResponse):
    """
    Response to ``GroupDeviceTypeFileGetListRequest()``.

    Contains a table of device type files managed by the Device Management System, on a
    per-group basis.  The column headings are: "File Type", "File Format", "Is
    Authenticated".

    Replaced By: ``GroupDeviceTypeFileGetListResponse14sp8()``

    Attributes:
        group_device_type_files_table: groupDeviceTypeFilesTable
    """

    _ELEMENTS = (
        E(
            "group_device_type_files_table", "groupDeviceTypeFilesTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    group_device_type_files_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDeviceTypeFileGetListResponse14sp8(OCIResponse):
    """
    Response to ``GroupDeviceTypeFileGetListRequest14sp8()``.

    Contains a table of device type files managed by the Device Management System, on a
    per-group basis.  The column headings are: "File Format", "Is Authenticated", "Access
    URL", "Repository URL", "Template URL". Replaced by:
    GroupDeviceTypeFileGetListResponset21.

    Attributes:
        group_device_type_files_table: groupDeviceTypeFilesTable
        group_has_files_with_customizable_tags: groupHasFilesWithCustomizableTags
    """

    _ELEMENTS = (
        E(
            "group_device_type_files_table", "groupDeviceTypeFilesTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "group_has_files_with_customizable_tags", "groupHasFilesWithCustomizableTags",
            bool,
        ),
    )

    group_device_type_files_table: "list" = Field(type=list, required=True, mutable=False)
    group_has_files_with_customizable_tags: bool = Field(
        type=bool, required=False, mutable=False,
    )


class GroupDeviceTypeFileGetListResponse21(OCIResponse):
    """
    Response to ``GroupDeviceTypeFileGetListRequest21()``.

    Contains a table of device type files managed by the Device Management System, on a
    per-group basis.  The column headings are: "File Format", "Is Authenticated", "Access
    URL", "Repository URL", "Template URL".

    Attributes:
        group_device_type_files_table: groupDeviceTypeFilesTable
        group_has_customizable_dynamic_files: groupHasCustomizableDynamicFiles
    """

    _ELEMENTS = (
        E(
            "group_device_type_files_table", "groupDeviceTypeFilesTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "group_has_customizable_dynamic_files", "groupHasCustomizableDynamicFiles",
            bool, is_required=True,
        ),
    )

    group_device_type_files_table: "list" = Field(type=list, required=True, mutable=False)
    group_has_customizable_dynamic_files: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupDeviceTypeFileGetResponse(OCIResponse):
    """
    Response to ``GroupDeviceTypeFileGetRequest()``.

    Replaced By: ``GroupDeviceTypeFileGetResponse14sp8()``

    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str),
        E("configuration_file_name", "configurationFileName", str),
    )

    file_source: str = Field(type=str, required=False, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)


class GroupDeviceTypeFileGetResponse14sp8(OCIResponse):
    """
    Response to ``GroupDeviceTypeFileGetRequest14sp8()``.

    Replaced by: ``GroupDeviceTypeFileGetResponse16sp1()``

    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str),
        E("configuration_file_name", "configurationFileName", str),
    )

    file_source: str = Field(type=str, required=False, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)


class GroupDeviceTypeFileGetResponse16sp1(OCIResponse):
    """
    Response to ``GroupDeviceTypeFileGetRequest16sp1()``.


    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str),
        E("configuration_file_name", "configurationFileName", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
    )

    file_source: str = Field(type=str, required=False, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)


class GroupDialPlanPolicyGetAccessCodeListResponse(OCIResponse):
    """
    Response to ``GroupDialPlanPolicyGetAccessCodeListRequest()`` Contains a table with
    column headings: "Access Code", "Enable Secondary Dial Tone", "Description"

    Attributes:
        access_code_table: accessCodeTable
    """

    _ELEMENTS = (
        E(
            "access_code_table", "accessCodeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    access_code_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDialPlanPolicyGetAccessCodeResponse(OCIResponse):
    """
    Response to ``GroupDialPlanPolicyGetAccessCodeRequest()``

    Attributes:
        include_code_for_network_translations_and_routing:
            includeCodeForNetworkTranslationsAndRouting
        include_code_for_screening_services: includeCodeForScreeningServices
        enable_secondary_dial_tone: enableSecondaryDialTone
        description: description
    """

    _ELEMENTS = (
        E(
            "include_code_for_network_translations_and_routing",
            "includeCodeForNetworkTranslationsAndRouting", bool, is_required=True,
        ),
        E(
            "include_code_for_screening_services", "includeCodeForScreeningServices",
            bool, is_required=True,
        ),
        E("enable_secondary_dial_tone", "enableSecondaryDialTone", bool, is_required=True),
        E("description", "description", str),
    )

    include_code_for_network_translations_and_routing: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_code_for_screening_services: bool = Field(type=bool, required=True, mutable=False)
    enable_secondary_dial_tone: bool = Field(type=bool, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class GroupDialPlanPolicyGetResponse(OCIResponse):
    """
    Response to ``GroupDialPlanPolicyGetRequest()`` Replaced by:
    ``GroupDialPlanPolicyGetResponse17()``

    Attributes:
        use_setting: useSetting
        requires_access_code_for_public_calls: requiresAccessCodeForPublicCalls
        allow_e164_public_calls: allowE164PublicCalls
        public_digit_map: publicDigitMap
        private_digit_map: privateDigitMap
    """

    _ELEMENTS = (
        E("use_setting", "useSetting", str, is_required=True),
        E(
            "requires_access_code_for_public_calls", "requiresAccessCodeForPublicCalls",
            bool, is_required=True,
        ),
        E("allow_e164_public_calls", "allowE164PublicCalls", bool, is_required=True),
        E("public_digit_map", "publicDigitMap", str),
        E("private_digit_map", "privateDigitMap", str),
    )

    use_setting: str = Field(type=str, required=True, mutable=False)
    requires_access_code_for_public_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_e164_public_calls: bool = Field(type=bool, required=True, mutable=False)
    public_digit_map: str = Field(type=str, required=False, mutable=False)
    private_digit_map: str = Field(type=str, required=False, mutable=False)


class GroupDialPlanPolicyGetResponse17(OCIResponse):
    """
    Response to ``GroupDialPlanPolicyGetRequest17()``

    Attributes:
        use_setting: useSetting
        requires_access_code_for_public_calls: requiresAccessCodeForPublicCalls
        allow_e164_public_calls: allowE164PublicCalls
        prefer_e164_number_format_for_callback_services:
            preferE164NumberFormatForCallbackServices
        public_digit_map: publicDigitMap
        private_digit_map: privateDigitMap
    """

    _ELEMENTS = (
        E("use_setting", "useSetting", str, is_required=True),
        E(
            "requires_access_code_for_public_calls", "requiresAccessCodeForPublicCalls",
            bool, is_required=True,
        ),
        E("allow_e164_public_calls", "allowE164PublicCalls", bool, is_required=True),
        E(
            "prefer_e164_number_format_for_callback_services",
            "preferE164NumberFormatForCallbackServices", bool, is_required=True,
        ),
        E("public_digit_map", "publicDigitMap", str),
        E("private_digit_map", "privateDigitMap", str),
    )

    use_setting: str = Field(type=str, required=True, mutable=False)
    requires_access_code_for_public_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_e164_public_calls: bool = Field(type=bool, required=True, mutable=False)
    prefer_e164_number_format_for_callback_services: bool = Field(
        type=bool, required=True, mutable=False,
    )
    public_digit_map: str = Field(type=str, required=False, mutable=False)
    private_digit_map: str = Field(type=str, required=False, mutable=False)


class GroupDialableCallerIDCriteriaGetResponse(OCIResponse):
    """
    Response to the ``GroupDialableCallerIDCriteriaGetRequest()``.

    The response contains the Dialable Caller ID Criteria information.

    Attributes:
        description: description
        prefix_digits: prefixDigits
        match_call_type: matchCallType
        match_alternate_call_indicator: matchAlternateCallIndicator
        match_local_category: matchLocalCategory
        match_national_category: matchNationalCategory
        match_interlata_category: matchInterlataCategory
        match_intralata_category: matchIntralataCategory
        match_international_category: matchInternationalCategory
        match_private_category: matchPrivateCategory
        match_emergency_category: matchEmergencyCategory
        match_other_category: matchOtherCategory
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("prefix_digits", "prefixDigits", str),
        E("match_call_type", "matchCallType", str, is_array=True),
        E(
            "match_alternate_call_indicator", "matchAlternateCallIndicator", str,
            is_array=True,
        ),
        E("match_local_category", "matchLocalCategory", bool, is_required=True),
        E("match_national_category", "matchNationalCategory", bool, is_required=True),
        E("match_interlata_category", "matchInterlataCategory", bool, is_required=True),
        E("match_intralata_category", "matchIntralataCategory", bool, is_required=True),
        E(
            "match_international_category", "matchInternationalCategory", bool,
            is_required=True,
        ),
        E("match_private_category", "matchPrivateCategory", bool, is_required=True),
        E("match_emergency_category", "matchEmergencyCategory", bool, is_required=True),
        E("match_other_category", "matchOtherCategory", bool, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    prefix_digits: str = Field(type=str, required=False, mutable=False)
    match_call_type: "List[str]" = Field(type=list, required=False, mutable=False)
    match_alternate_call_indicator: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    match_local_category: bool = Field(type=bool, required=True, mutable=False)
    match_national_category: bool = Field(type=bool, required=True, mutable=False)
    match_interlata_category: bool = Field(type=bool, required=True, mutable=False)
    match_intralata_category: bool = Field(type=bool, required=True, mutable=False)
    match_international_category: bool = Field(type=bool, required=True, mutable=False)
    match_private_category: bool = Field(type=bool, required=True, mutable=False)
    match_emergency_category: bool = Field(type=bool, required=True, mutable=False)
    match_other_category: bool = Field(type=bool, required=True, mutable=False)


class GroupDialableCallerIDGetResponse(OCIResponse):
    """
    Response to the ``GroupDialableCallerIDGetRequest()``.

    The criteria table�s column headings are "Active", "Name", "Description", �Prefix
    Digits�, �Priority�.

    Attributes:
        use_group_criteria: useGroupCriteria
        ns_screening_failure_policy: nsScreeningFailurePolicy
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("use_group_criteria", "useGroupCriteria", bool, is_required=True),
        E("ns_screening_failure_policy", "nsScreeningFailurePolicy", str, is_required=True),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    use_group_criteria: bool = Field(type=bool, required=True, mutable=False)
    ns_screening_failure_policy: str = Field(type=str, required=True, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDigitCollectionGetResponse13mp4(OCIResponse):
    """
    Response to ``GroupDigitCollectionGetRequest13mp4()``.


    Attributes:
        use_setting: useSetting
        access_code: accessCode
        public_digit_map: publicDigitMap
        private_digit_map: privateDigitMap
    """

    _ELEMENTS = (
        E("use_setting", "useSetting", str, is_required=True),
        E("access_code", "accessCode", str),
        E("public_digit_map", "publicDigitMap", str),
        E("private_digit_map", "privateDigitMap", str),
    )

    use_setting: str = Field(type=str, required=True, mutable=False)
    access_code: str = Field(type=str, required=False, mutable=False)
    public_digit_map: str = Field(type=str, required=False, mutable=False)
    private_digit_map: str = Field(type=str, required=False, mutable=False)


class GroupDirectoryNumberHuntingGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupDirectoryNumberHuntingGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDirectoryNumberHuntingGetResponse(OCIResponse):
    """
    Response to the ``GroupDirectoryNumberHuntingGetRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address". Replaced by: ``GroupDirectoryNumberHuntingGetResponse17sp1()``

    Attributes:
        agent_user_table: agentUserTable
    """

    _ELEMENTS = (
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    agent_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDirectoryNumberHuntingGetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupDirectoryNumberHuntingGetRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        agent_user_table: agentUserTable
        use_terminate_call_to_agent_first: useTerminateCallToAgentFirst
        use_original_agent_services_for_busy_and_no_answer_calls:
            useOriginalAgentServicesForBusyAndNoAnswerCalls
    """

    _ELEMENTS = (
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "use_terminate_call_to_agent_first", "useTerminateCallToAgentFirst", bool,
            is_required=True,
        ),
        E(
            "use_original_agent_services_for_busy_and_no_answer_calls",
            "useOriginalAgentServicesForBusyAndNoAnswerCalls", bool, is_required=True,
        ),
    )

    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    use_terminate_call_to_agent_first: bool = Field(type=bool, required=True, mutable=False)
    use_original_agent_services_for_busy_and_no_answer_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupDnGetActivationListResponse(OCIResponse):
    """
    Response to the ``GroupDnGetActivationListRequest()``.

    The response contains a table with columns: "Phone Numbers", and "Activated". ". Phone
    Numbers are only returned if assigned to a user.  The "Phone Numbers" column contains
    either a single DN or a range of DNs.  The "Activated" column indicates if the phone
    number(s) are activated or not.

    Attributes:
        dn_table: dnTable
    """

    _ELEMENTS = (
        E("dn_table", "dnTable", list, is_complex=True, is_required=True, is_table=True),
    )

    dn_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDnGetAssignmentListResponse(OCIResponse):
    """
    Response to the ``GroupDnGetAssignmentListRequest()``.

    The response contains a table with columns: "Phone Numbers", "Assigned To",
    "Department", "Activated". The "Phone Numbers" column contains either a single DN or a
    range of DNs.  The "Assigned To" column contains the user name or service instance
    name possessing the DN(s). The "Department" column contains the department of the DN,
    not the department of the user or service instance.  The "Activated" column indicates
    if the DN or DN range has been activated.  Only has a value if the DN(s) is assigned
    to a user.  Replaced by: ``GroupDnGetAssignmentListResponse18()``

    Attributes:
        dn_table: dnTable
    """

    _ELEMENTS = (
        E("dn_table", "dnTable", list, is_complex=True, is_required=True, is_table=True),
    )

    dn_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDnGetAssignmentListResponse18(OCIResponse):
    """
    Response to the ``GroupDnGetAssignmentListRequest18()``.

    The response contains a table with columns: "Phone Numbers", "Department",
    "Activated", "User Id", "Last Name", "First Name", "Extension", "Email Address", "User
    Type". The "Phone Numbers" column contains either a single DN or a range of DNs.  The
    "User Id", "Last Name" and "First Name" columns contains the corresponding attributes
    of the user possessing the DN(s). For a service instance, "Last Name" contains the
    service instance name and "First Name" column contains the corresponding enumerated
    UserType value.  The "Department" column contains the department of the DN, not the
    department of the user or service instance.  The "Activated" column indicates if the
    DN or DN range has been activated.  Only has a value if the DN(s) is assigned to a
    user.  The "User Type" column contains the corresponding enumerated UserType value.
    NOTE: the same phone number can show up in the list twice if the phone number is being
    used as the group calling line Id.

    Attributes:
        dn_table: dnTable
    """

    _ELEMENTS = (
        E("dn_table", "dnTable", list, is_complex=True, is_required=True, is_table=True),
    )

    dn_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDnGetAvailableListResponse(OCIResponse):
    """
    Response to the ``GroupDnGetAvailableListRequest()``.

    The response contains the list of DNs that are assigned to a group and still available
    for assignment to users or service instances within the group.

    Attributes:
        phone_number: phoneNumber
    """

    _ELEMENTS = (
        E("phone_number", "phoneNumber", str, is_array=True),
    )

    phone_number: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupDnGetAvailableRangesListResponse(OCIResponse):
    """
    Response to the ``GroupDnGetAvailableRangesListRequest()``.

    The response contains the list of group DNs that are not assigned to user, service
    instances or IMRN pool.  The Dns are returned in a list of DNs or DN ranges and
    formated in E164 format for display.

    Attributes:
        phone_number: phoneNumber
    """

    _ELEMENTS = (
        E("phone_number", "phoneNumber", str, is_array=True),
    )

    phone_number: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupDnGetDetailedAvailableListResponse(OCIResponse):
    """
    Response to the ``GroupDnGetDetailedAvailableListRequest()``.

    The response contains a table with columns: "Phone Number", "Department". The "Phone
    Numbers" column contains a single DN. The "Department" column contains the department
    of the DN if the DN is part of the department.  The "Activated" column indicates if
    the DN has been activated.  Only has a value if the DN(s) is assigned to a user or if
    "Group Enable Activation Mode" is enabled.

    Attributes:
        dn_table: dnTable
    """

    _ELEMENTS = (
        E("dn_table", "dnTable", list, is_complex=True, is_required=True, is_table=True),
    )

    dn_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDnGetListResponse(OCIResponse):
    """
    Response to the ``GroupDnGetListRequest()``.

    The response contains the list of DNs assigned to the group.

    Attributes:
        phone_number: phoneNumber
    """

    _ELEMENTS = (
        E("phone_number", "phoneNumber", str, is_array=True),
    )

    phone_number: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupDnGetSummaryListResponse(OCIResponse):
    """
    Response to the ``GroupDnGetSummaryListRequest()``.

    The response contains a table with columns: "Phone Numbers", "Assigned". The "Phone
    Numbers" column contains either a single DN or a range of DNs.  The "Assigned" column
    contains a boolean flag indicating if the DN(s) are currently assigned to a user or
    service instance.  The "Activated" column indicates if the DN or DN range has been
    activated.  Only has a value if the DN(s) is assigned to a user or if "Group Enable
    Activation Mode" is enabled.

    Attributes:
        dn_table: dnTable
    """

    _ELEMENTS = (
        E("dn_table", "dnTable", list, is_complex=True, is_required=True, is_table=True),
    )

    dn_table: "list" = Field(type=list, required=True, mutable=False)


class GroupDomainGetAssignedListResponse(OCIResponse):
    """
    Contains a simple list of all group domain names.


    Attributes:
        group_default_domain: groupDefaultDomain
        domain: domain
    """

    _ELEMENTS = (
        E("group_default_domain", "groupDefaultDomain", str, is_required=True),
        E("domain", "domain", str, is_array=True),
    )

    group_default_domain: str = Field(type=str, required=True, mutable=False)
    domain: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupDomainGetAssignedUserListResponse(OCIResponse):
    """
    Response to ``GroupDomainGetAssignedUserListRequest()``.

    The table columns are: "User Id", "Last Name", "First Name", "Department", "Phone
    Number", "Email Address", "Service Provider Id", "Group Id", "Hiragana Last Name" and
    "Hiragana First Name", "Extension".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupEmergencyZonesGetResponse(OCIResponse):
    """
    Response to ``GroupEmergencyZonesGetRequest()``.


    Attributes:
        is_active: isActive
        emergency_zones_prohibition: emergencyZonesProhibition
        send_emergency_call_notify_email: sendEmergencyCallNotifyEmail
        emergency_call_notify_email_address: emergencyCallNotifyEmailAddress
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("emergency_zones_prohibition", "emergencyZonesProhibition", str, is_required=True),
        E(
            "send_emergency_call_notify_email", "sendEmergencyCallNotifyEmail", bool,
            is_required=True,
        ),
        E("emergency_call_notify_email_address", "emergencyCallNotifyEmailAddress", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    emergency_zones_prohibition: str = Field(type=str, required=True, mutable=False)
    send_emergency_call_notify_email: bool = Field(type=bool, required=True, mutable=False)
    emergency_call_notify_email_address: str = Field(type=str, required=False, mutable=False)


class GroupEndpointGetListResponse(OCIResponse):
    """
    Response to ``GroupEndpointGetListRequest()``.

    The column headings for the endpointTable are: "Line/Port", "Last Name", "First Name",
    "User Id", "User Type", "Phone Number", "Extension", "Device Type", "Device Name",
    "Net Address", "MAC Address", "Department", "Email Address". Possible values for User
    Type are �User�, �CCBasic�, �CCStandard�, �CCPremium�, �RP�, �MOH�, �MOHVideo�.

    Attributes:
        endpoint_table: endpointTable
    """

    _ELEMENTS = (
        E(
            "endpoint_table", "endpointTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    endpoint_table: "list" = Field(type=list, required=True, mutable=False)


class GroupEnterpriseTrunkGetAvailableTrunkGroupListResponse(OCIResponse):
    """
    Response to ``GroupEnterpriseTrunkGetAvailableTrunkGroupListRequest()``.


    Attributes:
        trunk_group_name: trunkGroupName
    """

    _ELEMENTS = (
        E("trunk_group_name", "trunkGroupName", str, is_array=True),
    )

    trunk_group_name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupEnterpriseTrunkGetAvailableUserListResponse(OCIResponse):
    """
    Response to ``GroupEnterpriseTrunkGetAvailableUserListRequest()``.

    The column headings for the enterpriseTrunkUserTable are: "User Id", "Last Name",
    "First Name", "Hiragana Last Name", "Hiragana First Name", "Phone Number",
    "Extension", "Department", "Email Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupEnterpriseTrunkGetListResponse(OCIResponse):
    """
    Response to ``GroupEnterpriseTrunkGetListRequest()``.

    Contains a table of enterprise trunks defined in the enterprise The column headings
    are: "Enterprise Trunk Name", "Routing Type"

    Attributes:
        enterprise_trunk_table: enterpriseTrunkTable
    """

    _ELEMENTS = (
        E(
            "enterprise_trunk_table", "enterpriseTrunkTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    enterprise_trunk_table: "list" = Field(type=list, required=True, mutable=False)


class GroupEnterpriseTrunkGetResponse(OCIResponse):
    """
    Response to ``GroupEnterpriseTrunkGetRequest()``.

    Replaced by: ``GroupEnterpriseTrunkGetResponse21()``.

    Attributes:
        maximum_reroute_attempts: maximumRerouteAttempts
        route_exhaustion_action: routeExhaustionAction
        route_exhaustion_forward_address: routeExhaustionForwardAddress
        ordered_routing: orderedRouting
        priority_weighted_routing: priorityWeightedRouting
    """

    _ELEMENTS = (
        E("maximum_reroute_attempts", "maximumRerouteAttempts", int, is_required=True),
        E("route_exhaustion_action", "routeExhaustionAction", str, is_required=True),
        E("route_exhaustion_forward_address", "routeExhaustionForwardAddress", str),
        E("ordered_routing", "orderedRouting", str, is_complex=True),  # unknown
        E(
            "priority_weighted_routing", "priorityWeightedRouting", str, is_complex=True,
        ),  # unknown
    )

    maximum_reroute_attempts: int = Field(type=int, required=True, mutable=False)
    route_exhaustion_action: str = Field(type=str, required=True, mutable=False)
    route_exhaustion_forward_address: str = Field(type=str, required=False, mutable=False)
    ordered_routing: str = Field(type=str, required=False, mutable=False)
    priority_weighted_routing: str = Field(type=str, required=False, mutable=False)


class GroupEnterpriseTrunkGetResponse21(OCIResponse):
    """
    Response to ``GroupEnterpriseTrunkGetRequest21()``.


    Attributes:
        maximum_reroute_attempts: maximumRerouteAttempts
        route_exhaustion_action: routeExhaustionAction
        route_exhaustion_forward_address: routeExhaustionForwardAddress
        ordered_routing: orderedRouting
        priority_weighted_routing: priorityWeightedRouting
        enable_capacity_management: enableCapacityManagement
        max_active_calls: maxActiveCalls
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
    """

    _ELEMENTS = (
        E("maximum_reroute_attempts", "maximumRerouteAttempts", int, is_required=True),
        E("route_exhaustion_action", "routeExhaustionAction", str, is_required=True),
        E("route_exhaustion_forward_address", "routeExhaustionForwardAddress", str),
        E("ordered_routing", "orderedRouting", str, is_complex=True),  # unknown
        E(
            "priority_weighted_routing", "priorityWeightedRouting", str, is_complex=True,
        ),  # unknown
        E("enable_capacity_management", "enableCapacityManagement", bool, is_required=True),
        E("max_active_calls", "maxActiveCalls", int),
        E("capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls", int),
        E("capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int),
    )

    maximum_reroute_attempts: int = Field(type=int, required=True, mutable=False)
    route_exhaustion_action: str = Field(type=str, required=True, mutable=False)
    route_exhaustion_forward_address: str = Field(type=str, required=False, mutable=False)
    ordered_routing: str = Field(type=str, required=False, mutable=False)
    priority_weighted_routing: str = Field(type=str, required=False, mutable=False)
    enable_capacity_management: bool = Field(type=bool, required=True, mutable=False)
    max_active_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=False, mutable=False)


class GroupEnterpriseTrunkGetUserListResponse(OCIResponse):
    """
    Response to ``GroupEnterpriseTrunkGetUserListRequest()``.

    The column headings for the enterpriseTrunkUserTable are: "User Id", "Last Name",
    "First Name", "Phone Number", "Alternate Trunk Identity", "Hiragana Last Name",
    "Hiragana First Name", "Extension", "Department", "Email Address" and "Route List
    Assigned".

    Attributes:
        enterprise_trunk_user_table: enterpriseTrunkUserTable
    """

    _ELEMENTS = (
        E(
            "enterprise_trunk_user_table", "enterpriseTrunkUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    enterprise_trunk_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupExchangeIntegrationGetResponse(OCIResponse):
    """
    Response to ``GroupExchangeIntegrationGetRequest()``.


    Attributes:
        enable_exchange_integration: enableExchangeIntegration
        exchange_url: exchangeURL
        exchange_user_name: exchangeUserName
    """

    _ELEMENTS = (
        E("enable_exchange_integration", "enableExchangeIntegration", bool, is_required=True),
        E("exchange_url", "exchangeURL", str),
        E("exchange_user_name", "exchangeUserName", str),
    )

    enable_exchange_integration: bool = Field(type=bool, required=True, mutable=False)
    exchange_url: str = Field(type=str, required=False, mutable=False)
    exchange_user_name: str = Field(type=str, required=False, mutable=False)


class GroupExtensionLengthGetResponse(OCIResponse):
    """
    Response to ``GroupExtensionLengthGetRequest()``.


    Attributes:
        extension_length: extensionLength
    """

    _ELEMENTS = (
        E("extension_length", "extensionLength", int, is_required=True),
    )

    extension_length: int = Field(type=int, required=True, mutable=False)


class GroupExtensionLengthGetResponse17(OCIResponse):
    """
    Response to ``GroupExtensionLengthGetRequest17()``.


    Attributes:
        min_extension_length: minExtensionLength
        max_extension_length: maxExtensionLength
        default_extension_length: defaultExtensionLength
    """

    _ELEMENTS = (
        E("min_extension_length", "minExtensionLength", int, is_required=True),
        E("max_extension_length", "maxExtensionLength", int, is_required=True),
        E("default_extension_length", "defaultExtensionLength", int, is_required=True),
    )

    min_extension_length: int = Field(type=int, required=True, mutable=False)
    max_extension_length: int = Field(type=int, required=True, mutable=False)
    default_extension_length: int = Field(type=int, required=True, mutable=False)


class GroupFileRepositoryDeviceUserGetListResponse(OCIResponse):
    """
    Response to ``GroupFileRepositoryDeviceUserGetListRequest()``.

    Contains a table with column headings : "User Name","Allow Delete","Allow Get","Allow
    Put" in a row for each file repository service provider user.

    Attributes:
        file_repository_user_table: fileRepositoryUserTable
    """

    _ELEMENTS = (
        E(
            "file_repository_user_table", "fileRepositoryUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    file_repository_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupFindMeFollowMeAlertingGroupGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupFindMeFollowMeAlertingGroupGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupFindMeFollowMeGetAlertingGroupListResponse(OCIResponse):
    """
    Response to the ``GroupFindMeFollowMeGetAlertingGroupListRequest()``.

    Contains a table with column headings: "Name", "Priority".

    Attributes:
        alerting_group_table: alertingGroupTable
    """

    _ELEMENTS = (
        E(
            "alerting_group_table", "alertingGroupTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    alerting_group_table: "list" = Field(type=list, required=True, mutable=False)


class GroupFindMeFollowMeGetAlertingGroupResponse(OCIResponse):
    """
    Response to ``GroupFindMeFollowMeGetAlertingGroupRequest()``.

    Contains the alerting group information.  The user table’s column headings are: "User
    Id", "Last Name", "First Name", "Hiragana Last Name" and "Hiragana First Name", "Phone
    Number", "Extension", "Department", "Email Address". The criteria table's column
    headings are: "Is Active", "Criteria Name", "Time Schedule", "Calls From",
    "Blacklisted", "Holiday Schedule"", "Calls To Type", "Calls To Number" and "Calls To
    Extension". The possible values for the "Calls To Type" column are the following or a
    combination of them separated by comma: - Primary - Alternate X (where x is a number
    between 1 and 10) The possible values for the "Calls To Number" column are the
    following or a combination of them separated by comma: - The value of the phone number
    for the corresponding Calls To Type, when the number is available.  i.e.  Alternate 1
    may have extension, but no number.  - When no number is available a blank space is
    provided instead.  The possible values for the "Calls To Extension" column are the
    following or a combination of them separated by comma: - The value of the extension
    for the corresponding Calls To Type, when the extension is available.  i.e.  Primary
    may have number, but no extension.  - When no extension is available a blank space is
    provided instead.

    Attributes:
        alerting_group_description: alertingGroupDescription
        use_diversion_inhibitor: useDiversionInhibitor
        answer_confirmation_required: answerConfirmationRequired
        number_of_rings: numberOfRings
        phone_number: phoneNumber
        user_table: userTable
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("alerting_group_description", "alertingGroupDescription", str),
        E("use_diversion_inhibitor", "useDiversionInhibitor", bool, is_required=True),
        E(
            "answer_confirmation_required", "answerConfirmationRequired", bool,
            is_required=True,
        ),
        E("number_of_rings", "numberOfRings", int, is_required=True),
        E("phone_number", "phoneNumber", str, is_array=True),
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    alerting_group_description: str = Field(type=str, required=False, mutable=False)
    use_diversion_inhibitor: bool = Field(type=bool, required=True, mutable=False)
    answer_confirmation_required: bool = Field(type=bool, required=True, mutable=False)
    number_of_rings: int = Field(type=int, required=True, mutable=False)
    phone_number: "List[str]" = Field(type=list, required=False, mutable=False)
    user_table: "list" = Field(type=list, required=True, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class GroupFindMeFollowMeGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupFindMeFollowMeGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Phone Number",
    "Extension", "Department", "Is Active". The column value for "Is Active" can either be
    true, or false.

    Attributes:
        find_me_follow_me_table: findMeFollowMeTable
    """

    _ELEMENTS = (
        E(
            "find_me_follow_me_table", "findMeFollowMeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    find_me_follow_me_table: "list" = Field(type=list, required=True, mutable=False)


class GroupFlexibleSeatingAccessDeviceGetListResponse(OCIResponse):
    """
    Response to ``GroupFlexibleSeatingAccessDeviceGetListRequest()``

    Attributes:
        available_access_device: availableAccessDevice
    """

    _ELEMENTS = (
        E(
            "available_access_device", "availableAccessDevice", str, is_complex=True,
            is_array=True,
        ),  # unknown
    )

    available_access_device: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupFlexibleSeatingHostGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupFlexibleSeatingHostGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Phone Number",
    "Extension", "Department", "Is Active". The column value for "Is Active" can either be
    true, or false.

    Attributes:
        flexible_seating_host_table: flexibleSeatingHostTable
    """

    _ELEMENTS = (
        E(
            "flexible_seating_host_table", "flexibleSeatingHostTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    flexible_seating_host_table: "list" = Field(type=list, required=True, mutable=False)


class GroupFlexibleSeatingHostGuestAssociationGetResponse(OCIResponse):
    """
    Response to ``GroupFlexibleSeatingHostGuestAssociationGetRequest()``.


    Attributes:
        enforce_association_limit: enforceAssociationLimit
        association_limit_hours: associationLimitHours
        access_level: accessLevel
        guest_last_name: guestLastName
        guest_first_name: guestFirstName
        guest_phone_number: guestPhoneNumber
        guest_extension: guestExtension
        guest_location_dialing_code: guestLocationDialingCode
        guest_association_date_time: guestAssociationDateTime
    """

    _ELEMENTS = (
        E("enforce_association_limit", "enforceAssociationLimit", bool, is_required=True),
        E("association_limit_hours", "associationLimitHours", int, is_required=True),
        E("access_level", "accessLevel", str, is_required=True),
        E("guest_last_name", "guestLastName", str),
        E("guest_first_name", "guestFirstName", str),
        E("guest_phone_number", "guestPhoneNumber", str),
        E("guest_extension", "guestExtension", str),
        E("guest_location_dialing_code", "guestLocationDialingCode", str),
        E("guest_association_date_time", "guestAssociationDateTime", str),
    )

    enforce_association_limit: bool = Field(type=bool, required=True, mutable=False)
    association_limit_hours: int = Field(type=int, required=True, mutable=False)
    access_level: str = Field(type=str, required=True, mutable=False)
    guest_last_name: str = Field(type=str, required=False, mutable=False)
    guest_first_name: str = Field(type=str, required=False, mutable=False)
    guest_phone_number: str = Field(type=str, required=False, mutable=False)
    guest_extension: str = Field(type=str, required=False, mutable=False)
    guest_location_dialing_code: str = Field(type=str, required=False, mutable=False)
    guest_association_date_time: str = Field(type=str, required=False, mutable=False)


class GroupFlexibleSeatingHostRoutingPoliciesGetResponse(OCIResponse):
    """
    Response to the ``GroupFlexibleSeatingHostRoutingPoliciesGetRequest()``.


    Attributes:
        allow_emergency_calls: allowEmergencyCalls
        allow_calls_to_voice_portal: allowCallsToVoicePortal
    """

    _ELEMENTS = (
        E("allow_emergency_calls", "allowEmergencyCalls", bool, is_required=True),
        E("allow_calls_to_voice_portal", "allowCallsToVoicePortal", bool, is_required=True),
    )

    allow_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_calls_to_voice_portal: bool = Field(type=bool, required=True, mutable=False)


class GroupGetDefaultResponse(OCIResponse):
    """
    Response to the ``GroupGetDefaultRequest()``.

    All values are default values for a group's profile.

    Attributes:
        default_domain: defaultDomain
        user_limit: userLimit
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
    """

    _ELEMENTS = (
        E("default_domain", "defaultDomain", str, is_required=True),
        E("user_limit", "userLimit", int, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
    )

    default_domain: str = Field(type=str, required=True, mutable=False)
    user_limit: int = Field(type=int, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)


class GroupGetListInServiceProviderResponse(OCIResponse):
    """
    Response to ``GroupGetListInServiceProviderRequest()``.

    Contains a 3 column table with column headings: "Group Id", "Group Name", "User Limit"
    and a row for each group.

    Attributes:
        group_table: groupTable
    """

    _ELEMENTS = (
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    group_table: "list" = Field(type=list, required=True, mutable=False)


class GroupGetListInSystemResponse(OCIResponse):
    """
    Response to ``GroupGetListInSystemRequest()``.

    Contains a table with column headings: "Group Id", "Group Name", "User Limit",
    "Organization Id", "Organization Type" and a row for each group.  The "Organization
    Id" column is populated with either a service provider Id or an enterprise Id.  The
    "Organization Type" column is populated with one of the enumerated strings defined in
    the OrganizationType OCI data type.  Please see OCISchemaDataTypes.xsd for details on
    OrganizationType.

    Attributes:
        group_table: groupTable
    """

    _ELEMENTS = (
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    group_table: "list" = Field(type=list, required=True, mutable=False)


class GroupGetUserServiceAssignedUserListResponse(OCIResponse):
    """
    Return a table containing the list of users assigned the user service or service pack.

    The table contains columns: "User Id", "Last Name", "First Name", "Department", "Phone
    Number", "Email Address", "Hiragana Last Name"; "Hiragana First Name", "Extension".
    This is a response to the ``GroupGetUserServiceAssignedUserListRequest()``.

    Attributes:
        user_list_table: userListTable
    """

    _ELEMENTS = (
        E(
            "user_list_table", "userListTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    user_list_table: "list" = Field(type=list, required=True, mutable=False)


class GroupGroupPagingGetAvailableOriginatorListResponse(OCIResponse):
    """
    Response to the ``GroupGroupPagingGetAvailableOriginatorListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name" and "Hiragana First Name", "Phone Number", "Extension", "Department",
    "Email Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupGroupPagingGetAvailableTargetListResponse(OCIResponse):
    """
    Response to the ``GroupGroupPagingGetAvailableTargetListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name" and "Hiragana First Name", "Phone Number", "Extension", "Department",
    "Email Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupGroupPagingGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupGroupPagingGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Phone Number",
    "Extension", "Department", "Is Active". The column value for "Is Active" can either be
    true, or false.

    Attributes:
        paging_group_table: pagingGroupTable
    """

    _ELEMENTS = (
        E(
            "paging_group_table", "pagingGroupTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    paging_group_table: "list" = Field(type=list, required=True, mutable=False)


class GroupGroupPagingGetOriginatorListResponse(OCIResponse):
    """
    Response to the ``GroupGroupPagingGetOriginatorListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        originator_table: originatorTable
    """

    _ELEMENTS = (
        E(
            "originator_table", "originatorTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    originator_table: "list" = Field(type=list, required=True, mutable=False)


class GroupGroupPagingGetTargetListResponse(OCIResponse):
    """
    Response to the ``GroupGroupPagingGetTargetListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        target_table: targetTable
    """

    _ELEMENTS = (
        E(
            "target_table", "targetTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    target_table: "list" = Field(type=list, required=True, mutable=False)


class GroupGroupPagingTargetsCapacityGetResponse(OCIResponse):
    """
    Response to ``GroupGroupPagingTargetsCapacityGetRequest()``.


    Attributes:
        maximum_target_users_from_service_provider: maximumTargetUsersFromServiceProvider
        maximum_target_users: maximumTargetUsers
    """

    _ELEMENTS = (
        E(
            "maximum_target_users_from_service_provider",
            "maximumTargetUsersFromServiceProvider", int, is_required=True,
        ),
        E("maximum_target_users", "maximumTargetUsers", int, is_required=True),
    )

    maximum_target_users_from_service_provider: int = Field(
        type=int, required=True, mutable=False,
    )
    maximum_target_users: int = Field(type=int, required=True, mutable=False)


class GroupHolidayScheduleGetListResponse(OCIResponse):
    """
    Response to the ``GroupHolidayScheduleGetListRequest()``.

    The response contains all the group's holiday schedule name.

    Attributes:
        holiday_schedule_name: holidayScheduleName
    """

    _ELEMENTS = (
        E("holiday_schedule_name", "holidayScheduleName", str, is_array=True),
    )

    holiday_schedule_name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupHuntGroupGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupHuntGroupGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupHuntGroupGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupHuntGroupGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Phone Number",
    "Extension", "Department", "Is Active", "Policy". The column values for "Is Active"
    can either be true, or false.  NOTE: prior to release 14, the policy column did not
    match the HuntPolicy enumerated type.

    Attributes:
        hunt_group_table: huntGroupTable
    """

    _ELEMENTS = (
        E(
            "hunt_group_table", "huntGroupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    hunt_group_table: "list" = Field(type=list, required=True, mutable=False)


class GroupIMRNGetListResponse(OCIResponse):
    """
    Response to ``GroupIMRNGetListRequest()``.


    Attributes:
        imrn: imrn
    """

    _ELEMENTS = (
        E("imrn", "imrn", str, is_array=True),
    )

    imrn: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupInstantGroupCallGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupInstantGroupCallGetInstanceListRequest()``.

    Contains a 6 column table with column headings: "Service User Id", "Name", "Phone
    Number", "Extension", "Department", "Is Active". The column values for Is Active can
    either be true, or false.

    Attributes:
        instant_group_call_table: instantGroupCallTable
    """

    _ELEMENTS = (
        E(
            "instant_group_call_table", "instantGroupCallTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    instant_group_call_table: "list" = Field(type=list, required=True, mutable=False)


class GroupIntegratedIMPGetResponse(OCIResponse):
    """
    Response to the ``GroupIntegratedIMPGetRequest()``.

    The response contains the group Integrated IMP service attributes.

    Attributes:
        use_service_provider_setting: useServiceProviderSetting
        service_domain: serviceDomain
    """

    _ELEMENTS = (
        E(
            "use_service_provider_setting", "useServiceProviderSetting", bool,
            is_required=True,
        ),
        E("service_domain", "serviceDomain", str),
    )

    use_service_provider_setting: bool = Field(type=bool, required=True, mutable=False)
    service_domain: str = Field(type=str, required=False, mutable=False)


class GroupInterceptGroupGetResponse(OCIResponse):
    """
    Response to the ``GroupInterceptGroupGetRequest()``.

    Replaced By: ``GroupInterceptGroupGetResponse16()``

    Attributes:
        is_active: isActive
        announcement_selection: announcementSelection
        audio_file_description: audioFileDescription
        video_file_description: videoFileDescription
        play_new_phone_number: playNewPhoneNumber
        new_phone_number: newPhoneNumber
        transfer_on_zero_to_phone_number: transferOnZeroToPhoneNumber
        transfer_phone_number: transferPhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("announcement_selection", "announcementSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("video_file_description", "videoFileDescription", str),
        E("play_new_phone_number", "playNewPhoneNumber", bool, is_required=True),
        E("new_phone_number", "newPhoneNumber", str),
        E(
            "transfer_on_zero_to_phone_number", "transferOnZeroToPhoneNumber", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    announcement_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    play_new_phone_number: bool = Field(type=bool, required=True, mutable=False)
    new_phone_number: str = Field(type=str, required=False, mutable=False)
    transfer_on_zero_to_phone_number: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)


class GroupInterceptGroupGetResponse16(OCIResponse):
    """
    Response to the ``GroupInterceptGroupGetRequest16()``.

    Replaced By: ``GroupInterceptGroupGetResponse16sp1()``

    Attributes:
        is_active: isActive
        announcement_selection: announcementSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        play_new_phone_number: playNewPhoneNumber
        new_phone_number: newPhoneNumber
        transfer_on_zero_to_phone_number: transferOnZeroToPhoneNumber
        transfer_phone_number: transferPhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("announcement_selection", "announcementSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("play_new_phone_number", "playNewPhoneNumber", bool, is_required=True),
        E("new_phone_number", "newPhoneNumber", str),
        E(
            "transfer_on_zero_to_phone_number", "transferOnZeroToPhoneNumber", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    announcement_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    play_new_phone_number: bool = Field(type=bool, required=True, mutable=False)
    new_phone_number: str = Field(type=str, required=False, mutable=False)
    transfer_on_zero_to_phone_number: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)


class GroupInterceptGroupGetResponse16sp1(OCIResponse):
    """
    Response to the ``GroupInterceptGroupGetRequest16sp1()``.


    Attributes:
        is_active: isActive
        announcement_selection: announcementSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        play_new_phone_number: playNewPhoneNumber
        new_phone_number: newPhoneNumber
        transfer_on_zero_to_phone_number: transferOnZeroToPhoneNumber
        transfer_phone_number: transferPhoneNumber
        reroute_outbound_calls: rerouteOutboundCalls
        outbound_reroute_phone_number: outboundReroutePhoneNumber
        allow_outbound_local_calls: allowOutboundLocalCalls
        inbound_call_mode: inboundCallMode
        alternate_blocking_announcement: alternateBlockingAnnouncement
        route_to_voice_mail: routeToVoiceMail
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("announcement_selection", "announcementSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("play_new_phone_number", "playNewPhoneNumber", bool, is_required=True),
        E("new_phone_number", "newPhoneNumber", str),
        E(
            "transfer_on_zero_to_phone_number", "transferOnZeroToPhoneNumber", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("reroute_outbound_calls", "rerouteOutboundCalls", bool, is_required=True),
        E("outbound_reroute_phone_number", "outboundReroutePhoneNumber", str),
        E("allow_outbound_local_calls", "allowOutboundLocalCalls", bool, is_required=True),
        E("inbound_call_mode", "inboundCallMode", str, is_required=True),
        E(
            "alternate_blocking_announcement", "alternateBlockingAnnouncement", bool,
            is_required=True,
        ),
        E("route_to_voice_mail", "routeToVoiceMail", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    announcement_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    play_new_phone_number: bool = Field(type=bool, required=True, mutable=False)
    new_phone_number: str = Field(type=str, required=False, mutable=False)
    transfer_on_zero_to_phone_number: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    reroute_outbound_calls: bool = Field(type=bool, required=True, mutable=False)
    outbound_reroute_phone_number: str = Field(type=str, required=False, mutable=False)
    allow_outbound_local_calls: bool = Field(type=bool, required=True, mutable=False)
    inbound_call_mode: str = Field(type=str, required=True, mutable=False)
    alternate_blocking_announcement: bool = Field(type=bool, required=True, mutable=False)
    route_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)


class GroupInventoryReportGetResponse(OCIResponse):
    """
    Response to ``GroupInventoryReportGetRequest()``.


    Attributes:
        inventory_report_table: inventoryReportTable
    """

    _ELEMENTS = (
        E(
            "inventory_report_table", "inventoryReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    inventory_report_table: "list" = Field(type=list, required=True, mutable=False)


class GroupLDAPIntegrationGetDirectoryResponse(OCIResponse):
    """
    Response to ``GroupLDAPIntegrationGetDirectoryRequest()``.


    Attributes:
        use_level: useLevel
        server_net_address: serverNetAddress
        server_port: serverPort
        search_base: searchBase
        use_ssl: useSSL
        require_authentication: requireAuthentication
        authenticated_dn: authenticatedDN
        authenticated_password: authenticatedPassword
        is_sort_enabled: isSortEnabled
        is_paged_result_enabled: isPagedResultEnabled
        search_filter: searchFilter
        include_search_attribute_in_search_filter: includeSearchAttributeInSearchFilter
        column1_attribute_name: column1AttributeName
        column2_attribute_name: column2AttributeName
        column3_attribute_name: column3AttributeName
        column4_attribute_name: column4AttributeName
        column1_label: column1Label
        column2_label: column2Label
        column3_label: column3Label
        column4_label: column4Label
        search_column: searchColumn
    """

    _ELEMENTS = (
        E("use_level", "useLevel", str, is_required=True),
        E("server_net_address", "serverNetAddress", str),
        E("server_port", "serverPort", int, is_required=True),
        E("search_base", "searchBase", str),
        E("use_ssl", "useSSL", bool, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("authenticated_dn", "authenticatedDN", str),
        E("authenticated_password", "authenticatedPassword", str),
        E("is_sort_enabled", "isSortEnabled", bool, is_required=True),
        E("is_paged_result_enabled", "isPagedResultEnabled", bool, is_required=True),
        E("search_filter", "searchFilter", str),
        E(
            "include_search_attribute_in_search_filter",
            "includeSearchAttributeInSearchFilter", bool, is_required=True,
        ),
        E("column1_attribute_name", "column1AttributeName", str, is_required=True),
        E("column2_attribute_name", "column2AttributeName", str),
        E("column3_attribute_name", "column3AttributeName", str),
        E("column4_attribute_name", "column4AttributeName", str),
        E("column1_label", "column1Label", str),
        E("column2_label", "column2Label", str),
        E("column3_label", "column3Label", str),
        E("column4_label", "column4Label", str),
        E("search_column", "searchColumn", int, is_required=True),
    )

    use_level: str = Field(type=str, required=True, mutable=False)
    server_net_address: str = Field(type=str, required=False, mutable=False)
    server_port: int = Field(type=int, required=True, mutable=False)
    search_base: str = Field(type=str, required=False, mutable=False)
    use_ssl: bool = Field(type=bool, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    authenticated_dn: str = Field(type=str, required=False, mutable=False)
    authenticated_password: str = Field(type=str, required=False, mutable=False)
    is_sort_enabled: bool = Field(type=bool, required=True, mutable=False)
    is_paged_result_enabled: bool = Field(type=bool, required=True, mutable=False)
    search_filter: str = Field(type=str, required=False, mutable=False)
    include_search_attribute_in_search_filter: bool = Field(
        type=bool, required=True, mutable=False,
    )
    column1_attribute_name: str = Field(type=str, required=True, mutable=False)
    column2_attribute_name: str = Field(type=str, required=False, mutable=False)
    column3_attribute_name: str = Field(type=str, required=False, mutable=False)
    column4_attribute_name: str = Field(type=str, required=False, mutable=False)
    column1_label: str = Field(type=str, required=False, mutable=False)
    column2_label: str = Field(type=str, required=False, mutable=False)
    column3_label: str = Field(type=str, required=False, mutable=False)
    column4_label: str = Field(type=str, required=False, mutable=False)
    search_column: int = Field(type=int, required=True, mutable=False)


class GroupLDAPIntegrationGetResponse(OCIResponse):
    """
    Response to ``GroupLDAPIntegrationGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class GroupMWIDeliveryToMobileEndpointGetResponse(OCIResponse):
    """
    Response to ``GroupMWIDeliveryToMobileEndpointGetRequest()``.

    The templateActivationTable contains the list of templates defined for the group.  The
    column headings are "Enable", "Language", "Type".

    Attributes:
        use_setting_level: useSettingLevel
        template_activation_table: templateActivationTable
    """

    _ELEMENTS = (
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E(
            "template_activation_table", "templateActivationTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    use_setting_level: str = Field(type=str, required=True, mutable=False)
    template_activation_table: "list" = Field(type=list, required=True, mutable=False)


class GroupMeetMeConferencingGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupMeetMeConferencingGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", and "Hiragana First Name", "Phone Number", "Extension", "Department",
    "Email Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupMeetMeConferencingGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupMeetMeConferencingGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Phone Number",
    "Extension", "Department", "Ports", and "Is Active". The column values for "Is Active"
    can either be true, or false.

    Attributes:
        conference_bridge_table: conferenceBridgeTable
    """

    _ELEMENTS = (
        E(
            "conference_bridge_table", "conferenceBridgeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    conference_bridge_table: "list" = Field(type=list, required=True, mutable=False)


class GroupNetworkClassOfServiceGetAssignedListResponse(OCIResponse):
    """
    Response to ``GroupNetworkClassOfServiceGetAssignedListRequest()``.

    Contains a table of all Network Classes of Service assigned to the group.  The column
    headings are: "Name", "Description" and "Default".

    Attributes:
        network_class_of_service_table: networkClassOfServiceTable
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table", "networkClassOfServiceTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    network_class_of_service_table: "list" = Field(type=list, required=True, mutable=False)


class GroupNetworkClassOfServiceGetAssignedUserListResponse(OCIResponse):
    """
    Response to ``GroupNetworkClassOfServiceGetAssignedUserListRequest()``.

    Contains a table of users that have the Network Class of Service assigned.  The column
    headings are: "User Id", "User Type", "Last Name", "First Name", "Department", "Phone
    Number", "Email Address", "Service Provider Id", "Group Id", "Hiragana Last Name" and
    "Hiragana First Name" , "Extension". Replaced by
    ``GroupNetworkClassOfServiceGetAssignedUserListResponse21()``

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupNetworkClassOfServiceGetAssignedUserListResponse21(OCIResponse):
    """
    Response to ``GroupNetworkClassOfServiceGetAssignedUserListRequest21()``.

    Contains a table of users that have the Network Class of Service assigned.  The column
    headings are: "User Id", "User Type", "Last Name", "First Name", "Department", "Phone
    Number", "Email Address", "Service Provider Id", "Group Id", "Hiragana Last Name" and
    "Hiragana First Name" , "Extension". The User type column will display Auto Attendant
    and the Call Center subtype.  Call Center - Basic, Call Center - Standard and Call
    Center - Premium will be displayed instead of Call Center and Auto Attendant (for the
    Basic Auto Attendant) and Auto Attendant - Standard instead of Auto Attendant.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupOfficeZoneGetAssignedListResponse(OCIResponse):
    """
    Response to ``GroupOfficeZoneGetAssignedListRequest()``.

    Contains a table of all Office Zones assigned to the group.  The column headings are:
    "Name", "Description" and "Default".

    Attributes:
        office_zone_table: officeZoneTable
    """

    _ELEMENTS = (
        E(
            "office_zone_table", "officeZoneTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    office_zone_table: "list" = Field(type=list, required=True, mutable=False)


class GroupOfficeZoneGetAssignedUserListResponse(OCIResponse):
    """
    Response to ``GroupOfiiceZoneGetAssignedUserListRequest()``.

    Contains a table of users that have the Office Zone assigned.  The column headings
    are: "User Id", "User Type", "Last Name", "First Name", "Department", "Phone Number",
    "Email Address", "Hiragana Last Name" and "Hiragana First Name", "Extension". Office
    Zones can only be unassigned if the Location-Based Calling Restrictions has been
    authorized to the group otherwise the request will fail.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupOutgoingCallingPlanPinholeDigitPatternGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanPinholeDigitPatternGetListRequest()``.

    Contains a table with column headings: "Name", "Digit Pattern".

    Attributes:
        digit_pattern_table: digitPatternTable
    """

    _ELEMENTS = (
        E(
            "digit_pattern_table", "digitPatternTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    digit_pattern_table: "list" = Field(type=list, required=True, mutable=False)


class GroupPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``GroupPasswordRulesGetRequest()``.

    Contains the password rules applicable to users within the group.  Repleced by:
    ``GroupPasswordRulesGetResponse16()``

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        disallow_user_id: disallowUserId
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        max_failed_login_attempts: maxFailedLoginAttempts
        password_expires_days: passwordExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
        disallow_rules_modification: disallowRulesModification
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("disallow_user_id", "disallowUserId", bool, is_required=True),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int, is_required=True),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
        E("disallow_rules_modification", "disallowRulesModification", bool, is_required=True),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    disallow_user_id: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    max_failed_login_attempts: int = Field(type=int, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=True, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)
    disallow_rules_modification: bool = Field(type=bool, required=True, mutable=False)


class GroupPasswordRulesGetResponse16(OCIResponse):
    """
    Response to ``GroupPasswordRulesGetRequest16()``.

    Contains the password rules applicable to users within the group.

    Attributes:
        disallow_user_id: disallowUserId
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        max_failed_login_attempts: maxFailedLoginAttempts
        password_expires_days: passwordExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
        disallow_rules_modification: disallowRulesModification
        disallow_previous_passwords: disallowPreviousPasswords
        number_of_previous_passwords: numberOfPreviousPasswords
    """

    _ELEMENTS = (
        E("disallow_user_id", "disallowUserId", bool, is_required=True),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int, is_required=True),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
        E("disallow_rules_modification", "disallowRulesModification", bool, is_required=True),
        E("disallow_previous_passwords", "disallowPreviousPasswords", bool, is_required=True),
        E("number_of_previous_passwords", "numberOfPreviousPasswords", int, is_required=True),
    )

    disallow_user_id: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    max_failed_login_attempts: int = Field(type=int, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=True, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)
    disallow_rules_modification: bool = Field(type=bool, required=True, mutable=False)
    disallow_previous_passwords: bool = Field(type=bool, required=True, mutable=False)
    number_of_previous_passwords: int = Field(type=int, required=True, mutable=False)


class GroupPhoneDirectoryGetListResponse(OCIResponse):
    """
    Response to ``GroupPhoneDirectoryGetListRequest()``.

    Contains a table with a row for each phone number and column headings : "Name",
    "Number", "Extension", "Mobile", "Email Address", "Department", "Hiragana Name",
    "Group Id", "Yahoo Id". If extended directory information is requested, the following
    columns are also included: "First Name", "Last Name", "User Id", "Pager", "Title",
    "Time Zone", "Location", "Address Line 1", "Address Line 2", "City", "State", "Zip",
    "Country". Replace by: ``GroupPhoneDirectoryGetListResponse17()``

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class GroupPhoneDirectoryGetListResponse17(OCIResponse):
    """
    Response to ``GroupPhoneDirectoryGetListRequest17()``.

    Contains a table with a row for each phone number and column headings : "Name",
    "Number", "Extension", "Mobile", "Email Address", "Department", "Hiragana Name",
    "Group Id", "Yahoo Id", "Is Virtual On-Net User" If extended directory information is
    requested, the following columns are also included: "First Name", "Last Name", "User
    Id", "Pager", "Title", "Time Zone", "Location", "Address Line 1", "Address Line 2",
    "City", "State", "Zip", "Country". Replaced by:
    ``GroupPhoneDirectoryGetListResponse18()``

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class GroupPhoneDirectoryGetListResponse17sp3(OCIResponse):
    """
    Response to ``GroupPhoneDirectoryGetListRequest17sp3()``.

    Contains a table with a row for each phone number and column headings : "Name",
    "Number", "Extension", "Mobile", "Email Address", "Department", "Hiragana Name",
    "Group Id", "Yahoo Id", "IMP Id" and "Is Virtual On-Net User" If extended directory
    information is requested, the following columns are also included: "First Name", "Last
    Name", "User Id", "Pager", "Title", "Time Zone", "Location", "Address Line 1",
    "Address Line 2", "City", "State", "Zip", "Country". Replaced by:
    ``GroupPhoneDirectoryGetListResponse18()``

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class GroupPhoneDirectoryGetListResponse18(OCIResponse):
    """
    Response to ``GroupPhoneDirectoryGetListRequest18()``.

    Contains a table with a row for each phone number and column headings : "Name",
    "Number", "Extension", "Mobile", "Email Address", "Department", "Hiragana Name",
    "Group Id", "Yahoo Id", "User Id", "IMP Id" and "Is Virtual On-Net User". If extended
    directory information is requested, the following columns are also included: "First
    Name", "Last Name", "Pager", "Title", "Time Zone", "Location", "Address Line 1",
    "Address Line 2", "City", "State", "Zip", "Country".

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class GroupPolicyGetResponse(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest()``.

    Contains the policy settings for the group.

    Attributes:
        calling_plan_access: callingPlanAccess
        extension_access: extensionAccess
        ldap_integration_access: ldapIntegrationAccess
        voice_messaging_access: voiceMessagingAccess
        department_admin_user_access: departmentAdminUserAccess
        user_authentication_access: userAuthenticationAccess
        user_group_directory_access: userGroupDirectoryAccess
        user_profile_access: userProfileAccess
    """

    _ELEMENTS = (
        E("calling_plan_access", "callingPlanAccess", str, is_required=True),
        E("extension_access", "extensionAccess", str, is_required=True),
        E("ldap_integration_access", "ldapIntegrationAccess", str, is_required=True),
        E("voice_messaging_access", "voiceMessagingAccess", str, is_required=True),
        E("department_admin_user_access", "departmentAdminUserAccess", str, is_required=True),
        E("user_authentication_access", "userAuthenticationAccess", str, is_required=True),
        E("user_group_directory_access", "userGroupDirectoryAccess", str, is_required=True),
        E("user_profile_access", "userProfileAccess", str, is_required=True),
    )

    calling_plan_access: str = Field(type=str, required=True, mutable=False)
    extension_access: str = Field(type=str, required=True, mutable=False)
    ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    user_authentication_access: str = Field(type=str, required=True, mutable=False)
    user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    user_profile_access: str = Field(type=str, required=True, mutable=False)


class GroupPolicyGetResponse14sp1(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest14sp1()``.

    Contains the policy settings for the group.

    Attributes:
        calling_plan_access: callingPlanAccess
        extension_access: extensionAccess
        ldap_integration_access: ldapIntegrationAccess
        voice_messaging_access: voiceMessagingAccess
        department_admin_user_access: departmentAdminUserAccess
        department_admin_trunk_group_access: departmentAdminTrunkGroupAccess
        user_authentication_access: userAuthenticationAccess
        user_group_directory_access: userGroupDirectoryAccess
        user_profile_access: userProfileAccess
    """

    _ELEMENTS = (
        E("calling_plan_access", "callingPlanAccess", str, is_required=True),
        E("extension_access", "extensionAccess", str, is_required=True),
        E("ldap_integration_access", "ldapIntegrationAccess", str, is_required=True),
        E("voice_messaging_access", "voiceMessagingAccess", str, is_required=True),
        E("department_admin_user_access", "departmentAdminUserAccess", str, is_required=True),
        E(
            "department_admin_trunk_group_access", "departmentAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E("user_authentication_access", "userAuthenticationAccess", str, is_required=True),
        E("user_group_directory_access", "userGroupDirectoryAccess", str, is_required=True),
        E("user_profile_access", "userProfileAccess", str, is_required=True),
    )

    calling_plan_access: str = Field(type=str, required=True, mutable=False)
    extension_access: str = Field(type=str, required=True, mutable=False)
    ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    department_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    user_authentication_access: str = Field(type=str, required=True, mutable=False)
    user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    user_profile_access: str = Field(type=str, required=True, mutable=False)


class GroupPolicyGetResponse14sp4(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest14sp4()``.

    Contains the policy settings for the group.

    Attributes:
        calling_plan_access: callingPlanAccess
        extension_access: extensionAccess
        ldap_integration_access: ldapIntegrationAccess
        voice_messaging_access: voiceMessagingAccess
        department_admin_user_access: departmentAdminUserAccess
        department_admin_trunk_group_access: departmentAdminTrunkGroupAccess
        user_authentication_access: userAuthenticationAccess
        user_group_directory_access: userGroupDirectoryAccess
        user_profile_access: userProfileAccess
        user_enhanced_call_log_access: userEnhancedCallLogAccess
    """

    _ELEMENTS = (
        E("calling_plan_access", "callingPlanAccess", str, is_required=True),
        E("extension_access", "extensionAccess", str, is_required=True),
        E("ldap_integration_access", "ldapIntegrationAccess", str, is_required=True),
        E("voice_messaging_access", "voiceMessagingAccess", str, is_required=True),
        E("department_admin_user_access", "departmentAdminUserAccess", str, is_required=True),
        E(
            "department_admin_trunk_group_access", "departmentAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E("user_authentication_access", "userAuthenticationAccess", str, is_required=True),
        E("user_group_directory_access", "userGroupDirectoryAccess", str, is_required=True),
        E("user_profile_access", "userProfileAccess", str, is_required=True),
        E(
            "user_enhanced_call_log_access", "userEnhancedCallLogAccess", str,
            is_required=True,
        ),
    )

    calling_plan_access: str = Field(type=str, required=True, mutable=False)
    extension_access: str = Field(type=str, required=True, mutable=False)
    ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    department_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    user_authentication_access: str = Field(type=str, required=True, mutable=False)
    user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    user_profile_access: str = Field(type=str, required=True, mutable=False)
    user_enhanced_call_log_access: str = Field(type=str, required=True, mutable=False)


class GroupPolicyGetResponse17(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest17()``.

    Contains the policy settings for the group.

    Attributes:
        calling_plan_access: callingPlanAccess
        extension_access: extensionAccess
        ldap_integration_access: ldapIntegrationAccess
        voice_messaging_access: voiceMessagingAccess
        department_admin_user_access: departmentAdminUserAccess
        department_admin_trunk_group_access: departmentAdminTrunkGroupAccess
        department_admin_phone_number_extension_access:
            departmentAdminPhoneNumberExtensionAccess
        department_admin_calling_line_id_number_access:
            departmentAdminCallingLineIdNumberAccess
        user_authentication_access: userAuthenticationAccess
        user_group_directory_access: userGroupDirectoryAccess
        user_profile_access: userProfileAccess
        user_enhanced_call_log_access: userEnhancedCallLogAccess
    """

    _ELEMENTS = (
        E("calling_plan_access", "callingPlanAccess", str, is_required=True),
        E("extension_access", "extensionAccess", str, is_required=True),
        E("ldap_integration_access", "ldapIntegrationAccess", str, is_required=True),
        E("voice_messaging_access", "voiceMessagingAccess", str, is_required=True),
        E("department_admin_user_access", "departmentAdminUserAccess", str, is_required=True),
        E(
            "department_admin_trunk_group_access", "departmentAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "department_admin_phone_number_extension_access",
            "departmentAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "department_admin_calling_line_id_number_access",
            "departmentAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E("user_authentication_access", "userAuthenticationAccess", str, is_required=True),
        E("user_group_directory_access", "userGroupDirectoryAccess", str, is_required=True),
        E("user_profile_access", "userProfileAccess", str, is_required=True),
        E(
            "user_enhanced_call_log_access", "userEnhancedCallLogAccess", str,
            is_required=True,
        ),
    )

    calling_plan_access: str = Field(type=str, required=True, mutable=False)
    extension_access: str = Field(type=str, required=True, mutable=False)
    ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    department_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    department_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    department_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    user_authentication_access: str = Field(type=str, required=True, mutable=False)
    user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    user_profile_access: str = Field(type=str, required=True, mutable=False)
    user_enhanced_call_log_access: str = Field(type=str, required=True, mutable=False)


class GroupPolicyGetResponse20(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest20()``.

    Contains the policy settings for the group.

    Attributes:
        calling_plan_access: callingPlanAccess
        extension_access: extensionAccess
        ldap_integration_access: ldapIntegrationAccess
        voice_messaging_access: voiceMessagingAccess
        department_admin_user_access: departmentAdminUserAccess
        department_admin_trunk_group_access: departmentAdminTrunkGroupAccess
        department_admin_phone_number_extension_access:
            departmentAdminPhoneNumberExtensionAccess
        department_admin_calling_line_id_number_access:
            departmentAdminCallingLineIdNumberAccess
        user_authentication_access: userAuthenticationAccess
        user_group_directory_access: userGroupDirectoryAccess
        user_profile_access: userProfileAccess
        user_enhanced_call_log_access: userEnhancedCallLogAccess
        user_auto_attendant_name_dialing_access: userAutoAttendantNameDialingAccess
    """

    _ELEMENTS = (
        E("calling_plan_access", "callingPlanAccess", str, is_required=True),
        E("extension_access", "extensionAccess", str, is_required=True),
        E("ldap_integration_access", "ldapIntegrationAccess", str, is_required=True),
        E("voice_messaging_access", "voiceMessagingAccess", str, is_required=True),
        E("department_admin_user_access", "departmentAdminUserAccess", str, is_required=True),
        E(
            "department_admin_trunk_group_access", "departmentAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "department_admin_phone_number_extension_access",
            "departmentAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "department_admin_calling_line_id_number_access",
            "departmentAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E("user_authentication_access", "userAuthenticationAccess", str, is_required=True),
        E("user_group_directory_access", "userGroupDirectoryAccess", str, is_required=True),
        E("user_profile_access", "userProfileAccess", str, is_required=True),
        E(
            "user_enhanced_call_log_access", "userEnhancedCallLogAccess", str,
            is_required=True,
        ),
        E(
            "user_auto_attendant_name_dialing_access",
            "userAutoAttendantNameDialingAccess", str, is_required=True,
        ),
    )

    calling_plan_access: str = Field(type=str, required=True, mutable=False)
    extension_access: str = Field(type=str, required=True, mutable=False)
    ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    department_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    department_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    department_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    user_authentication_access: str = Field(type=str, required=True, mutable=False)
    user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    user_profile_access: str = Field(type=str, required=True, mutable=False)
    user_enhanced_call_log_access: str = Field(type=str, required=True, mutable=False)
    user_auto_attendant_name_dialing_access: str = Field(
        type=str, required=True, mutable=False,
    )


class GroupPolycomPhoneServicesGetResponse(OCIResponse):
    """
    Response to ``GroupPolycomPhoneServicesGetRequest()``.


    Attributes:
        include_group_common_phone_list_in_directory:
            includeGroupCommonPhoneListInDirectory
        include_group_custom_contact_directory_in_directory:
            includeGroupCustomContactDirectoryInDirectory
        group_custom_contact_directory: groupCustomContactDirectory
    """

    _ELEMENTS = (
        E(
            "include_group_common_phone_list_in_directory",
            "includeGroupCommonPhoneListInDirectory", bool, is_required=True,
        ),
        E(
            "include_group_custom_contact_directory_in_directory",
            "includeGroupCustomContactDirectoryInDirectory", bool, is_required=True,
        ),
        E("group_custom_contact_directory", "groupCustomContactDirectory", str),
    )

    include_group_common_phone_list_in_directory: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_group_custom_contact_directory_in_directory: bool = Field(
        type=bool, required=True, mutable=False,
    )
    group_custom_contact_directory: str = Field(type=str, required=False, mutable=False)


class GroupPortalPasscodeRulesGetResponse(OCIResponse):
    """
    Response to ``GroupPortalPasscodeRulesGetRequest()``.

    Contains the group's passcode rules setting.

    Attributes:
        use_rule_level: useRuleLevel
        disallow_repeated_digits: disallowRepeatedDigits
        disallow_user_number: disallowUserNumber
        disallow_reversed_user_number: disallowReversedUserNumber
        disallow_old_passcode: disallowOldPasscode
        disallow_reversed_old_passcode: disallowReversedOldPasscode
        min_code_length: minCodeLength
        max_code_length: maxCodeLength
        disable_login_after_max_failed_login_attempts:
            disableLoginAfterMaxFailedLoginAttempts
        max_failed_login_attempts: maxFailedLoginAttempts
        expire_password: expirePassword
        passcode_expires_days: passcodeExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
    """

    _ELEMENTS = (
        E("use_rule_level", "useRuleLevel", str, is_required=True),
        E("disallow_repeated_digits", "disallowRepeatedDigits", bool, is_required=True),
        E("disallow_user_number", "disallowUserNumber", bool, is_required=True),
        E(
            "disallow_reversed_user_number", "disallowReversedUserNumber", bool,
            is_required=True,
        ),
        E("disallow_old_passcode", "disallowOldPasscode", bool, is_required=True),
        E(
            "disallow_reversed_old_passcode", "disallowReversedOldPasscode", bool,
            is_required=True,
        ),
        E("min_code_length", "minCodeLength", int, is_required=True),
        E("max_code_length", "maxCodeLength", int, is_required=True),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts", bool, is_required=True,
        ),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int),
        E("expire_password", "expirePassword", bool, is_required=True),
        E("passcode_expires_days", "passcodeExpiresDays", int),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
    )

    use_rule_level: str = Field(type=str, required=True, mutable=False)
    disallow_repeated_digits: bool = Field(type=bool, required=True, mutable=False)
    disallow_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    min_code_length: int = Field(type=int, required=True, mutable=False)
    max_code_length: int = Field(type=int, required=True, mutable=False)
    disable_login_after_max_failed_login_attempts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_failed_login_attempts: int = Field(type=int, required=False, mutable=False)
    expire_password: bool = Field(type=bool, required=True, mutable=False)
    passcode_expires_days: int = Field(type=int, required=False, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)


class GroupPortalPasscodeRulesGetResponse19(OCIResponse):
    """
    Response to ``GroupPortalPasscodeRulesGetRequest19()``.

    Contains the group's passcode rules setting.  The following elements are only used in
    AS data mode: numberOfRepeatedDigits disallowRepeatedPatterns
    disallowContiguousSequences numberOfAscendingDigits numberOfDescendingDigits
    numberOfPreviousPasscodes

    Attributes:
        use_rule_level: useRuleLevel
        disallow_repeated_digits: disallowRepeatedDigits
        number_of_repeated_digits: numberOfRepeatedDigits
        disallow_repeated_patterns: disallowRepeatedPatterns
        disallow_contiguous_sequences: disallowContiguousSequences
        number_of_ascending_digits: numberOfAscendingDigits
        number_of_descending_digits: numberOfDescendingDigits
        disallow_user_number: disallowUserNumber
        disallow_reversed_user_number: disallowReversedUserNumber
        disallow_old_passcode: disallowOldPasscode
        number_of_previous_passcodes: numberOfPreviousPasscodes
        disallow_reversed_old_passcode: disallowReversedOldPasscode
        min_code_length: minCodeLength
        max_code_length: maxCodeLength
        disable_login_after_max_failed_login_attempts:
            disableLoginAfterMaxFailedLoginAttempts
        max_failed_login_attempts: maxFailedLoginAttempts
        expire_password: expirePassword
        passcode_expires_days: passcodeExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
    """

    _ELEMENTS = (
        E("use_rule_level", "useRuleLevel", str, is_required=True),
        E("disallow_repeated_digits", "disallowRepeatedDigits", bool, is_required=True),
        E("number_of_repeated_digits", "numberOfRepeatedDigits", int, is_required=True),
        E("disallow_repeated_patterns", "disallowRepeatedPatterns", bool, is_required=True),
        E(
            "disallow_contiguous_sequences", "disallowContiguousSequences", bool,
            is_required=True,
        ),
        E("number_of_ascending_digits", "numberOfAscendingDigits", int, is_required=True),
        E("number_of_descending_digits", "numberOfDescendingDigits", int, is_required=True),
        E("disallow_user_number", "disallowUserNumber", bool, is_required=True),
        E(
            "disallow_reversed_user_number", "disallowReversedUserNumber", bool,
            is_required=True,
        ),
        E("disallow_old_passcode", "disallowOldPasscode", bool, is_required=True),
        E("number_of_previous_passcodes", "numberOfPreviousPasscodes", int, is_required=True),
        E(
            "disallow_reversed_old_passcode", "disallowReversedOldPasscode", bool,
            is_required=True,
        ),
        E("min_code_length", "minCodeLength", int, is_required=True),
        E("max_code_length", "maxCodeLength", int, is_required=True),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts", bool, is_required=True,
        ),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int),
        E("expire_password", "expirePassword", bool, is_required=True),
        E("passcode_expires_days", "passcodeExpiresDays", int),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
    )

    use_rule_level: str = Field(type=str, required=True, mutable=False)
    disallow_repeated_digits: bool = Field(type=bool, required=True, mutable=False)
    number_of_repeated_digits: int = Field(type=int, required=True, mutable=False)
    disallow_repeated_patterns: bool = Field(type=bool, required=True, mutable=False)
    disallow_contiguous_sequences: bool = Field(type=bool, required=True, mutable=False)
    number_of_ascending_digits: int = Field(type=int, required=True, mutable=False)
    number_of_descending_digits: int = Field(type=int, required=True, mutable=False)
    disallow_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    number_of_previous_passcodes: int = Field(type=int, required=True, mutable=False)
    disallow_reversed_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    min_code_length: int = Field(type=int, required=True, mutable=False)
    max_code_length: int = Field(type=int, required=True, mutable=False)
    disable_login_after_max_failed_login_attempts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_failed_login_attempts: int = Field(type=int, required=False, mutable=False)
    expire_password: bool = Field(type=bool, required=True, mutable=False)
    passcode_expires_days: int = Field(type=int, required=False, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)


class GroupPreAlertingAnnouncementGetResponse(OCIResponse):
    """
    Get the group level pre-alerting service settings.

    The response is either a ``GroupPreAlertingAnnouncementGetResponse()`` or an
    ``ErrorResponse()``.

    Attributes:
        announcement_interruption: announcementInterruption
        interruption_digit_sequence: interruptionDigitSequence
        audio_selection: audioSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        video_file_url: videoFileUrl
    """

    _ELEMENTS = (
        E("announcement_interruption", "announcementInterruption", str, is_required=True),
        E("interruption_digit_sequence", "interruptionDigitSequence", str),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("video_file_url", "videoFileUrl", str),
    )

    announcement_interruption: str = Field(type=str, required=True, mutable=False)
    interruption_digit_sequence: str = Field(type=str, required=False, mutable=False)
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)


class GroupRouteListEnterpriseTrunkNumberRangeGetAvailableListResponse(OCIResponse):
    """
    Response to ``GroupRouteListEnterpriseTrunkNumberRangeGetAvailableListRequest()``.

    Contains a list of number ranges that are assigned to a group and still available for
    assignment to users within the group.  The column headings are "Number Range Start",
    "Number Range End" and "Is Active".

    Attributes:
        available_number_range_table: availableNumberRangeTable
    """

    _ELEMENTS = (
        E(
            "available_number_range_table", "availableNumberRangeTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    available_number_range_table: "list" = Field(type=list, required=True, mutable=False)


class GroupRouteListEnterpriseTrunkNumberRangeGetSummaryListResponse(OCIResponse):
    """
    Response to ``GroupRouteListEnterpriseTrunkNumberRangeGetSummaryListRequest()``.

    The response contains a table with columns: "Number Range Start", "Number Range End",
    "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana First Name",
    "Phone Number", "Extension", "Department", "Email Address", "Enterprise Trunk" and "Is
    Active". The "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Phone Number", "Extension", "Department" and "Email Address" columns
    contains the corresponding attributes of the user possessing the number range.  The
    "Enterprise Trunk" column contains the enterprise trunk the user possessing the number
    range belongs to.  The "Is Active" column indicates if the number range has been
    activated.

    Attributes:
        number_range_summary_table: numberRangeSummaryTable
    """

    _ELEMENTS = (
        E(
            "number_range_summary_table", "numberRangeSummaryTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    number_range_summary_table: "list" = Field(type=list, required=True, mutable=False)


class GroupRoutePointBouncedCallGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointBouncedCallGetRequest()``.


    Attributes:
        is_active: isActive
        number_of_rings_before_bouncing_call: numberOfRingsBeforeBouncingCall
        enable_transfer: enableTransfer
        transfer_phone_number: transferPhoneNumber
        bounce_call_when_agent_unavailable: bounceCallWhenAgentUnavailable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "number_of_rings_before_bouncing_call", "numberOfRingsBeforeBouncingCall",
            int, is_required=True,
        ),
        E("enable_transfer", "enableTransfer", bool),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "bounce_call_when_agent_unavailable", "bounceCallWhenAgentUnavailable", bool,
            is_required=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    number_of_rings_before_bouncing_call: int = Field(type=int, required=True, mutable=False)
    enable_transfer: bool = Field(type=bool, required=False, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    bounce_call_when_agent_unavailable: bool = Field(type=bool, required=True, mutable=False)


class GroupRoutePointDistinctiveRingingGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointDistinctiveRingingGetRequest()``.


    Attributes:
        enable_distinctive_ringing: enableDistinctiveRinging
        distinctive_ringing_ring_pattern: distinctiveRingingRingPattern
        distinctive_ringing_force_delivery_ring_pattern:
            distinctiveRingingForceDeliveryRingPattern
    """

    _ELEMENTS = (
        E("enable_distinctive_ringing", "enableDistinctiveRinging", bool, is_required=True),
        E(
            "distinctive_ringing_ring_pattern", "distinctiveRingingRingPattern", str,
            is_required=True,
        ),
        E(
            "distinctive_ringing_force_delivery_ring_pattern",
            "distinctiveRingingForceDeliveryRingPattern", str, is_required=True,
        ),
    )

    enable_distinctive_ringing: bool = Field(type=bool, required=True, mutable=False)
    distinctive_ringing_ring_pattern: str = Field(type=str, required=True, mutable=False)
    distinctive_ringing_force_delivery_ring_pattern: str = Field(
        type=str, required=True, mutable=False,
    )


class GroupRoutePointExternalSystemGetAssignedListResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointExternalSystemGetAssignedListRequest()``.

    Contains a table of all Route Point External Systems assigned to the group.  The
    column headings are: "Name" and "Description".

    Attributes:
        external_system_table: externalSystemTable
    """

    _ELEMENTS = (
        E(
            "external_system_table", "externalSystemTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    external_system_table: "list" = Field(type=list, required=True, mutable=False)


class GroupRoutePointExternalSystemGetAssignedRoutePointListResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointExternalSystemGetAssignedRoutePointListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Video", "Phone
    Number", "Extension", "Department". The column values for "Video" can either be
    "true", or "false".

    Attributes:
        route_point_table: routePointTable
    """

    _ELEMENTS = (
        E(
            "route_point_table", "routePointTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    route_point_table: "list" = Field(type=list, required=True, mutable=False)


class GroupRoutePointGetDNISAgentListResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISAgentListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        agent_table: agentTable
    """

    _ELEMENTS = (
        E(
            "agent_table", "agentTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    agent_table: "list" = Field(type=list, required=True, mutable=False)


class GroupRoutePointGetDNISListResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISListRequest()``.

    Contains a table with column headings: "Name", "Phone Number", "Extension".

    Attributes:
        display_dnis_number: displayDNISNumber
        display_dnis_name: displayDNISName
        dnis_table: dnisTable
    """

    _ELEMENTS = (
        E("display_dnis_number", "displayDNISNumber", bool, is_required=True),
        E("display_dnis_name", "displayDNISName", bool, is_required=True),
        E("dnis_table", "dnisTable", list, is_complex=True, is_required=True, is_table=True),
    )

    display_dnis_number: bool = Field(type=bool, required=True, mutable=False)
    display_dnis_name: bool = Field(type=bool, required=True, mutable=False)
    dnis_table: "list" = Field(type=list, required=True, mutable=False)


class GroupRoutePointGetDNISResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISRequest()``.


    Attributes:
        dnis_phone_number: dnisPhoneNumber
        extension: extension
        use_custom_clid_settings: useCustomCLIDSettings
        calling_line_id_phone_number: callingLineIdPhoneNumber
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        use_custom_dnis_announcement_settings: useCustomDnisAnnouncementSettings
        allow_outgoing_acd_call: allowOutgoingACDCall
    """

    _ELEMENTS = (
        E("dnis_phone_number", "dnisPhoneNumber", str),
        E("extension", "extension", str),
        E("use_custom_clid_settings", "useCustomCLIDSettings", bool, is_required=True),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("calling_line_id_last_name", "callingLineIdLastName", str),
        E("calling_line_id_first_name", "callingLineIdFirstName", str),
        E(
            "use_custom_dnis_announcement_settings", "useCustomDnisAnnouncementSettings",
            bool, is_required=True,
        ),
        E("allow_outgoing_acd_call", "allowOutgoingACDCall", bool, is_required=True),
    )

    dnis_phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    use_custom_clid_settings: bool = Field(type=bool, required=True, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=False, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=False, mutable=False)
    use_custom_dnis_announcement_settings: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_outgoing_acd_call: bool = Field(type=bool, required=True, mutable=False)


class GroupRoutePointGetFailoverPolicyResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetFailoverPolicyRequest()``.


    Attributes:
        enable_failover_support: enableFailoverSupport
        external_system: externalSystem
        failover_phone_number: failoverPhoneNumber
        failover_status: failoverStatus
        per_call_enable_failover_support: perCallEnableFailoverSupport
        per_call_call_failure_timeout_seconds: perCallCallFailureTimeoutSeconds
        per_call_outbound_call_failure_timeout_seconds:
            perCallOutboundCallFailureTimeoutSeconds
        per_call_failover_phone_number: perCallFailoverPhoneNumber
    """

    _ELEMENTS = (
        E("enable_failover_support", "enableFailoverSupport", bool, is_required=True),
        E("external_system", "externalSystem", str),
        E("failover_phone_number", "failoverPhoneNumber", str),
        E("failover_status", "failoverStatus", str, is_required=True),
        E(
            "per_call_enable_failover_support", "perCallEnableFailoverSupport", bool,
            is_required=True,
        ),
        E(
            "per_call_call_failure_timeout_seconds", "perCallCallFailureTimeoutSeconds",
            int, is_required=True,
        ),
        E(
            "per_call_outbound_call_failure_timeout_seconds",
            "perCallOutboundCallFailureTimeoutSeconds", int, is_required=True,
        ),
        E("per_call_failover_phone_number", "perCallFailoverPhoneNumber", str),
    )

    enable_failover_support: bool = Field(type=bool, required=True, mutable=False)
    external_system: str = Field(type=str, required=False, mutable=False)
    failover_phone_number: str = Field(type=str, required=False, mutable=False)
    failover_status: str = Field(type=str, required=True, mutable=False)
    per_call_enable_failover_support: bool = Field(type=bool, required=True, mutable=False)
    per_call_call_failure_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    per_call_outbound_call_failure_timeout_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    per_call_failover_phone_number: str = Field(type=str, required=False, mutable=False)


class GroupRoutePointGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Video", "Phone
    Number", "Extension", "Department", "Is Active". The column values for "Video" and "Is
    Active" can either be true, or false.

    Attributes:
        route_point_table: routePointTable
    """

    _ELEMENTS = (
        E(
            "route_point_table", "routePointTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    route_point_table: "list" = Field(type=list, required=True, mutable=False)


class GroupRoutePointQueueCallDispositionCodeGetListResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointQueueCallDispositionCodeGetListRequest()``.

    Contains a table with column headings: "Is Active", "Code", "Description" and "Level".
    Level column can be any of the values in the data type CallDispositionCodeLevel.

    Attributes:
        disposition_codes_table: dispositionCodesTable
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table", "dispositionCodesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    disposition_codes_table: "list" = Field(type=list, required=True, mutable=False)


class GroupRoutePointQueueCallDispositionCodeGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointQueueCallDispositionCodeGetRequest()``

    Attributes:
        is_active: isActive
        description: description
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("description", "description", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class GroupRoutingProfileGetResponse(OCIResponse):
    """
    Response to ``GroupRoutingProfileGetRequest()``.


    Attributes:
        routing_profile: routingProfile
    """

    _ELEMENTS = (
        E("routing_profile", "routingProfile", str),
    )

    routing_profile: str = Field(type=str, required=False, mutable=False)


class GroupScheduleGetEventListResponse(OCIResponse):
    """
    Response to ``GroupScheduleGetEventListRequest()``.

    The response contains a list of events.

    Attributes:
        event_name: eventName
    """

    _ELEMENTS = (
        E("event_name", "eventName", str, is_array=True),
    )

    event_name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupScheduleGetListResponse(OCIResponse):
    """
    Response to ``GroupScheduleGetListRequest()``.

    The response contains a list of system schedules.

    Attributes:
        schedule_name: scheduleName
        schedule_type: scheduleType
        schedule_level: scheduleLevel
    """

    _ELEMENTS = (
        E("schedule_name", "scheduleName", str, is_array=True),
        E("schedule_type", "scheduleType", str, is_array=True),
        E("schedule_level", "scheduleLevel", str, is_array=True),
    )

    schedule_name: "List[str]" = Field(type=list, required=False, mutable=False)
    schedule_type: "List[str]" = Field(type=list, required=False, mutable=False)
    schedule_level: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupSeriesCompletionGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``GroupSeriesCompletionGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupSeriesCompletionGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupSeriesCompletionGetInstanceListRequest()``.


    Attributes:
        name: name
    """

    _ELEMENTS = (
        E("name", "name", str, is_array=True),
    )

    name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupSeriesCompletionGetInstanceResponse(OCIResponse):
    """
    Response to the ``GroupSeriesCompletionGetInstanceRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupServiceGetAuthorizationListResponse(OCIResponse):
    """
    Response to ``GroupServiceGetAuthorizationListRequest()``.

    Contains three tables, one for the service packs, one for the group services, and one
    for the user services.  The user table has the following column headings: "Service
    Name", "Authorized", "Assigned", "Limited", "Quantity", "Usage", "Licensed",
    "Allowed", "User Assignable", "Group Service Assignable". The group service table has
    the following column headings: "Service Name", "Authorized", "Assigned", "Limited",
    "Quantity", "Usage", "Licensed", "Allowed". The service pack table's column headings
    are: "Service Pack Name", "Authorized", "Assigned", "Limited", "Allocated", "Allowed",
    "Usage", "Description".

    Attributes:
        service_packs_authorization_table: servicePacksAuthorizationTable
        group_services_authorization_table: groupServicesAuthorizationTable
        user_services_authorization_table: userServicesAuthorizationTable
    """

    _ELEMENTS = (
        E(
            "service_packs_authorization_table", "servicePacksAuthorizationTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "group_services_authorization_table", "groupServicesAuthorizationTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "user_services_authorization_table", "userServicesAuthorizationTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    service_packs_authorization_table: "list" = Field(type=list, required=True, mutable=False)
    group_services_authorization_table: "list" = Field(
        type=list, required=True, mutable=False,
    )
    user_services_authorization_table: "list" = Field(type=list, required=True, mutable=False)


class GroupServiceGetAuthorizedListResponse(OCIResponse):
    """
    Response to ``GroupServiceGetAuthorizedListRequest()``.


    Attributes:
        service_pack_name: servicePackName
        group_service_name: groupServiceName
        user_service_name: userServiceName
    """

    _ELEMENTS = (
        E("service_pack_name", "servicePackName", str, is_array=True),
        E("group_service_name", "groupServiceName", str, is_array=True),
        E("user_service_name", "userServiceName", str, is_array=True),
    )

    service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    group_service_name: "List[str]" = Field(type=list, required=False, mutable=False)
    user_service_name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupServiceInstancePrivacyGetResponse(OCIResponse):
    """
    Response to ``GroupServiceInstancePrivacyGetRequest()``.

    Replaced by: ``GroupServiceInstancePrivacyGetResponse17sp4()``

    Attributes:
        enable_directory_privacy: enableDirectoryPrivacy
        enable_auto_attendant_extension_dialing_privacy:
            enableAutoAttendantExtensionDialingPrivacy
    """

    _ELEMENTS = (
        E("enable_directory_privacy", "enableDirectoryPrivacy", bool, is_required=True),
        E(
            "enable_auto_attendant_extension_dialing_privacy",
            "enableAutoAttendantExtensionDialingPrivacy", bool, is_required=True,
        ),
    )

    enable_directory_privacy: bool = Field(type=bool, required=True, mutable=False)
    enable_auto_attendant_extension_dialing_privacy: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupServiceInstancePrivacyGetResponse17sp4(OCIResponse):
    """
    Response to ``GroupServiceInstancePrivacyGetRequest17sp4()``.


    Attributes:
        enable_directory_privacy: enableDirectoryPrivacy
        enable_auto_attendant_extension_dialing_privacy:
            enableAutoAttendantExtensionDialingPrivacy
        enable_auto_attendant_name_dialing_privacy: enableAutoAttendantNameDialingPrivacy
    """

    _ELEMENTS = (
        E("enable_directory_privacy", "enableDirectoryPrivacy", bool, is_required=True),
        E(
            "enable_auto_attendant_extension_dialing_privacy",
            "enableAutoAttendantExtensionDialingPrivacy", bool, is_required=True,
        ),
        E(
            "enable_auto_attendant_name_dialing_privacy",
            "enableAutoAttendantNameDialingPrivacy", bool, is_required=True,
        ),
    )

    enable_directory_privacy: bool = Field(type=bool, required=True, mutable=False)
    enable_auto_attendant_extension_dialing_privacy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_auto_attendant_name_dialing_privacy: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupServiceIsAssignedResponse(OCIResponse):
    """
    Returns true if the GroupService is assigned, otherwise false.


    Attributes:
        is_assigned: isAssigned
    """

    _ELEMENTS = (
        E("is_assigned", "isAssigned", bool, is_required=True),
    )

    is_assigned: bool = Field(type=bool, required=True, mutable=False)


class GroupServicePhoneNumberLookupResponse(OCIResponse):
    """
    Response to the ``GroupServicePhoneNumberLookupRequest()``.

    The column headings for the userTable are: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Phone Number", "Extension" and
    "Department".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupServiceScriptsGroupGetLogResponse(OCIResponse):
    """
    Response to ``GroupServiceScriptsGroupGetLogRequest()``.


    Attributes:
        log_content: logContent
    """

    _ELEMENTS = (
        E("log_content", "logContent", str),
    )

    log_content: str = Field(type=str, required=False, mutable=False)


class GroupServiceScriptsGroupGetResponse(OCIResponse):
    """
    Response to ``GroupServiceScriptsGroupGetRequest()``.


    Attributes:
        is_active: isActive
        script_name: scriptName
        script_content: scriptContent
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("script_name", "scriptName", str),
        E("script_content", "scriptContent", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    script_name: str = Field(type=str, required=False, mutable=False)
    script_content: str = Field(type=str, required=False, mutable=False)


class GroupSessionAdmissionControlGetResponse(OCIResponse):
    """
    Response to the ``GroupSessionAdmissionControlGetRequest()``.

    The response contains the session admission control capacity allocated for the group.

    Attributes:
        restrict_aggregate_sessions: restrictAggregateSessions
        max_sessions: maxSessions
        max_user_originating_sessions: maxUserOriginatingSessions
        max_user_terminating_sessions: maxUserTerminatingSessions
        count_intra_group_sessions: countIntraGroupSessions
    """

    _ELEMENTS = (
        E("restrict_aggregate_sessions", "restrictAggregateSessions", bool, is_required=True),
        E("max_sessions", "maxSessions", int),
        E("max_user_originating_sessions", "maxUserOriginatingSessions", int),
        E("max_user_terminating_sessions", "maxUserTerminatingSessions", int),
        E("count_intra_group_sessions", "countIntraGroupSessions", bool, is_required=True),
    )

    restrict_aggregate_sessions: bool = Field(type=bool, required=True, mutable=False)
    max_sessions: int = Field(type=int, required=False, mutable=False)
    max_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    max_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    count_intra_group_sessions: bool = Field(type=bool, required=True, mutable=False)


class GroupSessionAdmissionControlGroupGetListResponse(OCIResponse):
    """
    Response to ``GroupSessionAdmissionControlGroupGetListRequest()``.

    Contains a table of session admission control group configured in the group.  The
    column headings are: "Name", "Is Default", "Maximum Sessions", "Maximum Originating
    Sessions", "Maximum Terminating Sessions".

    Attributes:
        session_admission_control_group_table: sessionAdmissionControlGroupTable
    """

    _ELEMENTS = (
        E(
            "session_admission_control_group_table", "sessionAdmissionControlGroupTable",
            list, is_complex=True, is_required=True, is_table=True,
        ),
    )

    session_admission_control_group_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class GroupSpeedDial100GetResponse(OCIResponse):
    """
    Response to the ``GroupSpeedDial100GetRequest()``.


    Attributes:
        prefix: prefix
    """

    _ELEMENTS = (
        E("prefix", "prefix", str, is_required=True),
    )

    prefix: str = Field(type=str, required=True, mutable=False)


class GroupSpeedDial100GetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupSpeedDial100GetRequest17sp1()``.


    Attributes:
        prefix: prefix
    """

    _ELEMENTS = (
        E("prefix", "prefix", str),
    )

    prefix: str = Field(type=str, required=False, mutable=False)


class GroupThirdPartyVoiceMailSupportGetResponse(OCIResponse):
    """
    Response to ``GroupThirdPartyVoiceMailSupportGetRequest()``.


    Attributes:
        is_active: isActive
        group_server: groupServer
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("group_server", "groupServer", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    group_server: str = Field(type=str, required=False, mutable=False)


class GroupTimeScheduleGetListResponse(OCIResponse):
    """
    Response to the ``GroupTimeScheduleGetListRequest()``.

    The response contains all the group's time schedule name.

    Attributes:
        time_schedule: timeSchedule
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", str, is_array=True),
    )

    time_schedule: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupTrunkGroupGetAvailableDetailListResponse(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetAvailableDetailListRequest()``.


    Attributes:
        trunk_group: trunkGroup
    """

    _ELEMENTS = (
        E("trunk_group", "trunkGroup", str, is_complex=True, is_array=True),  # unknown
    )

    trunk_group: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupTrunkGroupGetAvailableHostedUserListResponse(OCIResponse):
    """
    Response to the ``GroupTrunkGroupGetAvailableHostedUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupTrunkGroupGetInstanceListResponse14(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceListRequest14()``.

    Contains a table with column headings "Service User Id", "Name", "Department", "Device
    Name", "Device Level", "Group Id". The "Device Level" column contains one of the
    AccessDeviceLevel enumerated constants.

    Attributes:
        trunk_group_table: trunkGroupTable
    """

    _ELEMENTS = (
        E(
            "trunk_group_table", "trunkGroupTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    trunk_group_table: "list" = Field(type=list, required=True, mutable=False)


class GroupTrunkGroupGetInstanceListResponse14sp4(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceListRequest14sp4()``.

    Contains a table with column headings "Name", "Department", "Device Name", "Device
    Level", "Group Id". The "Device Level" column contains one of the AccessDeviceLevel
    enumerated constants.

    Attributes:
        trunk_group_table: trunkGroupTable
    """

    _ELEMENTS = (
        E(
            "trunk_group_table", "trunkGroupTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    trunk_group_table: "list" = Field(type=list, required=True, mutable=False)


class GroupTrunkGroupGetInstanceUserListResponse(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceUserListRequest()``.

    The response contains a 7 column table with column headings "User Id", "Last Name",
    "First Name", "Department", "Phone Number", "Hiragana Last Name", "Hiragana First
    Name".

    Attributes:
        trunk_group_user_table: trunkGroupUserTable
    """

    _ELEMENTS = (
        E(
            "trunk_group_user_table", "trunkGroupUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    trunk_group_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupTrunkGroupGetInstanceUserListResponse14sp4(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceUserListRequest14sp4()``.

    The response contains a 9 column table with column headings "User Id", "Last Name",
    "First Name", "Department", "Phone Number", "Hiragana Last Name", "Hiragana First
    Name", "Extension", "Email Address".

    Attributes:
        trunk_group_user_table: trunkGroupUserTable
    """

    _ELEMENTS = (
        E(
            "trunk_group_user_table", "trunkGroupUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    trunk_group_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupTrunkGroupSecurityClassificationGetResponse(OCIResponse):
    """
    Response to the ``GroupTrunkGroupSecurityClassificationGetRequest()``.


    Attributes:
        default_security_classification: defaultSecurityClassification
    """

    _ELEMENTS = (
        E("default_security_classification", "defaultSecurityClassification", str),
    )

    default_security_classification: str = Field(type=str, required=False, mutable=False)


class GroupTrunkGroupUserCreationTaskGetListResponse(OCIResponse):
    """
    Response to ``GroupTrunkGroupUserCreationTaskGetListRequest()``.

    Contains a table with a row for each user creation task and column headings : "Name",
    "Status", "Users Created", "Total Users To Create", "Error Count".

    Attributes:
        task_table: taskTable
    """

    _ELEMENTS = (
        E("task_table", "taskTable", list, is_complex=True, is_required=True, is_table=True),
    )

    task_table: "list" = Field(type=list, required=True, mutable=False)


class GroupTrunkGroupUserCreationTaskGetListResponse14sp4(OCIResponse):
    """
    Response to ``GroupTrunkGroupUserCreationTaskGetListRequest14sp4()``.

    Contains a table with a row for each user creation task and column headings : "Name",
    "Status", "Users Created", "Total Users To Create", "Error Count".

    Attributes:
        task_table: taskTable
    """

    _ELEMENTS = (
        E("task_table", "taskTable", list, is_complex=True, is_required=True, is_table=True),
    )

    task_table: "list" = Field(type=list, required=True, mutable=False)


class GroupTrunkGroupUserCreationTaskGetResponse(OCIResponse):
    """
    Response to a ``GroupTrunkGroupUserCreationTaskGetRequest()``.


    Attributes:
        user_id_format: userIdFormat
        user_id_domain: userIdDomain
        populate_extension: populateExtension
        line_port_format: linePortFormat
        line_port_domain: linePortDomain
        populate_contact: populateContact
        contact_format: contactFormat
        contact_domain: contactDomain
        users_created: usersCreated
        total_users_to_create: totalUsersToCreate
        error_count: errorCount
        service_pack_name: servicePackName
        user_service_name: userServiceName
        status: status
        user_creation_mode: userCreationMode
        task_summary: taskSummary
    """

    _ELEMENTS = (
        E("user_id_format", "userIdFormat", str, is_required=True),
        E("user_id_domain", "userIdDomain", str, is_required=True),
        E("populate_extension", "populateExtension", bool, is_required=True),
        E("line_port_format", "linePortFormat", str, is_required=True),
        E("line_port_domain", "linePortDomain", str, is_required=True),
        E("populate_contact", "populateContact", bool, is_required=True),
        E("contact_format", "contactFormat", str),
        E("contact_domain", "contactDomain", str),
        E("users_created", "usersCreated", int, is_required=True),
        E("total_users_to_create", "totalUsersToCreate", int, is_required=True),
        E("error_count", "errorCount", int, is_required=True),
        E("service_pack_name", "servicePackName", str, is_array=True),
        E("user_service_name", "userServiceName", str, is_array=True),
        E("status", "status", str, is_required=True),
        E("user_creation_mode", "userCreationMode", str, is_required=True),
        E("task_summary", "taskSummary", str, is_required=True),
    )

    user_id_format: str = Field(type=str, required=True, mutable=False)
    user_id_domain: str = Field(type=str, required=True, mutable=False)
    populate_extension: bool = Field(type=bool, required=True, mutable=False)
    line_port_format: str = Field(type=str, required=True, mutable=False)
    line_port_domain: str = Field(type=str, required=True, mutable=False)
    populate_contact: bool = Field(type=bool, required=True, mutable=False)
    contact_format: str = Field(type=str, required=False, mutable=False)
    contact_domain: str = Field(type=str, required=False, mutable=False)
    users_created: int = Field(type=int, required=True, mutable=False)
    total_users_to_create: int = Field(type=int, required=True, mutable=False)
    error_count: int = Field(type=int, required=True, mutable=False)
    service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    user_service_name: "List[str]" = Field(type=list, required=False, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    user_creation_mode: str = Field(type=str, required=True, mutable=False)
    task_summary: str = Field(type=str, required=True, mutable=False)


class GroupTrunkGroupUserCreationTaskGetResponse14sp4(OCIResponse):
    """
    Response to a ``GroupTrunkGroupUserCreationTaskGetRequest14sp4()``.


    Attributes:
        user_id_format: userIdFormat
        user_id_domain: userIdDomain
        populate_extension: populateExtension
        line_port_format: linePortFormat
        line_port_domain: linePortDomain
        populate_contact: populateContact
        contact_format: contactFormat
        contact_domain: contactDomain
        users_created: usersCreated
        total_users_to_create: totalUsersToCreate
        error_count: errorCount
        service_pack_name: servicePackName
        user_service_name: userServiceName
        status: status
        user_creation_mode: userCreationMode
        task_summary: taskSummary
        report_file_key: reportFileKey
    """

    _ELEMENTS = (
        E("user_id_format", "userIdFormat", str, is_required=True),
        E("user_id_domain", "userIdDomain", str, is_required=True),
        E("populate_extension", "populateExtension", bool, is_required=True),
        E("line_port_format", "linePortFormat", str, is_required=True),
        E("line_port_domain", "linePortDomain", str, is_required=True),
        E("populate_contact", "populateContact", bool, is_required=True),
        E("contact_format", "contactFormat", str),
        E("contact_domain", "contactDomain", str),
        E("users_created", "usersCreated", int, is_required=True),
        E("total_users_to_create", "totalUsersToCreate", int, is_required=True),
        E("error_count", "errorCount", int, is_required=True),
        E("service_pack_name", "servicePackName", str, is_array=True),
        E("user_service_name", "userServiceName", str, is_array=True),
        E("status", "status", str, is_required=True),
        E("user_creation_mode", "userCreationMode", str, is_required=True),
        E("task_summary", "taskSummary", str, is_required=True),
        E("report_file_key", "reportFileKey", str, is_required=True),
    )

    user_id_format: str = Field(type=str, required=True, mutable=False)
    user_id_domain: str = Field(type=str, required=True, mutable=False)
    populate_extension: bool = Field(type=bool, required=True, mutable=False)
    line_port_format: str = Field(type=str, required=True, mutable=False)
    line_port_domain: str = Field(type=str, required=True, mutable=False)
    populate_contact: bool = Field(type=bool, required=True, mutable=False)
    contact_format: str = Field(type=str, required=False, mutable=False)
    contact_domain: str = Field(type=str, required=False, mutable=False)
    users_created: int = Field(type=int, required=True, mutable=False)
    total_users_to_create: int = Field(type=int, required=True, mutable=False)
    error_count: int = Field(type=int, required=True, mutable=False)
    service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    user_service_name: "List[str]" = Field(type=list, required=False, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    user_creation_mode: str = Field(type=str, required=True, mutable=False)
    task_summary: str = Field(type=str, required=True, mutable=False)
    report_file_key: str = Field(type=str, required=True, mutable=False)


class GroupVirtualOnNetEnterpriseExtensionsGetUserListResponse(OCIResponse):
    """
    Response to ``GroupVirtualOnNetEnterpriseExtensionsGetUserListRequest()``.

    Contains a table with column headings: "Last Name", "First Name", "Phone Number",
    "Extension", "Virtual On-Net Call Type Name" in a row for each user.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupVirtualOnNetEnterpriseExtensionsGetUserResponse(OCIResponse):
    """
    Response to ``GroupVirtualOnNetEnterpriseExtensionsGetUserRequest()``.


    Attributes:
        extension: extension
        first_name: firstName
        last_name: lastName
        calling_line_id_first_name: callingLineIdFirstName
        calling_line_id_last_name: callingLineIdLastName
        virtual_on_net_call_type_name: virtualOnNetCallTypeName
    """

    _ELEMENTS = (
        E("extension", "extension", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("virtual_on_net_call_type_name", "virtualOnNetCallTypeName", str, is_required=True),
    )

    extension: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    virtual_on_net_call_type_name: str = Field(type=str, required=True, mutable=False)


class GroupVoiceMessagingGroupGetPasscodeRulesResponse(OCIResponse):
    """
    Response to ``GroupVoiceMessagingGroupGetPasscodeRulesRequest()``.

    Contains the group's voice portal passcode rules setting.

    Replaced By: ``GroupPortalPasscodeRulesGetResponse()``

    Attributes:
        use_rule_level: useRuleLevel
        disallow_repeated_digits: disallowRepeatedDigits
        disallow_user_number: disallowUserNumber
        disallow_reversed_user_number: disallowReversedUserNumber
        disallow_old_passcode: disallowOldPasscode
        disallow_reversed_old_passcode: disallowReversedOldPasscode
        min_code_length: minCodeLength
        max_code_length: maxCodeLength
        disable_login_after_max_failed_login_attempts:
            disableLoginAfterMaxFailedLoginAttempts
        max_failed_login_attempts: maxFailedLoginAttempts
        expire_password: expirePassword
        passcode_expires_days: passcodeExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
    """

    _ELEMENTS = (
        E("use_rule_level", "useRuleLevel", str, is_required=True),
        E("disallow_repeated_digits", "disallowRepeatedDigits", bool, is_required=True),
        E("disallow_user_number", "disallowUserNumber", bool, is_required=True),
        E(
            "disallow_reversed_user_number", "disallowReversedUserNumber", bool,
            is_required=True,
        ),
        E("disallow_old_passcode", "disallowOldPasscode", bool, is_required=True),
        E(
            "disallow_reversed_old_passcode", "disallowReversedOldPasscode", bool,
            is_required=True,
        ),
        E("min_code_length", "minCodeLength", int, is_required=True),
        E("max_code_length", "maxCodeLength", int, is_required=True),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts", bool, is_required=True,
        ),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int),
        E("expire_password", "expirePassword", bool, is_required=True),
        E("passcode_expires_days", "passcodeExpiresDays", int),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
    )

    use_rule_level: str = Field(type=str, required=True, mutable=False)
    disallow_repeated_digits: bool = Field(type=bool, required=True, mutable=False)
    disallow_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    min_code_length: int = Field(type=int, required=True, mutable=False)
    max_code_length: int = Field(type=int, required=True, mutable=False)
    disable_login_after_max_failed_login_attempts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_failed_login_attempts: int = Field(type=int, required=False, mutable=False)
    expire_password: bool = Field(type=bool, required=True, mutable=False)
    passcode_expires_days: int = Field(type=int, required=False, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)


class GroupVoiceMessagingGroupGetResponse(OCIResponse):
    """
    Response to ``GroupVoiceMessagingGroupGetRequest()``.

    Contains the group's voice messaging settings.

    Attributes:
        use_mail_server_setting: useMailServerSetting
        warn_caller_before_recording_voice_message: warnCallerBeforeRecordingVoiceMessage
        allow_users_configuring_advanced_settings: allowUsersConfiguringAdvancedSettings
        allow_compose_or_forward_message_to_entire_group:
            allowComposeOrForwardMessageToEntireGroup
        mail_server_net_address: mailServerNetAddress
        mail_server_protocol: mailServerProtocol
        real_delete_for_imap: realDeleteForImap
        max_mailbox_length_minutes: maxMailboxLengthMinutes
        does_message_age: doesMessageAge
        hold_period_days: holdPeriodDays
    """

    _ELEMENTS = (
        E("use_mail_server_setting", "useMailServerSetting", str, is_required=True),
        E(
            "warn_caller_before_recording_voice_message",
            "warnCallerBeforeRecordingVoiceMessage", bool, is_required=True,
        ),
        E(
            "allow_users_configuring_advanced_settings",
            "allowUsersConfiguringAdvancedSettings", bool, is_required=True,
        ),
        E(
            "allow_compose_or_forward_message_to_entire_group",
            "allowComposeOrForwardMessageToEntireGroup", bool, is_required=True,
        ),
        E("mail_server_net_address", "mailServerNetAddress", str),
        E("mail_server_protocol", "mailServerProtocol", str, is_required=True),
        E("real_delete_for_imap", "realDeleteForImap", bool, is_required=True),
        E("max_mailbox_length_minutes", "maxMailboxLengthMinutes", int, is_required=True),
        E("does_message_age", "doesMessageAge", bool, is_required=True),
        E("hold_period_days", "holdPeriodDays", int, is_required=True),
    )

    use_mail_server_setting: str = Field(type=str, required=True, mutable=False)
    warn_caller_before_recording_voice_message: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_users_configuring_advanced_settings: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_compose_or_forward_message_to_entire_group: bool = Field(
        type=bool, required=True, mutable=False,
    )
    mail_server_net_address: str = Field(type=str, required=False, mutable=False)
    mail_server_protocol: str = Field(type=str, required=True, mutable=False)
    real_delete_for_imap: bool = Field(type=bool, required=True, mutable=False)
    max_mailbox_length_minutes: int = Field(type=int, required=True, mutable=False)
    does_message_age: bool = Field(type=bool, required=True, mutable=False)
    hold_period_days: int = Field(type=int, required=True, mutable=False)


class GroupVoiceMessagingGroupGetVoicePortalBrandingResponse(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalBrandingRequest()``.

    Replaced By: ``GroupVoiceMessagingGroupGetVoicePortalBrandingResponse16()``

    Attributes:
        voice_portal_greeting_selection: voicePortalGreetingSelection
        voice_portal_greeting_file_description: voicePortalGreetingFileDescription
        voice_messaging_greeting_selection: voiceMessagingGreetingSelection
        voice_messaging_greeting_file_description: voiceMessagingGreetingFileDescription
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection", "voicePortalGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription", str,
        ),
        E(
            "voice_messaging_greeting_selection", "voiceMessagingGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription", str,
        ),
    )

    voice_portal_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_portal_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    voice_messaging_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_messaging_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )


class GroupVoiceMessagingGroupGetVoicePortalBrandingResponse16(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalBrandingRequest16()``.


    Attributes:
        voice_portal_greeting_selection: voicePortalGreetingSelection
        voice_portal_greeting_file_description: voicePortalGreetingFileDescription
        voice_portal_greeting_media_type: voicePortalGreetingMediaType
        voice_messaging_greeting_selection: voiceMessagingGreetingSelection
        voice_messaging_greeting_file_description: voiceMessagingGreetingFileDescription
        voice_messaging_greeting_media_type: voiceMessagingGreetingMediaType
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection", "voicePortalGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription", str,
        ),
        E("voice_portal_greeting_media_type", "voicePortalGreetingMediaType", str),
        E(
            "voice_messaging_greeting_selection", "voiceMessagingGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription", str,
        ),
        E("voice_messaging_greeting_media_type", "voiceMessagingGreetingMediaType", str),
    )

    voice_portal_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_portal_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    voice_portal_greeting_media_type: str = Field(type=str, required=False, mutable=False)
    voice_messaging_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_messaging_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    voice_messaging_greeting_media_type: str = Field(type=str, required=False, mutable=False)


class GroupVoiceXmlGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupVoiceXmlGetInstanceListRequest()``.

    Contains a table with column headings: "Service User Id", "Name", "Phone Number",
    "Extension", "Department", "Is Active". The column values for "Is Active" can either
    be true, or false.

    Attributes:
        voice_xml_table: voiceXmlTable
    """

    _ELEMENTS = (
        E(
            "voice_xml_table", "voiceXmlTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    voice_xml_table: "list" = Field(type=list, required=True, mutable=False)


class LoginResponse13mp10(OCIResponse):
    """
    ``LoginRequest13mp10()``/Response13mp10 is 2nd stage of the 2 stage OCI login process.


    Attributes:
        login_type: loginType
        locale: locale
        encoding: encoding
    """

    _ELEMENTS = (
        E("login_type", "loginType", str, is_required=True),
        E("locale", "locale", str, is_required=True),
        E("encoding", "encoding", str, is_required=True),
    )

    login_type: str = Field(type=str, required=True, mutable=False)
    locale: str = Field(type=str, required=True, mutable=False)
    encoding: str = Field(type=str, required=True, mutable=False)


class LoginResponse14sp4(OCIResponse):
    """
    ``LoginRequest14sp4()``/Response14sp4 is 2nd stage of the 2 stage OCI login process.


    Attributes:
        login_type: loginType
        locale: locale
        encoding: encoding
        group_id: groupId
        service_provider_id: serviceProviderId
        is_enterprise: isEnterprise
        password_expires_days: passwordExpiresDays
        user_domain: userDomain
    """

    _ELEMENTS = (
        E("login_type", "loginType", str, is_required=True),
        E("locale", "locale", str, is_required=True),
        E("encoding", "encoding", str, is_required=True),
        E("group_id", "groupId", str),
        E("service_provider_id", "serviceProviderId", str),
        E("is_enterprise", "isEnterprise", bool, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int),
        E("user_domain", "userDomain", str, is_required=True),
    )

    login_type: str = Field(type=str, required=True, mutable=False)
    locale: str = Field(type=str, required=True, mutable=False)
    encoding: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=False, mutable=False)
    service_provider_id: str = Field(type=str, required=False, mutable=False)
    is_enterprise: bool = Field(type=bool, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=False, mutable=False)
    user_domain: str = Field(type=str, required=True, mutable=False)


class PrimaryInfoGetResponse(OCIResponse):
    """
    Information about the primary server in the high-availablity cluster.

    For optimization, we only get the hostname and addresses for primary if they are
    explicitly requested or if the current server is not the primary.

    Attributes:
        is_primary: isPrimary
        hostname_for_primary: hostnameForPrimary
        address_for_primary: addressForPrimary
        private_address_for_primary: privateAddressForPrimary
    """

    _ELEMENTS = (
        E("is_primary", "isPrimary", bool, is_required=True),
        E("hostname_for_primary", "hostnameForPrimary", str),
        E("address_for_primary", "addressForPrimary", str, is_array=True),
        E("private_address_for_primary", "privateAddressForPrimary", str, is_array=True),
    )

    is_primary: bool = Field(type=bool, required=True, mutable=False)
    hostname_for_primary: str = Field(type=str, required=False, mutable=False)
    address_for_primary: "List[str]" = Field(type=list, required=False, mutable=False)
    private_address_for_primary: "List[str]" = Field(type=list, required=False, mutable=False)


class PublicClusterGetFullyQualifiedDomainNameResponse(OCIResponse):
    """
    Response to ``PublicClusterGetFullyQualifiedDomainNameRequest()``.


    Attributes:
        public_cluster_fqdn: publicClusterFQDN
    """

    _ELEMENTS = (
        E("public_cluster_fqdn", "publicClusterFQDN", str),
    )

    public_cluster_fqdn: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAccessDeviceCustomTagGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceCustomTagGetListRequest()``.

    Contains a table of custom configuration tags managed by the Device Management System
    on a per-device profile basis.  The column headings are: "Tag Name", "Tag Value"

    Attributes:
        device_custom_tags_table: deviceCustomTagsTable
    """

    _ELEMENTS = (
        E(
            "device_custom_tags_table", "deviceCustomTagsTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_custom_tags_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderAccessDeviceFileGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetListRequest()``.

    Contains a table of device files managed by the Device Management System on a per-
    device profile basis.  The column headings are: "File Type", "File Format", "Is
    Authenticated".

    Replaced By: ``ServiceProviderAccessDeviceFileGetListResponse14sp8()``

    Attributes:
        device_files_table: deviceFilesTable
    """

    _ELEMENTS = (
        E(
            "device_files_table", "deviceFilesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_files_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderAccessDeviceFileGetListResponse14sp8(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetListRequest14sp8()``.

    Contains a table of device files managed by the Device Management System on a per-
    device profile basis.  The column headings are: "File Format", "Is Authenticated",
    "Access URL", "Repository URL", "Template URL", "Extended Capture". The following
    columns are only used in AS data mode: "Extended Capture"

    Attributes:
        device_files_table: deviceFilesTable
    """

    _ELEMENTS = (
        E(
            "device_files_table", "deviceFilesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_files_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderAccessDeviceFileGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetRequest()``.

    Replaced By: ``ServiceProviderAccessDeviceFileGetResponse14sp8()``

    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAccessDeviceFileGetResponse14sp8(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetRequest14sp8()``.

    Replaced by: ``ServiceProviderAccessDeviceFileGetResponse16sp1()``

    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAccessDeviceFileGetResponse16sp1(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetRequest16sp1()``.


    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAccessDeviceFileGetResponse20(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetRequest20()``.


    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
        extended_capture_enabled: extendedCaptureEnabled
        extended_capture_url: extendedCaptureURL
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
        E("extended_capture_enabled", "extendedCaptureEnabled", bool),
        E("extended_capture_url", "extendedCaptureURL", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)
    extended_capture_enabled: bool = Field(type=bool, required=False, mutable=False)
    extended_capture_url: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAccessDeviceGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetListRequest()``.

    Contains a table of devices configured in the service provider.  The column headings
    are: "Device Name", "Device Type", "Available Ports", "Net Address", "MAC Address",
    "Status", and "Version".

    Attributes:
        access_device_table: accessDeviceTable
    """

    _ELEMENTS = (
        E(
            "access_device_table", "accessDeviceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    access_device_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderAccessDeviceGetUserListResponse(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetUserListRequest()``.

    The column headings for the deviceUserTable are: "Line/Port", "Last Name", "First
    Name", "Phone Number", "Group Id", "User Id", "User Type", "Endpoint Type", "Primary
    Line/Port", "Order", "Extension", "Department", "Email Address", "Private Identity".
    In IMS mode, the table will contain a row for each TEL-URI in the Phone Number column.
    In standalone mode, rows for the alternate numbers are not included.  The User Type
    column contains one of the enumerated UserType values.  The Endpoint Type column
    contains one of the enumerated EndpointType values.  The Private Identity column is
    empty is AS mode.

    Attributes:
        device_user_table: deviceUserTable
    """

    _ELEMENTS = (
        E(
            "device_user_table", "deviceUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_user_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderAdminGetListResponse14(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetListRequest14()``.

    Contains a 5 column table with column headings "Administrator ID", "Last Name", "First
    Name", "Administrator Type", "Language".

    Attributes:
        service_provider_admin_table: serviceProviderAdminTable
    """

    _ELEMENTS = (
        E(
            "service_provider_admin_table", "serviceProviderAdminTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    service_provider_admin_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderAdminGetPolicyResponse14(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest14()``.

    Contains the policy settings for the service provider administrator.  The
    networkPolicyAccess is returned only for the enterprise administrator.

    Attributes:
        profile_access: profileAccess
        group_access: groupAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        service_access: serviceAccess
        service_pack_access: servicePackAccess
        web_branding_access: webBrandingAccess
        network_policy_access: networkPolicyAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("group_access", "groupAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("service_pack_access", "servicePackAccess", str, is_required=True),
        E("web_branding_access", "webBrandingAccess", str, is_required=True),
        E("network_policy_access", "networkPolicyAccess", str),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    group_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    service_pack_access: str = Field(type=str, required=True, mutable=False)
    web_branding_access: str = Field(type=str, required=True, mutable=False)
    network_policy_access: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAdminGetPolicyResponse16sp1(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest16sp1()``.

    Contains the policy settings for the service provider administrator.  The
    networkPolicyAccess is returned only for the enterprise administrator.  Replaced by:
    ``ServiceProviderAdminGetPolicyResponse17()``

    Attributes:
        profile_access: profileAccess
        group_access: groupAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        service_access: serviceAccess
        service_pack_access: servicePackAccess
        session_admission_control_access: sessionAdmissionControlAccess
        web_branding_access: webBrandingAccess
        network_policy_access: networkPolicyAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("group_access", "groupAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("service_pack_access", "servicePackAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("web_branding_access", "webBrandingAccess", str, is_required=True),
        E("network_policy_access", "networkPolicyAccess", str),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    group_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    service_pack_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    web_branding_access: str = Field(type=str, required=True, mutable=False)
    network_policy_access: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAdminGetPolicyResponse16sp2(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest16sp1()``.

    Response to ``ServiceProviderAdminGetPolicyRequest16sp2()``. Contains the policy
    settings for the service provider administrator.  The networkPolicyAccess is returned
    only for the enterprise administrator.

    Attributes:
        profile_access: profileAccess
        group_access: groupAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        service_access: serviceAccess
        service_pack_access: servicePackAccess
        session_admission_control_access: sessionAdmissionControlAccess
        web_branding_access: webBrandingAccess
        network_policy_access: networkPolicyAccess
        dialable_caller_id_access: dialableCallerIDAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("group_access", "groupAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("service_pack_access", "servicePackAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("web_branding_access", "webBrandingAccess", str, is_required=True),
        E("network_policy_access", "networkPolicyAccess", str),
        E("dialable_caller_id_access", "dialableCallerIDAccess", str, is_required=True),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    group_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    service_pack_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    web_branding_access: str = Field(type=str, required=True, mutable=False)
    network_policy_access: str = Field(type=str, required=False, mutable=False)
    dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)


class ServiceProviderAdminGetPolicyResponse17(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest17()``.

    Contains the policy settings for the service provider administrator.  The
    networkPolicyAccess is returned only for the enterprise administrator.

    Attributes:
        profile_access: profileAccess
        group_access: groupAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        service_pack_access: servicePackAccess
        session_admission_control_access: sessionAdmissionControlAccess
        web_branding_access: webBrandingAccess
        office_zone_access: officeZoneAccess
        network_policy_access: networkPolicyAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("group_access", "groupAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("service_pack_access", "servicePackAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("web_branding_access", "webBrandingAccess", str, is_required=True),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
        E("network_policy_access", "networkPolicyAccess", str),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    group_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    service_pack_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    web_branding_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)
    network_policy_access: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAdminGetPolicyResponse17sp1(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest17sp1()``.

    Contains the policy settings for the service provider administrator.  The
    networkPolicyAccess is returned only for the enterprise administrator.  The following
    elements are only used in HSS data mode: communicationBarringAccess

    Attributes:
        profile_access: profileAccess
        group_access: groupAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        service_pack_access: servicePackAccess
        session_admission_control_access: sessionAdmissionControlAccess
        web_branding_access: webBrandingAccess
        office_zone_access: officeZoneAccess
        communication_barring_access: communicationBarringAccess
        network_policy_access: networkPolicyAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("group_access", "groupAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("service_pack_access", "servicePackAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("web_branding_access", "webBrandingAccess", str, is_required=True),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
        E(
            "communication_barring_access", "communicationBarringAccess", str,
            is_required=True,
        ),
        E("network_policy_access", "networkPolicyAccess", str),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    group_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    service_pack_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    web_branding_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)
    communication_barring_access: str = Field(type=str, required=True, mutable=False)
    network_policy_access: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAdminGetPolicyResponse17sp3(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest17sp3()``.

    Contains the policy settings for the service provider administrator.  The
    networkPolicyAccess is returned only for the enterprise administrator.  The following
    elements are only used in AS data mode: dialableCallerIDAccess The following elements
    are only used in HSS data mode: communicationBarringAccess

    Attributes:
        profile_access: profileAccess
        group_access: groupAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        service_pack_access: servicePackAccess
        session_admission_control_access: sessionAdmissionControlAccess
        web_branding_access: webBrandingAccess
        office_zone_access: officeZoneAccess
        communication_barring_access: communicationBarringAccess
        network_policy_access: networkPolicyAccess
        dialable_caller_id_access: dialableCallerIDAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("group_access", "groupAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("service_pack_access", "servicePackAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("web_branding_access", "webBrandingAccess", str, is_required=True),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
        E(
            "communication_barring_access", "communicationBarringAccess", str,
            is_required=True,
        ),
        E("network_policy_access", "networkPolicyAccess", str),
        E("dialable_caller_id_access", "dialableCallerIDAccess", str, is_required=True),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    group_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    service_pack_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    web_branding_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)
    communication_barring_access: str = Field(type=str, required=True, mutable=False)
    network_policy_access: str = Field(type=str, required=False, mutable=False)
    dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)


class ServiceProviderAdminGetPolicyResponse18(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest18()``.

    Contains the policy settings for the service provider administrator.  The
    networkPolicyAccess and numberActivationAccess are returned only for the enterprise
    administrator.  The following elements are only used in AS data mode:
    dialableCallerIDAccess

    Attributes:
        profile_access: profileAccess
        group_access: groupAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        service_pack_access: servicePackAccess
        session_admission_control_access: sessionAdmissionControlAccess
        web_branding_access: webBrandingAccess
        office_zone_access: officeZoneAccess
        communication_barring_access: communicationBarringAccess
        network_policy_access: networkPolicyAccess
        number_activation_access: numberActivationAccess
        dialable_caller_id_access: dialableCallerIDAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("group_access", "groupAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("service_pack_access", "servicePackAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("web_branding_access", "webBrandingAccess", str, is_required=True),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
        E(
            "communication_barring_access", "communicationBarringAccess", str,
            is_required=True,
        ),
        E("network_policy_access", "networkPolicyAccess", str),
        E("number_activation_access", "numberActivationAccess", str),
        E("dialable_caller_id_access", "dialableCallerIDAccess", str, is_required=True),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    group_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    service_pack_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    web_branding_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)
    communication_barring_access: str = Field(type=str, required=True, mutable=False)
    network_policy_access: str = Field(type=str, required=False, mutable=False)
    number_activation_access: str = Field(type=str, required=False, mutable=False)
    dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)


class ServiceProviderAdminGetPolicyResponse20(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest20()``.

    Contains the policy settings for the service provider administrator.  The
    networkPolicyAccess and numberActivationAccess are returned only for the enterprise
    administrator.  The following elements are only used in AS data mode:
    dialableCallerIDAccess verifyTranslationAndRoutingAccess

    Attributes:
        profile_access: profileAccess
        group_access: groupAccess
        user_access: userAccess
        admin_access: adminAccess
        department_access: departmentAccess
        access_device_access: accessDeviceAccess
        phone_number_extension_access: phoneNumberExtensionAccess
        calling_line_id_number_access: callingLineIdNumberAccess
        service_access: serviceAccess
        service_pack_access: servicePackAccess
        session_admission_control_access: sessionAdmissionControlAccess
        web_branding_access: webBrandingAccess
        office_zone_access: officeZoneAccess
        communication_barring_access: communicationBarringAccess
        network_policy_access: networkPolicyAccess
        number_activation_access: numberActivationAccess
        dialable_caller_id_access: dialableCallerIDAccess
        verify_translation_and_routing_access: verifyTranslationAndRoutingAccess
    """

    _ELEMENTS = (
        E("profile_access", "profileAccess", str, is_required=True),
        E("group_access", "groupAccess", str, is_required=True),
        E("user_access", "userAccess", str, is_required=True),
        E("admin_access", "adminAccess", str, is_required=True),
        E("department_access", "departmentAccess", str, is_required=True),
        E("access_device_access", "accessDeviceAccess", str, is_required=True),
        E(
            "phone_number_extension_access", "phoneNumberExtensionAccess", str,
            is_required=True,
        ),
        E(
            "calling_line_id_number_access", "callingLineIdNumberAccess", str,
            is_required=True,
        ),
        E("service_access", "serviceAccess", str, is_required=True),
        E("service_pack_access", "servicePackAccess", str, is_required=True),
        E(
            "session_admission_control_access", "sessionAdmissionControlAccess", str,
            is_required=True,
        ),
        E("web_branding_access", "webBrandingAccess", str, is_required=True),
        E("office_zone_access", "officeZoneAccess", str, is_required=True),
        E(
            "communication_barring_access", "communicationBarringAccess", str,
            is_required=True,
        ),
        E("network_policy_access", "networkPolicyAccess", str),
        E("number_activation_access", "numberActivationAccess", str),
        E("dialable_caller_id_access", "dialableCallerIDAccess", str, is_required=True),
        E(
            "verify_translation_and_routing_access", "verifyTranslationAndRoutingAccess",
            str, is_required=True,
        ),
    )

    profile_access: str = Field(type=str, required=True, mutable=False)
    group_access: str = Field(type=str, required=True, mutable=False)
    user_access: str = Field(type=str, required=True, mutable=False)
    admin_access: str = Field(type=str, required=True, mutable=False)
    department_access: str = Field(type=str, required=True, mutable=False)
    access_device_access: str = Field(type=str, required=True, mutable=False)
    phone_number_extension_access: str = Field(type=str, required=True, mutable=False)
    calling_line_id_number_access: str = Field(type=str, required=True, mutable=False)
    service_access: str = Field(type=str, required=True, mutable=False)
    service_pack_access: str = Field(type=str, required=True, mutable=False)
    session_admission_control_access: str = Field(type=str, required=True, mutable=False)
    web_branding_access: str = Field(type=str, required=True, mutable=False)
    office_zone_access: str = Field(type=str, required=True, mutable=False)
    communication_barring_access: str = Field(type=str, required=True, mutable=False)
    network_policy_access: str = Field(type=str, required=False, mutable=False)
    number_activation_access: str = Field(type=str, required=False, mutable=False)
    dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)
    verify_translation_and_routing_access: str = Field(type=str, required=True, mutable=False)


class ServiceProviderAdminGetResponse14(OCIResponse):
    """
    Response to the ``ServiceProviderAdminGetRequest14()``.

    The response contains the service provider administrators profile information.

    Attributes:
        service_provider_id: serviceProviderId
        first_name: firstName
        last_name: lastName
        language: language
        administrator_type: administratorType
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("first_name", "firstName", str),
        E("last_name", "lastName", str),
        E("language", "language", str, is_required=True),
        E("administrator_type", "administratorType", str, is_required=True),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=False, mutable=False)
    last_name: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    administrator_type: str = Field(type=str, required=True, mutable=False)


class ServiceProviderAdviceOfChargeGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderAdviceOfChargeGetRequest()``.

    Contains a list of Advice of Charge service provider parameters.

    Attributes:
        use_sp_level_ao_c_settings: useSPLevelAoCSettings
        delay_between_notification_seconds: delayBetweenNotificationSeconds
    """

    _ELEMENTS = (
        E("use_sp_level_ao_c_settings", "useSPLevelAoCSettings", bool, is_required=True),
        E(
            "delay_between_notification_seconds", "delayBetweenNotificationSeconds", int,
            is_required=True,
        ),
    )

    use_sp_level_ao_c_settings: bool = Field(type=bool, required=True, mutable=False)
    delay_between_notification_seconds: int = Field(type=int, required=True, mutable=False)


class ServiceProviderAnswerConfirmationGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderAnswerConfirmationGetRequest()``.

    Replaced By: ``ServiceProviderAnswerConfirmationGetResponse16()``

    Attributes:
        announcement_message_selection: announcementMessageSelection
        confirmation_message_audio_file_description:
            confirmationMessageAudioFileDescription
        confirmation_timout_seconds: confirmationTimoutSeconds
    """

    _ELEMENTS = (
        E(
            "announcement_message_selection", "announcementMessageSelection", str,
            is_required=True,
        ),
        E(
            "confirmation_message_audio_file_description",
            "confirmationMessageAudioFileDescription", str,
        ),
        E("confirmation_timout_seconds", "confirmationTimoutSeconds", int, is_required=True),
    )

    announcement_message_selection: str = Field(type=str, required=True, mutable=False)
    confirmation_message_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    confirmation_timout_seconds: int = Field(type=int, required=True, mutable=False)


class ServiceProviderAnswerConfirmationGetResponse16(OCIResponse):
    """
    Response to the ``ServiceProviderAnswerConfirmationGetRequest16()``.


    Attributes:
        announcement_message_selection: announcementMessageSelection
        confirmation_message_audio_file_description:
            confirmationMessageAudioFileDescription
        confirmation_message_media_type: confirmationMessageMediaType
        confirmation_timout_seconds: confirmationTimoutSeconds
    """

    _ELEMENTS = (
        E(
            "announcement_message_selection", "announcementMessageSelection", str,
            is_required=True,
        ),
        E(
            "confirmation_message_audio_file_description",
            "confirmationMessageAudioFileDescription", str,
        ),
        E("confirmation_message_media_type", "confirmationMessageMediaType", str),
        E("confirmation_timout_seconds", "confirmationTimoutSeconds", int, is_required=True),
    )

    announcement_message_selection: str = Field(type=str, required=True, mutable=False)
    confirmation_message_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    confirmation_message_media_type: str = Field(type=str, required=False, mutable=False)
    confirmation_timout_seconds: int = Field(type=int, required=True, mutable=False)


class ServiceProviderApplicationServerSetGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderApplicationServerSetGetRequest()``.

    The response contains the service provider or enterprise's Application Server set
    information.

    Attributes:
        application_server_set_name: applicationServerSetName
    """

    _ELEMENTS = (
        E("application_server_set_name", "applicationServerSetName", str),
    )

    application_server_set_name: str = Field(type=str, required=False, mutable=False)


class ServiceProviderBroadWorksCommunicatorGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderBroadWorksCommunicatorGetRequest()``.


    Attributes:
        configuration_server_url: configurationServerURL
    """

    _ELEMENTS = (
        E("configuration_server_url", "configurationServerURL", str),
    )

    configuration_server_url: str = Field(type=str, required=False, mutable=False)


class ServiceProviderBroadWorksMobilityGetResponse(OCIResponse):
    """
    The response to a ``ServiceProviderBroadWorksMobilityGetRequest()``.


    Attributes:
        use_setting_level: useSettingLevel
        enable_location_services: enableLocationServices
        enable_msrn_lookup: enableMSRNLookup
        enable_mobile_state_checking: enableMobileStateChecking
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
    """

    _ELEMENTS = (
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("enable_location_services", "enableLocationServices", bool, is_required=True),
        E("enable_msrn_lookup", "enableMSRNLookup", bool, is_required=True),
        E(
            "enable_mobile_state_checking", "enableMobileStateChecking", bool,
            is_required=True,
        ),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
    )

    use_setting_level: str = Field(type=str, required=True, mutable=False)
    enable_location_services: bool = Field(type=bool, required=True, mutable=False)
    enable_msrn_lookup: bool = Field(type=bool, required=True, mutable=False)
    enable_mobile_state_checking: bool = Field(type=bool, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderBroadWorksMobilityGetResponse19sp1(OCIResponse):
    """
    The response to a ``ServiceProviderBroadWorksMobilityGetRequest19sp1()``.


    Attributes:
        use_setting_level: useSettingLevel
        enable_location_services: enableLocationServices
        enable_msrn_lookup: enableMSRNLookup
        enable_mobile_state_checking: enableMobileStateChecking
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
        enable_announcement_suppression: enableAnnouncementSuppression
    """

    _ELEMENTS = (
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("enable_location_services", "enableLocationServices", bool, is_required=True),
        E("enable_msrn_lookup", "enableMSRNLookup", bool, is_required=True),
        E(
            "enable_mobile_state_checking", "enableMobileStateChecking", bool,
            is_required=True,
        ),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
        E(
            "enable_announcement_suppression", "enableAnnouncementSuppression", bool,
            is_required=True,
        ),
    )

    use_setting_level: str = Field(type=str, required=True, mutable=False)
    enable_location_services: bool = Field(type=bool, required=True, mutable=False)
    enable_msrn_lookup: bool = Field(type=bool, required=True, mutable=False)
    enable_mobile_state_checking: bool = Field(type=bool, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)
    enable_announcement_suppression: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListResponse(OCIResponse):
    """
    Response to
    ``ServiceProviderBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListRequest()``.

    Contains a list of available Mobile Subscriber Directory Numbers not yet assigned to
    any group.

    Attributes:
        available_mobile_subscriber_directory_number:
            availableMobileSubscriberDirectoryNumber
    """

    _ELEMENTS = (
        E(
            "available_mobile_subscriber_directory_number",
            "availableMobileSubscriberDirectoryNumber", str, is_array=True,
        ),
    )

    available_mobile_subscriber_directory_number: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )


class ServiceProviderBroadWorksMobilityMobileSubscriberDirectoryNumberGetSummaryListResponse(OCIResponse):
    """
    Response to
    ``ServiceProviderBroadWorksMobilityMobileSubscriberDirectoryNumberGetSummaryListRequest()``.

    The column headings are "Phone Number", "Group Id" and "Mobile Network".

    Attributes:
        mobile_subscriber_directory_numbers_summary_table:
            mobileSubscriberDirectoryNumbersSummaryTable
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_numbers_summary_table",
            "mobileSubscriberDirectoryNumbersSummaryTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    mobile_subscriber_directory_numbers_summary_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse14(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest14()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)


class ServiceProviderCallProcessingGetPolicyResponse14sp1(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest14sp1()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse14sp4(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest14sp4()``.

    Replaced By : ``ServiceProviderCallProcessingGetPolicyResponse15()``

    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_external_calls_via_private_dialing_plan:
            overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan", bool,
            is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_external_calls_via_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse14sp7(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest14sp7()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_external_calls_via_private_dialing_plan:
            overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan", bool,
            is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_external_calls_via_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse15(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest15()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse15sp2(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest15sp2()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse16(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest16()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse16sp2(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest16sp2()``.


    Attributes:
        use_service_provider_dclid_setting: useServiceProviderDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting", "useServiceProviderDCLIDSetting", bool,
            is_required=True,
        ),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_service_provider_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderCallProcessingGetPolicyResponse17(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest17()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse17sp3(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest17sp3()``.

    The following elements are only used in AS data mode: useServiceProviderDCLIDSetting
    enableDialableCallerID

    Attributes:
        use_service_provider_dclid_setting: useServiceProviderDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting", "useServiceProviderDCLIDSetting", bool,
            is_required=True,
        ),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_service_provider_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderCallProcessingGetPolicyResponse17sp4(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest17sp4()``.

    The following elements are only used in AS data mode: useServiceProviderDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity

    Attributes:
        use_service_provider_dclid_setting: useServiceProviderDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting", "useServiceProviderDCLIDSetting", bool,
            is_required=True,
        ),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_service_provider_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse18sp1(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest18sp1()``.

    The following elements are only used in AS data mode: useServiceProviderDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity
    enterpriseCallsCLIDPolicy groupCallsCLIDPolicy Replaced by:
    ``ServiceProviderCallProcessingGetPolicyResponse19sp1()``

    Attributes:
        use_service_provider_dclid_setting: useServiceProviderDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        group_calls_clid_policy: groupCallsCLIDPolicy
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting", "useServiceProviderDCLIDSetting", bool,
            is_required=True,
        ),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E("group_calls_clid_policy", "groupCallsCLIDPolicy", str, is_required=True),
    )

    use_service_provider_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)


class ServiceProviderCallProcessingGetPolicyResponse19sp1(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest19sp1()``.

    The following elements are only used in AS data mode: useServiceProviderDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity
    enterpriseCallsCLIDPolicy groupCallsCLIDPolicy

    Attributes:
        use_service_provider_dclid_setting: useServiceProviderDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        use_setting_level: useSettingLevel
        conference_uri: conferenceURI
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        group_calls_clid_policy: groupCallsCLIDPolicy
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting", "useServiceProviderDCLIDSetting", bool,
            is_required=True,
        ),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("conference_uri", "conferenceURI", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E("group_calls_clid_policy", "groupCallsCLIDPolicy", str, is_required=True),
    )

    use_service_provider_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)


class ServiceProviderCommunicationBarringCriteriaGetAssignedListResponse(OCIResponse):
    """
    Response to ``ServiceProviderCommunicationBarringCriteriaGetAssignedListRequest()``.

    Contains a table of all Communication Barring Criteria assigned to the service
    provider.  The column headings are: "Name" and "Description".

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderCommunicationBarringDigitPatternCriteriaGetListResponse(OCIResponse):
    """
    Response to the
    ``ServiceProviderCommunicationBarringDigitPatternCriteriaGetListRequest()``.

    The response contains a table of all Digit Pattern Criteria defined for the service
    provider.  The column headings are "Name" and "Description"

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderCommunicationBarringDigitPatternCriteriaGetPatternListResponse(OCIResponse):
    """
    Response to the
    ``ServiceProviderCommunicationBarringDigitPatternCriteriaGetPatternListRequest()``.

    The response contains the Digit Pattern Criteria information.

    Attributes:
        match_digit_pattern: matchDigitPattern
    """

    _ELEMENTS = (
        E("match_digit_pattern", "matchDigitPattern", str, is_array=True),
    )

    match_digit_pattern: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderCommunicationBarringDigitPatternCriteriaGetResponse(OCIResponse):
    """
    Response to the
    ``ServiceProviderCommunicationBarringDigitPatternCriteriaGetRequest()``.

    The response contains the Digit Pattern Criteria information.

    Attributes:
        description: description
    """

    _ELEMENTS = (
        E("description", "description", str),
    )

    description: str = Field(type=str, required=False, mutable=False)


class ServiceProviderCommunicationBarringIncomingCriteriaGetAssignedListResponse(OCIResponse):
    """
    Response to
    ``ServiceProviderCommunicationBarringIncomingCriteriaGetAssignedListRequest()``.

    Contains a table of all Communication Barring Incoming Criteria assigned to the
    service provider.  The column headings are: "Name" and "Description".

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderCommunicationBarringProfileGetAssignedGroupListResponse(OCIResponse):
    """
    Response to
    ``ServiceProviderCommunicationBarringProfileGetAssignedGroupListRequest()``.

    Contains a table of groups that have the Communication Barring Profile assigned.  The
    column headings are: "Group Id" and "Group Name".

    Attributes:
        group_table: groupTable
    """

    _ELEMENTS = (
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    group_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderCommunicationBarringProfileGetCriteriaUsageListResponse(OCIResponse):
    """
    Response to ServiceProviderCommunicationBarring
    ``ProfileGetCriteriaUsageListRequest()``.

    Contains a table of profiles that have the Communication Barring Criteria assigned.
    The column headings are: "Name" and "Description".

    Attributes:
        profile_table: profileTable
    """

    _ELEMENTS = (
        E(
            "profile_table", "profileTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderCommunicationBarringProfileGetDigitPatternCriteriaUsageListResponse(OCIResponse):
    """
    Response to the
    ``ServiceProviderCommunicationBarringProfileGetDigitPatternCriteriaUsageListRequest()``.

    The response contains a table of all Profiles that use the specific Digit Pattern
    Criteria.  The column headings are "Name" and "Description"

    Attributes:
        profile_table: profileTable
    """

    _ELEMENTS = (
        E(
            "profile_table", "profileTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderCommunicationBarringProfileGetIncomingCriteriaUsageListResponse(OCIResponse):
    """
    Response to
    ``ServiceProviderCommunicationBarringProfileGetIncomingCriteriaUsageListRequest()``.

    Contains a table of profiles that have the Communication Barring Incoming Criteria
    assigned.  The column headings are: "Name" and "Description".

    Attributes:
        profile_table: profileTable
    """

    _ELEMENTS = (
        E(
            "profile_table", "profileTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderCommunicationBarringProfileGetListResponse(OCIResponse):
    """
    Response to the ``ServiceProviderCommunicationBarringProfileGetListRequest()``.

    The response contains a table of all Communication Barring Profiles for the service
    provider.  The column headings are "Default" , "Name" and "Description"

    Attributes:
        profile_table: profileTable
    """

    _ELEMENTS = (
        E(
            "profile_table", "profileTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderDeviceManagementEventGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderDeviceManagementEventGetListRequest()``.

    Contains a table with column headings: "Event Id", "Status", "Action", "Level",
    "Type", "Additional Info", "Is Local", "Completion %", "Pushed/ Same Hash/ Not
    Pushed", "Login Id", "Start Time", "Process Time". "Event Id" is a unique identifer
    for the event.  "Status" can be: Pending, Queued, In Progress, Process On Other Host,
    Stale, Completed, Canceled.  "Action" can be: Delete, Download, Rebuild, Reset,
    Upload.  "Level" can be: Device, Device Type, Device Type Group, Group, User.  "Type"
    can be: Automatic, Manual.  "Additional Info" includes the affected device type,
    device or group.  It depends on the level of the event: Device Profile: "Device Name"
    "Service Provider Id" "Group Id" Device Type: "Device Type Name" Device Type Group:
    "Service Provider Id" "Group Id" "Device Type Name" Group: "Service Provider Id"
    "Group Id" User: "User Id" "Is Local" is set to "yes" if the event is processed on the
    server who received the request, "no" otherwise meaning that the event is processed on
    another server.  "Completion %" provides an estimate of the completion of the event.
    A percentage is given, the current number of completed expanded event, and the total
    number of expanded event.  "Pushed/ Same Hash/ Not Pushed" gives the total number of
    files that were pushed, not pushed because of same hash, and not pushed when
    processing the event.  "LoginId" is the user or admin id who triggered the event.
    "Start Time" is the date when the event was started.  The display shows the month,
    days, hours, and minutes (MM-dd hh:mm). "Process Time" is the time taken to process
    the event in hours, minutes, seconds, and milliseconds (hhhh:mm:ss.SSS). Each row
    represents an event sorted by priority of processing.  The first row in the table is
    an event that has an associated expanded event currently being processed or next in
    line to be processed.

    Attributes:
        event_table: eventTable
    """

    _ELEMENTS = (
        E(
            "event_table", "eventTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    event_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderDeviceProfileAuthenticationPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderDeviceProfileAuthenticationPasswordRulesGetRequest()``.

    Contains the device profile authentication password rules for the service provider.

    Attributes:
        use_service_provider_settings: useServiceProviderSettings
        disallow_authentication_name: disallowAuthenticationName
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        send_permanent_lockout_notification: sendPermanentLockoutNotification
        permanent_lockout_notify_email_address: permanentLockoutNotifyEmailAddress
        device_profile_authentication_lockout_type: deviceProfileAuthenticationLockoutType
        device_profile_temporary_lockout_threshold: deviceProfileTemporaryLockoutThreshold
        device_profile_wait_algorithm: deviceProfileWaitAlgorithm
        device_profile_lockout_fixed_minutes: deviceProfileLockoutFixedMinutes
        device_profile_permanent_lockout_threshold: deviceProfilePermanentLockoutThreshold
    """

    _ELEMENTS = (
        E(
            "use_service_provider_settings", "useServiceProviderSettings", bool,
            is_required=True,
        ),
        E(
            "disallow_authentication_name", "disallowAuthenticationName", bool,
            is_required=True,
        ),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E(
            "send_permanent_lockout_notification", "sendPermanentLockoutNotification",
            bool, is_required=True,
        ),
        E(
            "permanent_lockout_notify_email_address",
            "permanentLockoutNotifyEmailAddress", str,
        ),
        E(
            "device_profile_authentication_lockout_type",
            "deviceProfileAuthenticationLockoutType", str, is_required=True,
        ),
        E(
            "device_profile_temporary_lockout_threshold",
            "deviceProfileTemporaryLockoutThreshold", int, is_required=True,
        ),
        E(
            "device_profile_wait_algorithm", "deviceProfileWaitAlgorithm", str,
            is_required=True,
        ),
        E(
            "device_profile_lockout_fixed_minutes", "deviceProfileLockoutFixedMinutes",
            str, is_required=True,
        ),
        E(
            "device_profile_permanent_lockout_threshold",
            "deviceProfilePermanentLockoutThreshold", int, is_required=True,
        ),
    )

    use_service_provider_settings: bool = Field(type=bool, required=True, mutable=False)
    disallow_authentication_name: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    send_permanent_lockout_notification: bool = Field(type=bool, required=True, mutable=False)
    permanent_lockout_notify_email_address: str = Field(
        type=str, required=False, mutable=False,
    )
    device_profile_authentication_lockout_type: str = Field(
        type=str, required=True, mutable=False,
    )
    device_profile_temporary_lockout_threshold: int = Field(
        type=int, required=True, mutable=False,
    )
    device_profile_wait_algorithm: str = Field(type=str, required=True, mutable=False)
    device_profile_lockout_fixed_minutes: str = Field(type=str, required=True, mutable=False)
    device_profile_permanent_lockout_threshold: int = Field(
        type=int, required=True, mutable=False,
    )


class ServiceProviderDialPlanPolicyGetAccessCodeListResponse(OCIResponse):
    """
    Response to ``ServiceProviderDialPlanPolicyGetAccessCodeListRequest()``.

    Contains a table with column headings: "Access Code", "Enable Secondary Dial Tone",
    "Description".

    Attributes:
        access_code_table: accessCodeTable
    """

    _ELEMENTS = (
        E(
            "access_code_table", "accessCodeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    access_code_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderDialPlanPolicyGetAccessCodeResponse(OCIResponse):
    """
    Response to ``ServiceProviderDialPlanPolicyGetAccessCodeRequest()``

    Attributes:
        include_code_for_network_translations_and_routing:
            includeCodeForNetworkTranslationsAndRouting
        include_code_for_screening_services: includeCodeForScreeningServices
        enable_secondary_dial_tone: enableSecondaryDialTone
        description: description
    """

    _ELEMENTS = (
        E(
            "include_code_for_network_translations_and_routing",
            "includeCodeForNetworkTranslationsAndRouting", bool, is_required=True,
        ),
        E(
            "include_code_for_screening_services", "includeCodeForScreeningServices",
            bool, is_required=True,
        ),
        E("enable_secondary_dial_tone", "enableSecondaryDialTone", bool, is_required=True),
        E("description", "description", str),
    )

    include_code_for_network_translations_and_routing: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_code_for_screening_services: bool = Field(type=bool, required=True, mutable=False)
    enable_secondary_dial_tone: bool = Field(type=bool, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class ServiceProviderDialPlanPolicyGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderDialPlanPolicyGetRequest()`` Replaced by:
    ``ServiceProviderDialPlanPolicyGetResponse17()``

    Attributes:
        requires_access_code_for_public_calls: requiresAccessCodeForPublicCalls
        allow_e164_public_calls: allowE164PublicCalls
        public_digit_map: publicDigitMap
        private_digit_map: privateDigitMap
    """

    _ELEMENTS = (
        E(
            "requires_access_code_for_public_calls", "requiresAccessCodeForPublicCalls",
            bool, is_required=True,
        ),
        E("allow_e164_public_calls", "allowE164PublicCalls", bool, is_required=True),
        E("public_digit_map", "publicDigitMap", str),
        E("private_digit_map", "privateDigitMap", str),
    )

    requires_access_code_for_public_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_e164_public_calls: bool = Field(type=bool, required=True, mutable=False)
    public_digit_map: str = Field(type=str, required=False, mutable=False)
    private_digit_map: str = Field(type=str, required=False, mutable=False)


class ServiceProviderDialPlanPolicyGetResponse17(OCIResponse):
    """
    Response to ``ServiceProviderDialPlanPolicyGetRequest17()``

    Attributes:
        requires_access_code_for_public_calls: requiresAccessCodeForPublicCalls
        allow_e164_public_calls: allowE164PublicCalls
        prefer_e164_number_format_for_callback_services:
            preferE164NumberFormatForCallbackServices
        public_digit_map: publicDigitMap
        private_digit_map: privateDigitMap
    """

    _ELEMENTS = (
        E(
            "requires_access_code_for_public_calls", "requiresAccessCodeForPublicCalls",
            bool, is_required=True,
        ),
        E("allow_e164_public_calls", "allowE164PublicCalls", bool, is_required=True),
        E(
            "prefer_e164_number_format_for_callback_services",
            "preferE164NumberFormatForCallbackServices", bool, is_required=True,
        ),
        E("public_digit_map", "publicDigitMap", str),
        E("private_digit_map", "privateDigitMap", str),
    )

    requires_access_code_for_public_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_e164_public_calls: bool = Field(type=bool, required=True, mutable=False)
    prefer_e164_number_format_for_callback_services: bool = Field(
        type=bool, required=True, mutable=False,
    )
    public_digit_map: str = Field(type=str, required=False, mutable=False)
    private_digit_map: str = Field(type=str, required=False, mutable=False)


class ServiceProviderDialableCallerIDCriteriaGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderDialableCallerIDCriteriaGetRequest()``.

    The response contains the Dialable Caller ID Criteria information.

    Attributes:
        description: description
        prefix_digits: prefixDigits
        match_call_type: matchCallType
        match_alternate_call_indicator: matchAlternateCallIndicator
        match_local_category: matchLocalCategory
        match_national_category: matchNationalCategory
        match_interlata_category: matchInterlataCategory
        match_intralata_category: matchIntralataCategory
        match_international_category: matchInternationalCategory
        match_private_category: matchPrivateCategory
        match_emergency_category: matchEmergencyCategory
        match_other_category: matchOtherCategory
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("prefix_digits", "prefixDigits", str),
        E("match_call_type", "matchCallType", str, is_array=True),
        E(
            "match_alternate_call_indicator", "matchAlternateCallIndicator", str,
            is_array=True,
        ),
        E("match_local_category", "matchLocalCategory", bool, is_required=True),
        E("match_national_category", "matchNationalCategory", bool, is_required=True),
        E("match_interlata_category", "matchInterlataCategory", bool, is_required=True),
        E("match_intralata_category", "matchIntralataCategory", bool, is_required=True),
        E(
            "match_international_category", "matchInternationalCategory", bool,
            is_required=True,
        ),
        E("match_private_category", "matchPrivateCategory", bool, is_required=True),
        E("match_emergency_category", "matchEmergencyCategory", bool, is_required=True),
        E("match_other_category", "matchOtherCategory", bool, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    prefix_digits: str = Field(type=str, required=False, mutable=False)
    match_call_type: "List[str]" = Field(type=list, required=False, mutable=False)
    match_alternate_call_indicator: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    match_local_category: bool = Field(type=bool, required=True, mutable=False)
    match_national_category: bool = Field(type=bool, required=True, mutable=False)
    match_interlata_category: bool = Field(type=bool, required=True, mutable=False)
    match_intralata_category: bool = Field(type=bool, required=True, mutable=False)
    match_international_category: bool = Field(type=bool, required=True, mutable=False)
    match_private_category: bool = Field(type=bool, required=True, mutable=False)
    match_emergency_category: bool = Field(type=bool, required=True, mutable=False)
    match_other_category: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderDialableCallerIDGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderDialableCallerIDGetRequest()``.

    The criteria table?s column headings are ?Active?, "Name", "Description", ?Prefix
    Digits?, and ?Priority?.

    Attributes:
        use_service_provider_criteria: useServiceProviderCriteria
        ns_screening_failure_policy: nsScreeningFailurePolicy
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "use_service_provider_criteria", "useServiceProviderCriteria", bool,
            is_required=True,
        ),
        E("ns_screening_failure_policy", "nsScreeningFailurePolicy", str, is_required=True),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    use_service_provider_criteria: bool = Field(type=bool, required=True, mutable=False)
    ns_screening_failure_policy: str = Field(type=str, required=True, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderDigitCollectionGetResponse13mp4(OCIResponse):
    """
    Response to ``ServiceProviderDigitCollectionGetRequest13mp4()``.


    Attributes:
        access_code: accessCode
        public_digit_map: publicDigitMap
        private_digit_map: privateDigitMap
    """

    _ELEMENTS = (
        E("access_code", "accessCode", str),
        E("public_digit_map", "publicDigitMap", str),
        E("private_digit_map", "privateDigitMap", str),
    )

    access_code: str = Field(type=str, required=False, mutable=False)
    public_digit_map: str = Field(type=str, required=False, mutable=False)
    private_digit_map: str = Field(type=str, required=False, mutable=False)


class ServiceProviderDnGetAvailableListResponse(OCIResponse):
    """
    Response to ``ServiceProviderDnGetAvailableListRequest()``.

    Contains a list of available DNs not yet assigned to any group.

    Attributes:
        available_dn: availableDn
    """

    _ELEMENTS = (
        E("available_dn", "availableDn", str, is_array=True),
    )

    available_dn: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderDnGetSummaryListResponse(OCIResponse):
    """
    Response to ``ServiceProviderDnGetSummaryListRequest()``.

    The column headings are "Phone Numbers, "Group Id" and "Can Delete"

    Attributes:
        dn_summary_table: dnSummaryTable
    """

    _ELEMENTS = (
        E(
            "dn_summary_table", "dnSummaryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    dn_summary_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderDomainGetAssignedGroupListResponse(OCIResponse):
    """
    Response to ``ServiceProviderDomainGetAssignedGroupListRequest()``.

    Contains a table with column headings: "Group Id", "Group Name" and a row for each
    group.

    Attributes:
        group_table: groupTable
    """

    _ELEMENTS = (
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    group_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderDomainGetAssignedListResponse(OCIResponse):
    """
    Contains a simple list of all service provider domain names.


    Attributes:
        service_provider_default_domain: serviceProviderDefaultDomain
        domain: domain
    """

    _ELEMENTS = (
        E(
            "service_provider_default_domain", "serviceProviderDefaultDomain", str,
            is_required=True,
        ),
        E("domain", "domain", str, is_array=True),
    )

    service_provider_default_domain: str = Field(type=str, required=True, mutable=False)
    domain: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderEndpointGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderEndpointGetListRequest()``.

    The column headings for the endpointTable are: "Group Id", "Line/Port", "Last Name",
    "First Name", "User Id", "User Type", "Phone Number", "Extension", "Device Type",
    "Device Name", "Net Address", "MAC Address", "Department", "Email Address". Possible
    values for User Type are "User", "CCBasic", "CCStandard", "CCPremium", "RP", "MOH",
    "MOHVideo".

    Attributes:
        endpoint_table: endpointTable
    """

    _ELEMENTS = (
        E(
            "endpoint_table", "endpointTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    endpoint_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderEnhancedCallLogsGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderEnhancedCallLogsGetRequest()``.


    Attributes:
        max_logged_calls: maxLoggedCalls
        call_expiration_days: callExpirationDays
    """

    _ELEMENTS = (
        E("max_logged_calls", "maxLoggedCalls", int, is_required=True),
        E("call_expiration_days", "callExpirationDays", int, is_required=True),
    )

    max_logged_calls: int = Field(type=int, required=True, mutable=False)
    call_expiration_days: int = Field(type=int, required=True, mutable=False)


class ServiceProviderEnhancedCallLogsGetResponse17sp4(OCIResponse):
    """
    Response to ``ServiceProviderEnhancedCallLogsGetRequest17sp4()``.


    Attributes:
        max_logged_calls: maxLoggedCalls
        call_expiration_days: callExpirationDays
    """

    _ELEMENTS = (
        E("max_logged_calls", "maxLoggedCalls", int, is_required=True),
        E("call_expiration_days", "callExpirationDays", int, is_required=True),
    )

    max_logged_calls: int = Field(type=int, required=True, mutable=False)
    call_expiration_days: int = Field(type=int, required=True, mutable=False)


class ServiceProviderExternalCustomRingbackGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderExternalCustomRingbackGetRequest()``.


    Attributes:
        prefix_digits: prefixDigits
        server_net_address: serverNetAddress
        server_port: serverPort
        timeout_seconds: timeoutSeconds
    """

    _ELEMENTS = (
        E("prefix_digits", "prefixDigits", str),
        E("server_net_address", "serverNetAddress", str),
        E("server_port", "serverPort", int),
        E("timeout_seconds", "timeoutSeconds", int, is_required=True),
    )

    prefix_digits: str = Field(type=str, required=False, mutable=False)
    server_net_address: str = Field(type=str, required=False, mutable=False)
    server_port: int = Field(type=int, required=False, mutable=False)
    timeout_seconds: int = Field(type=int, required=True, mutable=False)


class ServiceProviderFileRepositoryDeviceUserGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderFileRepositoryDeviceUserGetListRequest()``.

    Contains a table with column headings : "User Name","Allow Delete","Allow Get","Allow
    Put" in a row for each file repository service provider user.

    Attributes:
        file_repository_user_table: fileRepositoryUserTable
    """

    _ELEMENTS = (
        E(
            "file_repository_user_table", "fileRepositoryUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    file_repository_user_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderGetDefaultResponse(OCIResponse):
    """
    Response to the ``ServiceProviderGetDefaultRequest()``.

    All values are default values for a service provider or enterprise's profile.

    Attributes:
        is_enterprise: isEnterprise
        default_domain: defaultDomain
    """

    _ELEMENTS = (
        E("is_enterprise", "isEnterprise", bool, is_required=True),
        E("default_domain", "defaultDomain", str, is_required=True),
    )

    is_enterprise: bool = Field(type=bool, required=True, mutable=False)
    default_domain: str = Field(type=str, required=True, mutable=False)


class ServiceProviderGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderGetListRequest()``.

    Contains a 3 column table with column headings 'Service Provider Id', 'Service
    Provider Name' and 'Is Enterprise' and a row for each service provider or enterprise.

    Attributes:
        service_provider_table: serviceProviderTable
    """

    _ELEMENTS = (
        E(
            "service_provider_table", "serviceProviderTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_provider_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderGroupPagingTargetsCapacityGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderGroupPagingTargetsCapacityGetRequest()``.


    Attributes:
        maximum_target_users: maximumTargetUsers
    """

    _ELEMENTS = (
        E("maximum_target_users", "maximumTargetUsers", int, is_required=True),
    )

    maximum_target_users: int = Field(type=int, required=True, mutable=False)


class ServiceProviderIMRNGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderIMRNGetListRequest()``.


    Attributes:
        imrn: imrn
    """

    _ELEMENTS = (
        E("imrn", "imrn", str, is_array=True),
    )

    imrn: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderInCallServiceActivationGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderInCallServiceActivationGetRequest()``.

    Replaced by: ``ServiceProviderInCallServiceActivationGetResponse17()``

    Attributes:
        activation_digits: activationDigits
    """

    _ELEMENTS = (
        E("activation_digits", "activationDigits", str, is_required=True),
    )

    activation_digits: str = Field(type=str, required=True, mutable=False)


class ServiceProviderInCallServiceActivationGetResponse17(OCIResponse):
    """
    Response to ``ServiceProviderInCallServiceActivationGetRequest17()``.


    Attributes:
        flash_activation_digits: flashActivationDigits
        call_transfer_activation_digits: callTransferActivationDigits
    """

    _ELEMENTS = (
        E("flash_activation_digits", "flashActivationDigits", str, is_required=True),
        E(
            "call_transfer_activation_digits", "callTransferActivationDigits", str,
            is_required=True,
        ),
    )

    flash_activation_digits: str = Field(type=str, required=True, mutable=False)
    call_transfer_activation_digits: str = Field(type=str, required=True, mutable=False)


class ServiceProviderIntegratedIMPGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderIntegratedIMPGetRequest()``.

    The response contains the service provider Integrated IMP service attributes.
    Replaced by: ``ServiceProviderIntegratedIMPGetResponse21()``

    Attributes:
        use_system_service_domain: useSystemServiceDomain
        service_domain: serviceDomain
    """

    _ELEMENTS = (
        E("use_system_service_domain", "useSystemServiceDomain", bool, is_required=True),
        E("service_domain", "serviceDomain", str),
    )

    use_system_service_domain: bool = Field(type=bool, required=True, mutable=False)
    service_domain: str = Field(type=str, required=False, mutable=False)


class ServiceProviderIntegratedIMPGetResponse21(OCIResponse):
    """
    Response to the ``ServiceProviderIntegratedIMPGetRequest21()``.

    The response contains the service provider Integrated IMP service attributes.

    Attributes:
        use_system_service_domain: useSystemServiceDomain
        service_domain: serviceDomain
        service_port: servicePort
        use_system_messaging_server: useSystemMessagingServer
        provisioning_url: provisioningUrl
        provisioning_user_id: provisioningUserId
        bosh_url: boshURL
    """

    _ELEMENTS = (
        E("use_system_service_domain", "useSystemServiceDomain", bool, is_required=True),
        E("service_domain", "serviceDomain", str),
        E("service_port", "servicePort", int),
        E("use_system_messaging_server", "useSystemMessagingServer", bool, is_required=True),
        E("provisioning_url", "provisioningUrl", str),
        E("provisioning_user_id", "provisioningUserId", str),
        E("bosh_url", "boshURL", str),
    )

    use_system_service_domain: bool = Field(type=bool, required=True, mutable=False)
    service_domain: str = Field(type=str, required=False, mutable=False)
    service_port: int = Field(type=int, required=False, mutable=False)
    use_system_messaging_server: bool = Field(type=bool, required=True, mutable=False)
    provisioning_url: str = Field(type=str, required=False, mutable=False)
    provisioning_user_id: str = Field(type=str, required=False, mutable=False)
    bosh_url: str = Field(type=str, required=False, mutable=False)


class ServiceProviderLDAPIntegrationGetDirectoryResponse(OCIResponse):
    """
    Response to ``ServiceProviderLDAPIntegrationGetDirectoryRequest()``.


    Attributes:
        server_net_address: serverNetAddress
        server_port: serverPort
        search_base: searchBase
        use_ssl: useSSL
        require_authentication: requireAuthentication
        authenticated_dn: authenticatedDN
        authenticated_password: authenticatedPassword
        is_sort_enabled: isSortEnabled
        is_paged_result_enabled: isPagedResultEnabled
        search_filter: searchFilter
        include_search_attribute_in_search_filter: includeSearchAttributeInSearchFilter
        column1_attribute_name: column1AttributeName
        column2_attribute_name: column2AttributeName
        column3_attribute_name: column3AttributeName
        column4_attribute_name: column4AttributeName
        column1_label: column1Label
        column2_label: column2Label
        column3_label: column3Label
        column4_label: column4Label
        search_column: searchColumn
    """

    _ELEMENTS = (
        E("server_net_address", "serverNetAddress", str),
        E("server_port", "serverPort", int, is_required=True),
        E("search_base", "searchBase", str),
        E("use_ssl", "useSSL", bool, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("authenticated_dn", "authenticatedDN", str),
        E("authenticated_password", "authenticatedPassword", str),
        E("is_sort_enabled", "isSortEnabled", bool, is_required=True),
        E("is_paged_result_enabled", "isPagedResultEnabled", bool, is_required=True),
        E("search_filter", "searchFilter", str),
        E(
            "include_search_attribute_in_search_filter",
            "includeSearchAttributeInSearchFilter", bool, is_required=True,
        ),
        E("column1_attribute_name", "column1AttributeName", str, is_required=True),
        E("column2_attribute_name", "column2AttributeName", str),
        E("column3_attribute_name", "column3AttributeName", str),
        E("column4_attribute_name", "column4AttributeName", str),
        E("column1_label", "column1Label", str),
        E("column2_label", "column2Label", str),
        E("column3_label", "column3Label", str),
        E("column4_label", "column4Label", str),
        E("search_column", "searchColumn", int, is_required=True),
    )

    server_net_address: str = Field(type=str, required=False, mutable=False)
    server_port: int = Field(type=int, required=True, mutable=False)
    search_base: str = Field(type=str, required=False, mutable=False)
    use_ssl: bool = Field(type=bool, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    authenticated_dn: str = Field(type=str, required=False, mutable=False)
    authenticated_password: str = Field(type=str, required=False, mutable=False)
    is_sort_enabled: bool = Field(type=bool, required=True, mutable=False)
    is_paged_result_enabled: bool = Field(type=bool, required=True, mutable=False)
    search_filter: str = Field(type=str, required=False, mutable=False)
    include_search_attribute_in_search_filter: bool = Field(
        type=bool, required=True, mutable=False,
    )
    column1_attribute_name: str = Field(type=str, required=True, mutable=False)
    column2_attribute_name: str = Field(type=str, required=False, mutable=False)
    column3_attribute_name: str = Field(type=str, required=False, mutable=False)
    column4_attribute_name: str = Field(type=str, required=False, mutable=False)
    column1_label: str = Field(type=str, required=False, mutable=False)
    column2_label: str = Field(type=str, required=False, mutable=False)
    column3_label: str = Field(type=str, required=False, mutable=False)
    column4_label: str = Field(type=str, required=False, mutable=False)
    search_column: int = Field(type=int, required=True, mutable=False)


class ServiceProviderLanguageGetAvailableListResponse(OCIResponse):
    """
    Response to ``ServiceProviderLanguageGetAvailableListRequest()``.

    The language table column headings are: "Language", "Locale" and "Encoding".

    Attributes:
        default_language: defaultLanguage
        language_table: languageTable
    """

    _ELEMENTS = (
        E("default_language", "defaultLanguage", str, is_required=True),
        E(
            "language_table", "languageTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    default_language: str = Field(type=str, required=True, mutable=False)
    language_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderLanguageGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderLanguageGetListRequest()``.


    Attributes:
        language: language
        default_language: defaultLanguage
    """

    _ELEMENTS = (
        E("language", "language", str, is_array=True),
        E("default_language", "defaultLanguage", str),
    )

    language: "List[str]" = Field(type=list, required=False, mutable=False)
    default_language: str = Field(type=str, required=False, mutable=False)


class ServiceProviderMWIDeliveryToMobileEndpointGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderMWIDeliveryToMobileEndpointGetRequest()``.

    The templateActivationTable contains the list of templates defined for the service
    provider.  The column headings are "Enable", "Language", "Type".

    Attributes:
        template_activation_table: templateActivationTable
    """

    _ELEMENTS = (
        E(
            "template_activation_table", "templateActivationTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    template_activation_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderMaliciousCallTraceGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderMaliciousCallTraceGetRequest()``.

    The response contains the service provider Malicious Call Trace settings.

    Attributes:
        use_system_play_mct_warning_announcement: useSystemPlayMCTWarningAnnouncement
        play_mct_warning_announcement: playMCTWarningAnnouncement
    """

    _ELEMENTS = (
        E(
            "use_system_play_mct_warning_announcement",
            "useSystemPlayMCTWarningAnnouncement", bool, is_required=True,
        ),
        E(
            "play_mct_warning_announcement", "playMCTWarningAnnouncement", bool,
            is_required=True,
        ),
    )

    use_system_play_mct_warning_announcement: bool = Field(
        type=bool, required=True, mutable=False,
    )
    play_mct_warning_announcement: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderNetworkClassOfServiceGetAssignedGroupListResponse(OCIResponse):
    """
    Response to ``ServiceProviderNetworkClassOfServiceGetAssignedGroupListRequest()``.

    Contains a table of groups that have the Network Class of Service assigned.  The
    column headings are: "Group Id" and "Group Name".

    Attributes:
        group_table: groupTable
    """

    _ELEMENTS = (
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    group_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderNetworkClassOfServiceGetAssignedListResponse(OCIResponse):
    """
    Response to ``ServiceProviderNetworkClassOfServiceGetAssignedListRequest()``.

    Contains a table of all Network Classes of Service assigned to the service provider.
    The column headings are: "Name", "Description" and "Default".

    Attributes:
        network_class_of_service_table: networkClassOfServiceTable
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table", "networkClassOfServiceTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    network_class_of_service_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderNumberPortabilityQueryGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderNumberPortabilityQueryGetRequest()``.

    The response contains the service provider number portability query information.

    Attributes:
        enable_number_portability_query_for_outgoing_calls:
            enableNumberPortabilityQueryForOutgoingCalls
        enable_number_portability_query_for_incoming_calls:
            enableNumberPortabilityQueryForIncomingCalls
        enable_number_portability_query_for_network_calls_only:
            enableNumberPortabilityQueryForNetworkCallsOnly
        digit_pattern: digitPattern
    """

    _ELEMENTS = (
        E(
            "enable_number_portability_query_for_outgoing_calls",
            "enableNumberPortabilityQueryForOutgoingCalls", bool, is_required=True,
        ),
        E(
            "enable_number_portability_query_for_incoming_calls",
            "enableNumberPortabilityQueryForIncomingCalls", bool, is_required=True,
        ),
        E(
            "enable_number_portability_query_for_network_calls_only",
            "enableNumberPortabilityQueryForNetworkCallsOnly", bool, is_required=True,
        ),
        E("digit_pattern", "digitPattern", str, is_array=True),
    )

    enable_number_portability_query_for_outgoing_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_number_portability_query_for_incoming_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_number_portability_query_for_network_calls_only: bool = Field(
        type=bool, required=True, mutable=False,
    )
    digit_pattern: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderOfficeZoneGetAssignedGroupListResponse(OCIResponse):
    """
    Response to ``ServiceProviderOfficeZoneGetAssignedGroupListRequest()``.

    Contains a table of groups that have the Office Zone assigned.  The column headings
    are: "Group Id" and "Group Name".

    Attributes:
        group_table: groupTable
    """

    _ELEMENTS = (
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    group_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderOfficeZoneGetAssignedListResponse(OCIResponse):
    """
    Response to ``ServiceProviderOfficeZoneGetAssignedListRequest()``.

    Contains a table of all Office Zones assigned to the service provider.  The column
    headings are: "Name", "Description" and "Default".

    Attributes:
        office_zone_table: officeZoneTable
    """

    _ELEMENTS = (
        E(
            "office_zone_table", "officeZoneTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    office_zone_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderPasswordRulesGetResponse13mp2(OCIResponse):
    """
    Response to ``ServiceProviderPasswordRulesGetRequest13mp2()``.

    Contains the group, department administrator and/or user password rules setting.

    Replaced By: ``ServiceProviderPasswordRulesGetResponse16()``

    Attributes:
        service_provider_id: serviceProviderId
        rules_apply_to: rulesApplyTo
        allow_web_add_external_authentication_users:
            allowWebAddExternalAuthenticationUsers
        disallow_user_id: disallowUserId
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        max_failed_login_attempts: maxFailedLoginAttempts
        password_expires_days: passwordExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
        disallow_rules_modification: disallowRulesModification
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("rules_apply_to", "rulesApplyTo", str, is_required=True),
        E(
            "allow_web_add_external_authentication_users",
            "allowWebAddExternalAuthenticationUsers", bool, is_required=True,
        ),
        E("disallow_user_id", "disallowUserId", bool, is_required=True),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int, is_required=True),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
        E("disallow_rules_modification", "disallowRulesModification", bool, is_required=True),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    rules_apply_to: str = Field(type=str, required=True, mutable=False)
    allow_web_add_external_authentication_users: bool = Field(
        type=bool, required=True, mutable=False,
    )
    disallow_user_id: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    max_failed_login_attempts: int = Field(type=int, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=True, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)
    disallow_rules_modification: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderPasswordRulesGetResponse16(OCIResponse):
    """
    Response to ``ServiceProviderPasswordRulesGetRequest16()``.

    Contains the group, department administrator and/or user password rules setting.

    Attributes:
        rules_apply_to: rulesApplyTo
        allow_web_add_external_authentication_users:
            allowWebAddExternalAuthenticationUsers
        disallow_user_id: disallowUserId
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        max_failed_login_attempts: maxFailedLoginAttempts
        password_expires_days: passwordExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
        disallow_rules_modification: disallowRulesModification
        disallow_previous_passwords: disallowPreviousPasswords
        number_of_previous_passwords: numberOfPreviousPasswords
    """

    _ELEMENTS = (
        E("rules_apply_to", "rulesApplyTo", str, is_required=True),
        E(
            "allow_web_add_external_authentication_users",
            "allowWebAddExternalAuthenticationUsers", bool, is_required=True,
        ),
        E("disallow_user_id", "disallowUserId", bool, is_required=True),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int, is_required=True),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
        E("disallow_rules_modification", "disallowRulesModification", bool, is_required=True),
        E("disallow_previous_passwords", "disallowPreviousPasswords", bool, is_required=True),
        E("number_of_previous_passwords", "numberOfPreviousPasswords", int, is_required=True),
    )

    rules_apply_to: str = Field(type=str, required=True, mutable=False)
    allow_web_add_external_authentication_users: bool = Field(
        type=bool, required=True, mutable=False,
    )
    disallow_user_id: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    max_failed_login_attempts: int = Field(type=int, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=True, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)
    disallow_rules_modification: bool = Field(type=bool, required=True, mutable=False)
    disallow_previous_passwords: bool = Field(type=bool, required=True, mutable=False)
    number_of_previous_passwords: int = Field(type=int, required=True, mutable=False)


class ServiceProviderPortalPasscodeRulesGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderPortalPasscodeRulesGetRequest()``.

    Contains the service provider's passcode rules setting.

    Attributes:
        disallow_repeated_digits: disallowRepeatedDigits
        disallow_user_number: disallowUserNumber
        disallow_reversed_user_number: disallowReversedUserNumber
        disallow_old_passcode: disallowOldPasscode
        disallow_reversed_old_passcode: disallowReversedOldPasscode
        min_code_length: minCodeLength
        max_code_length: maxCodeLength
        disable_login_after_max_failed_login_attempts:
            disableLoginAfterMaxFailedLoginAttempts
        max_failed_login_attempts: maxFailedLoginAttempts
        expire_password: expirePassword
        passcode_expires_days: passcodeExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
    """

    _ELEMENTS = (
        E("disallow_repeated_digits", "disallowRepeatedDigits", bool, is_required=True),
        E("disallow_user_number", "disallowUserNumber", bool, is_required=True),
        E(
            "disallow_reversed_user_number", "disallowReversedUserNumber", bool,
            is_required=True,
        ),
        E("disallow_old_passcode", "disallowOldPasscode", bool, is_required=True),
        E(
            "disallow_reversed_old_passcode", "disallowReversedOldPasscode", bool,
            is_required=True,
        ),
        E("min_code_length", "minCodeLength", int, is_required=True),
        E("max_code_length", "maxCodeLength", int, is_required=True),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts", bool, is_required=True,
        ),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int),
        E("expire_password", "expirePassword", bool, is_required=True),
        E("passcode_expires_days", "passcodeExpiresDays", int),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
    )

    disallow_repeated_digits: bool = Field(type=bool, required=True, mutable=False)
    disallow_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    min_code_length: int = Field(type=int, required=True, mutable=False)
    max_code_length: int = Field(type=int, required=True, mutable=False)
    disable_login_after_max_failed_login_attempts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_failed_login_attempts: int = Field(type=int, required=False, mutable=False)
    expire_password: bool = Field(type=bool, required=True, mutable=False)
    passcode_expires_days: int = Field(type=int, required=False, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)


class ServiceProviderPortalPasscodeRulesGetResponse19(OCIResponse):
    """
    Response to ``ServiceProviderPortalPasscodeRulesGetRequest19()``.

    Contains the service provider's passcode rules setting.  The following elements are
    only used in AS data mode: numberOfRepeatedDigits disallowRepeatedPatterns
    disallowContiguousSequences numberOfAscendingDigits numberOfDescendingDigits
    numberOfPreviousPasscodes

    Attributes:
        disallow_repeated_digits: disallowRepeatedDigits
        number_of_repeated_digits: numberOfRepeatedDigits
        disallow_repeated_patterns: disallowRepeatedPatterns
        disallow_contiguous_sequences: disallowContiguousSequences
        number_of_ascending_digits: numberOfAscendingDigits
        number_of_descending_digits: numberOfDescendingDigits
        disallow_user_number: disallowUserNumber
        disallow_reversed_user_number: disallowReversedUserNumber
        disallow_old_passcode: disallowOldPasscode
        number_of_previous_passcodes: numberOfPreviousPasscodes
        disallow_reversed_old_passcode: disallowReversedOldPasscode
        min_code_length: minCodeLength
        max_code_length: maxCodeLength
        disable_login_after_max_failed_login_attempts:
            disableLoginAfterMaxFailedLoginAttempts
        max_failed_login_attempts: maxFailedLoginAttempts
        expire_password: expirePassword
        passcode_expires_days: passcodeExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
    """

    _ELEMENTS = (
        E("disallow_repeated_digits", "disallowRepeatedDigits", bool, is_required=True),
        E("number_of_repeated_digits", "numberOfRepeatedDigits", int, is_required=True),
        E("disallow_repeated_patterns", "disallowRepeatedPatterns", bool, is_required=True),
        E(
            "disallow_contiguous_sequences", "disallowContiguousSequences", bool,
            is_required=True,
        ),
        E("number_of_ascending_digits", "numberOfAscendingDigits", int, is_required=True),
        E("number_of_descending_digits", "numberOfDescendingDigits", int, is_required=True),
        E("disallow_user_number", "disallowUserNumber", bool, is_required=True),
        E(
            "disallow_reversed_user_number", "disallowReversedUserNumber", bool,
            is_required=True,
        ),
        E("disallow_old_passcode", "disallowOldPasscode", bool, is_required=True),
        E("number_of_previous_passcodes", "numberOfPreviousPasscodes", int, is_required=True),
        E(
            "disallow_reversed_old_passcode", "disallowReversedOldPasscode", bool,
            is_required=True,
        ),
        E("min_code_length", "minCodeLength", int, is_required=True),
        E("max_code_length", "maxCodeLength", int, is_required=True),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts", bool, is_required=True,
        ),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int),
        E("expire_password", "expirePassword", bool, is_required=True),
        E("passcode_expires_days", "passcodeExpiresDays", int),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
    )

    disallow_repeated_digits: bool = Field(type=bool, required=True, mutable=False)
    number_of_repeated_digits: int = Field(type=int, required=True, mutable=False)
    disallow_repeated_patterns: bool = Field(type=bool, required=True, mutable=False)
    disallow_contiguous_sequences: bool = Field(type=bool, required=True, mutable=False)
    number_of_ascending_digits: int = Field(type=int, required=True, mutable=False)
    number_of_descending_digits: int = Field(type=int, required=True, mutable=False)
    disallow_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    number_of_previous_passcodes: int = Field(type=int, required=True, mutable=False)
    disallow_reversed_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    min_code_length: int = Field(type=int, required=True, mutable=False)
    max_code_length: int = Field(type=int, required=True, mutable=False)
    disable_login_after_max_failed_login_attempts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_failed_login_attempts: int = Field(type=int, required=False, mutable=False)
    expire_password: bool = Field(type=bool, required=True, mutable=False)
    passcode_expires_days: int = Field(type=int, required=False, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)


class ServiceProviderPreferredCarrierGetAvailableCountryCodeListResponse(OCIResponse):
    """
    Response to a ``ServiceProviderPreferredCarrierGetAvailableCountryCodeListRequest()``.

    Contains the default country code and the list of unused country codes for a service
    provider / enterprise.

    Attributes:
        default_country_code: defaultCountryCode
        country_code: countryCode
    """

    _ELEMENTS = (
        E("default_country_code", "defaultCountryCode", str),
        E("country_code", "countryCode", str, is_array=True),
    )

    default_country_code: str = Field(type=str, required=False, mutable=False)
    country_code: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderPreferredCarrierGetCarrierListResponse(OCIResponse):
    """
    Response to a ``ServiceProviderPreferredCarrierGetCarrierListRequest()``.

    Contains the lists of carriers for a specified country code for a service provider /
    enterprise.

    Attributes:
        intra_lata_carrier: intraLataCarrier
        inter_lata_carrier: interLataCarrier
        international_carrier: internationalCarrier
    """

    _ELEMENTS = (
        E("intra_lata_carrier", "intraLataCarrier", str, is_array=True),
        E("inter_lata_carrier", "interLataCarrier", str, is_array=True),
        E("international_carrier", "internationalCarrier", str, is_array=True),
    )

    intra_lata_carrier: "List[str]" = Field(type=list, required=False, mutable=False)
    inter_lata_carrier: "List[str]" = Field(type=list, required=False, mutable=False)
    international_carrier: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderPreferredCarrierGetListResponse(OCIResponse):
    """
    Response to a ``ServiceProviderPreferredCarrierGetListRequest()``.

    Contains a table with one row per carrier.  The table columns are: "Country Code",
    "Intra-Lata PIC", "Inter-Lata PIC", "International PIC".

    Attributes:
        service_provider_carrier_table: serviceProviderCarrierTable
    """

    _ELEMENTS = (
        E(
            "service_provider_carrier_table", "serviceProviderCarrierTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    service_provider_carrier_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderPreferredCarrierGetResponse(OCIResponse):
    """
    Response to a ``ServiceProviderPreferredCarrierGetRequest()``.

    Contains the currently configured carriers for a specified country code for a service
    provider / enterprise.

    Attributes:
        intra_lata_carrier: intraLataCarrier
        inter_lata_carrier: interLataCarrier
        international_carrier: internationalCarrier
    """

    _ELEMENTS = (
        E("intra_lata_carrier", "intraLataCarrier", str),
        E("inter_lata_carrier", "interLataCarrier", str),
        E("international_carrier", "internationalCarrier", str),
    )

    intra_lata_carrier: str = Field(type=str, required=False, mutable=False)
    inter_lata_carrier: str = Field(type=str, required=False, mutable=False)
    international_carrier: str = Field(type=str, required=False, mutable=False)


class ServiceProviderRouteListEnterpriseTrunkNumberRangeGetAvailableListResponse(OCIResponse):
    """
    Response to
    ``ServiceProviderRouteListEnterpriseTrunkNumberRangeGetAvailableListRequest()``.

    Contains a list of available number ranges not yet assigned to any group.  The column
    headings are "Number Range Start", "Number Range End" and "Is Active".

    Attributes:
        available_number_range_table: availableNumberRangeTable
    """

    _ELEMENTS = (
        E(
            "available_number_range_table", "availableNumberRangeTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    available_number_range_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderRouteListEnterpriseTrunkNumberRangeGetSummaryListResponse(OCIResponse):
    """
    Response to
    ``ServiceProviderRouteListEnterpriseTrunkNumberRangeGetSummaryListRequest()``.

    The column headings are "Number Range Start", "Number Range End", "Group Id" and "Is
    Active".

    Attributes:
        number_range_summary_table: numberRangeSummaryTable
    """

    _ELEMENTS = (
        E(
            "number_range_summary_table", "numberRangeSummaryTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    number_range_summary_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderRoutePointExternalSystemGetAssignedGroupListResponse(OCIResponse):
    """
    Response to ``ServiceProviderRoutePointExternalSystemGetAssignedGroupListRequest()``.

    Contains a table with column headings: "Group Id", "Group Name" and a row for each
    group.

    Attributes:
        group_table: groupTable
    """

    _ELEMENTS = (
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    group_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderRoutePointExternalSystemGetAssignedListResponse(OCIResponse):
    """
    Response to the ``ServiceProviderRoutePointExternalSystemGetAssignedListRequest()``.

    Contains a table of all Route Point External Systems assigned to the service provider.
    The column headings are: "Name" and "Description".

    Attributes:
        external_system_table: externalSystemTable
    """

    _ELEMENTS = (
        E(
            "external_system_table", "externalSystemTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    external_system_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderRoutingProfileGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderRoutingProfileGetRequest()``.


    Attributes:
        routing_profile: routingProfile
    """

    _ELEMENTS = (
        E("routing_profile", "routingProfile", str),
    )

    routing_profile: str = Field(type=str, required=False, mutable=False)


class ServiceProviderSIPAuthenticationPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderSIPAuthenticationPasswordRulesGetRequest()``.

    Contains the SIP authentication password rules for the service provider.

    Attributes:
        use_service_provider_settings: useServiceProviderSettings
        disallow_authentication_name: disallowAuthenticationName
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        send_permanent_lockout_notification: sendPermanentLockoutNotification
        permanent_lockout_notify_email_address: permanentLockoutNotifyEmailAddress
        endpoint_authentication_lockout_type: endpointAuthenticationLockoutType
        endpoint_temporary_lockout_threshold: endpointTemporaryLockoutThreshold
        endpoint_wait_algorithm: endpointWaitAlgorithm
        endpoint_lockout_fixed_minutes: endpointLockoutFixedMinutes
        endpoint_permanent_lockout_threshold: endpointPermanentLockoutThreshold
        trunk_group_temporary_lockout_threshold: trunkGroupTemporaryLockoutThreshold
        trunk_group_authentication_lockout_type: trunkGroupAuthenticationLockoutType
        trunk_group_wait_algorithm: trunkGroupWaitAlgorithm
        trunk_group_lockout_fixed_minutes: trunkGroupLockoutFixedMinutes
        trunk_group_permanent_lockout_threshold: trunkGroupPermanentLockoutThreshold
    """

    _ELEMENTS = (
        E(
            "use_service_provider_settings", "useServiceProviderSettings", bool,
            is_required=True,
        ),
        E(
            "disallow_authentication_name", "disallowAuthenticationName", bool,
            is_required=True,
        ),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E(
            "send_permanent_lockout_notification", "sendPermanentLockoutNotification",
            bool, is_required=True,
        ),
        E(
            "permanent_lockout_notify_email_address",
            "permanentLockoutNotifyEmailAddress", str,
        ),
        E(
            "endpoint_authentication_lockout_type", "endpointAuthenticationLockoutType",
            str, is_required=True,
        ),
        E(
            "endpoint_temporary_lockout_threshold", "endpointTemporaryLockoutThreshold",
            int, is_required=True,
        ),
        E("endpoint_wait_algorithm", "endpointWaitAlgorithm", str, is_required=True),
        E(
            "endpoint_lockout_fixed_minutes", "endpointLockoutFixedMinutes", str,
            is_required=True,
        ),
        E(
            "endpoint_permanent_lockout_threshold", "endpointPermanentLockoutThreshold",
            int, is_required=True,
        ),
        E(
            "trunk_group_temporary_lockout_threshold",
            "trunkGroupTemporaryLockoutThreshold", int, is_required=True,
        ),
        E(
            "trunk_group_authentication_lockout_type",
            "trunkGroupAuthenticationLockoutType", str, is_required=True,
        ),
        E("trunk_group_wait_algorithm", "trunkGroupWaitAlgorithm", str, is_required=True),
        E(
            "trunk_group_lockout_fixed_minutes", "trunkGroupLockoutFixedMinutes", str,
            is_required=True,
        ),
        E(
            "trunk_group_permanent_lockout_threshold",
            "trunkGroupPermanentLockoutThreshold", int, is_required=True,
        ),
    )

    use_service_provider_settings: bool = Field(type=bool, required=True, mutable=False)
    disallow_authentication_name: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    send_permanent_lockout_notification: bool = Field(type=bool, required=True, mutable=False)
    permanent_lockout_notify_email_address: str = Field(
        type=str, required=False, mutable=False,
    )
    endpoint_authentication_lockout_type: str = Field(type=str, required=True, mutable=False)
    endpoint_temporary_lockout_threshold: int = Field(type=int, required=True, mutable=False)
    endpoint_wait_algorithm: str = Field(type=str, required=True, mutable=False)
    endpoint_lockout_fixed_minutes: str = Field(type=str, required=True, mutable=False)
    endpoint_permanent_lockout_threshold: int = Field(type=int, required=True, mutable=False)
    trunk_group_temporary_lockout_threshold: int = Field(
        type=int, required=True, mutable=False,
    )
    trunk_group_authentication_lockout_type: str = Field(
        type=str, required=True, mutable=False,
    )
    trunk_group_wait_algorithm: str = Field(type=str, required=True, mutable=False)
    trunk_group_lockout_fixed_minutes: str = Field(type=str, required=True, mutable=False)
    trunk_group_permanent_lockout_threshold: int = Field(
        type=int, required=True, mutable=False,
    )


class ServiceProviderScheduleGetEventListResponse(OCIResponse):
    """
    Response to ``ServiceProviderScheduleGetEventListRequest()``.

    The response contains a list of events.

    Attributes:
        event_name: eventName
    """

    _ELEMENTS = (
        E("event_name", "eventName", str, is_array=True),
    )

    event_name: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderServiceGetAuthorizationListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServiceGetAuthorizationListRequest()``.

    Contains two tables, one for the group services and one for the user services.  The
    Group Service table has column headings: "Service Name", "Authorized", "Assigned",
    "Limited", "Quantity", "Allocated", "Licensed", "Service Pack Allocation" The User
    Service table has column headings: "Service Name", "Authorized", "Assigned",
    "Limited", "Quantity", "Allocated", "Licensed", "Service Pack Allocation", "User
    Assignable", "Service Pack Assignable".

    Attributes:
        group_services_authorization_table: groupServicesAuthorizationTable
        user_services_authorization_table: userServicesAuthorizationTable
    """

    _ELEMENTS = (
        E(
            "group_services_authorization_table", "groupServicesAuthorizationTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "user_services_authorization_table", "userServicesAuthorizationTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    group_services_authorization_table: "list" = Field(
        type=list, required=True, mutable=False,
    )
    user_services_authorization_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderServiceGetUserAssignableListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServiceGetUserAssignableListRequest()``.


    Attributes:
        service_name: serviceName
    """

    _ELEMENTS = (
        E("service_name", "serviceName", str, is_array=True),
    )

    service_name: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderServicePackGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackGetListRequest()``.


    Attributes:
        service_pack_name: servicePackName
    """

    _ELEMENTS = (
        E("service_pack_name", "servicePackName", str, is_array=True),
    )

    service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderServicePackGetServiceUsageListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackGetServiceUsageListRequest()``.

    The column headings are "Service Pack Name", "Total Packs" and "Allocated to Groups"

    Attributes:
        service_usage_table: serviceUsageTable
    """

    _ELEMENTS = (
        E(
            "service_usage_table", "serviceUsageTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_usage_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderServicePackGetUtilizationListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackGetUtilizationListRequest()``.

    For each service pack, a table of groups utilizing the pack is returned.  The
    utilization table column headings are "Group", "Total Packs" and "Assigned".

    Attributes:
        service_pack_name: servicePackName
        service_utilization_table: serviceUtilizationTable
    """

    _ELEMENTS = (
        E("service_pack_name", "servicePackName", str, is_array=True),
        E(
            "service_utilization_table", "serviceUtilizationTable", list, is_complex=True,
            is_array=True, is_table=True,
        ),
    )

    service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    service_utilization_table: "List[list]" = Field(type=list, required=False, mutable=False)


class ServiceProviderServicePackMigrationTaskGetAvailableGroupListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetAvailableGroupListRequest()``.

    The groupTable column headings are: "Group Id", "Group Name", "User Count".

    Attributes:
        group_table: groupTable
    """

    _ELEMENTS = (
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    group_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderServicePackMigrationTaskGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetListRequest()``.

    Contains a table with a row for each service pack migration task and column headings :
    "Start Timestamp Milliseconds", "Name", "Status", "Error Count", "Users Processed",
    "Users Total". The start timestamp column is the number of milliseconds since the
    standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT.

    Attributes:
        task_table: taskTable
    """

    _ELEMENTS = (
        E("task_table", "taskTable", list, is_complex=True, is_required=True, is_table=True),
    )

    task_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderServicePackMigrationTaskGetListResponse21(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetListRequest21()``.

    Contains a table with a row for each service pack migration task and column headings :
    "Start Timestamp Milliseconds", "Name", "Status", "Error Count", "Users Processed",
    "Users Total". The start timestamp column is the number of milliseconds since the
    standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT. The
    status column is the task status which can be Awaiting edit, Pending, Processing,
    Terminating, Terminated, Stopped by system, Completed, or Expired.

    Attributes:
        task_table: taskTable
    """

    _ELEMENTS = (
        E("task_table", "taskTable", list, is_complex=True, is_required=True, is_table=True),
    )

    task_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderServicePackMigrationTaskGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetRequest()``.

    The groupTable column headings are: "Migrate", "Group Id", "Group Name", "User Count".

    Replaced By: ``ServiceProviderServicePackMigrationTaskGetResponse14sp4()``

    Attributes:
        task_name: taskName
        start_timestamp: startTimestamp
        max_duration_hours: maxDurationHours
        send_report_email: sendReportEmail
        report_delivery_email_address: reportDeliveryEmailAddress
        abort_on_error: abortOnError
        abort_error_threshold: abortErrorThreshold
        report_all_users: reportAllUsers
        automatically_increment_service_quantity: automaticallyIncrementServiceQuantity
        error_count: errorCount
        status: status
        groups_processed: groupsProcessed
        groups_total: groupsTotal
        users_processed: usersProcessed
        users_total: usersTotal
        user_selection_type: userSelectionType
        report_file_path_name: reportFilePathName
        group_table: groupTable
        user_selection_service_pack_name: userSelectionServicePackName
        user_selection_service_name: userSelectionServiceName
        remove_service_pack_name: removeServicePackName
        remove_service_name: removeServiceName
        assign_service_pack_name: assignServicePackName
        assign_service_name: assignServiceName
    """

    _ELEMENTS = (
        E("task_name", "taskName", str, is_required=True),
        E("start_timestamp", "startTimestamp", str),
        E("max_duration_hours", "maxDurationHours", int, is_required=True),
        E("send_report_email", "sendReportEmail", bool, is_required=True),
        E("report_delivery_email_address", "reportDeliveryEmailAddress", str),
        E("abort_on_error", "abortOnError", bool, is_required=True),
        E("abort_error_threshold", "abortErrorThreshold", int),
        E("report_all_users", "reportAllUsers", bool, is_required=True),
        E(
            "automatically_increment_service_quantity",
            "automaticallyIncrementServiceQuantity", bool, is_required=True,
        ),
        E("error_count", "errorCount", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("groups_processed", "groupsProcessed", int, is_required=True),
        E("groups_total", "groupsTotal", int, is_required=True),
        E("users_processed", "usersProcessed", int, is_required=True),
        E("users_total", "usersTotal", int, is_required=True),
        E("user_selection_type", "userSelectionType", str, is_required=True),
        E("report_file_path_name", "reportFilePathName", str, is_required=True),
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "user_selection_service_pack_name", "userSelectionServicePackName", str,
            is_array=True,
        ),
        E("user_selection_service_name", "userSelectionServiceName", str, is_array=True),
        E("remove_service_pack_name", "removeServicePackName", str, is_array=True),
        E("remove_service_name", "removeServiceName", str, is_array=True),
        E("assign_service_pack_name", "assignServicePackName", str, is_array=True),
        E("assign_service_name", "assignServiceName", str, is_array=True),
    )

    task_name: str = Field(type=str, required=True, mutable=False)
    start_timestamp: str = Field(type=str, required=False, mutable=False)
    max_duration_hours: int = Field(type=int, required=True, mutable=False)
    send_report_email: bool = Field(type=bool, required=True, mutable=False)
    report_delivery_email_address: str = Field(type=str, required=False, mutable=False)
    abort_on_error: bool = Field(type=bool, required=True, mutable=False)
    abort_error_threshold: int = Field(type=int, required=False, mutable=False)
    report_all_users: bool = Field(type=bool, required=True, mutable=False)
    automatically_increment_service_quantity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    error_count: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    groups_processed: int = Field(type=int, required=True, mutable=False)
    groups_total: int = Field(type=int, required=True, mutable=False)
    users_processed: int = Field(type=int, required=True, mutable=False)
    users_total: int = Field(type=int, required=True, mutable=False)
    user_selection_type: str = Field(type=str, required=True, mutable=False)
    report_file_path_name: str = Field(type=str, required=True, mutable=False)
    group_table: "list" = Field(type=list, required=True, mutable=False)
    user_selection_service_pack_name: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    user_selection_service_name: "List[str]" = Field(type=list, required=False, mutable=False)
    remove_service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    remove_service_name: "List[str]" = Field(type=list, required=False, mutable=False)
    assign_service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    assign_service_name: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderServicePackMigrationTaskGetResponse14sp4(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetRequest14sp4()``.

    The groupTable column headings are: "Group Id", "Group Name", "User Count".

    Attributes:
        task_name: taskName
        start_timestamp: startTimestamp
        max_duration_hours: maxDurationHours
        send_report_email: sendReportEmail
        report_delivery_email_address: reportDeliveryEmailAddress
        abort_on_error: abortOnError
        abort_error_threshold: abortErrorThreshold
        report_all_users: reportAllUsers
        automatically_increment_service_quantity: automaticallyIncrementServiceQuantity
        error_count: errorCount
        status: status
        groups_processed: groupsProcessed
        groups_total: groupsTotal
        users_processed: usersProcessed
        users_total: usersTotal
        user_selection_type: userSelectionType
        report_file_path_name: reportFilePathName
        migrate_all_groups: migrateAllGroups
        group_table: groupTable
        user_selection_service_pack_name: userSelectionServicePackName
        user_selection_service_name: userSelectionServiceName
        remove_service_pack_name: removeServicePackName
        remove_service_name: removeServiceName
        assign_service_pack_name: assignServicePackName
        assign_service_name: assignServiceName
    """

    _ELEMENTS = (
        E("task_name", "taskName", str, is_required=True),
        E("start_timestamp", "startTimestamp", str),
        E("max_duration_hours", "maxDurationHours", int, is_required=True),
        E("send_report_email", "sendReportEmail", bool, is_required=True),
        E("report_delivery_email_address", "reportDeliveryEmailAddress", str),
        E("abort_on_error", "abortOnError", bool, is_required=True),
        E("abort_error_threshold", "abortErrorThreshold", int),
        E("report_all_users", "reportAllUsers", bool, is_required=True),
        E(
            "automatically_increment_service_quantity",
            "automaticallyIncrementServiceQuantity", bool, is_required=True,
        ),
        E("error_count", "errorCount", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("groups_processed", "groupsProcessed", int, is_required=True),
        E("groups_total", "groupsTotal", int, is_required=True),
        E("users_processed", "usersProcessed", int, is_required=True),
        E("users_total", "usersTotal", int, is_required=True),
        E("user_selection_type", "userSelectionType", str, is_required=True),
        E("report_file_path_name", "reportFilePathName", str, is_required=True),
        E("migrate_all_groups", "migrateAllGroups", bool),
        E("group_table", "groupTable", list, is_complex=True, is_table=True),
        E(
            "user_selection_service_pack_name", "userSelectionServicePackName", str,
            is_array=True,
        ),
        E("user_selection_service_name", "userSelectionServiceName", str, is_array=True),
        E("remove_service_pack_name", "removeServicePackName", str, is_array=True),
        E("remove_service_name", "removeServiceName", str, is_array=True),
        E("assign_service_pack_name", "assignServicePackName", str, is_array=True),
        E("assign_service_name", "assignServiceName", str, is_array=True),
    )

    task_name: str = Field(type=str, required=True, mutable=False)
    start_timestamp: str = Field(type=str, required=False, mutable=False)
    max_duration_hours: int = Field(type=int, required=True, mutable=False)
    send_report_email: bool = Field(type=bool, required=True, mutable=False)
    report_delivery_email_address: str = Field(type=str, required=False, mutable=False)
    abort_on_error: bool = Field(type=bool, required=True, mutable=False)
    abort_error_threshold: int = Field(type=int, required=False, mutable=False)
    report_all_users: bool = Field(type=bool, required=True, mutable=False)
    automatically_increment_service_quantity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    error_count: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    groups_processed: int = Field(type=int, required=True, mutable=False)
    groups_total: int = Field(type=int, required=True, mutable=False)
    users_processed: int = Field(type=int, required=True, mutable=False)
    users_total: int = Field(type=int, required=True, mutable=False)
    user_selection_type: str = Field(type=str, required=True, mutable=False)
    report_file_path_name: str = Field(type=str, required=True, mutable=False)
    migrate_all_groups: bool = Field(type=bool, required=False, mutable=False)
    group_table: "list" = Field(type=list, required=False, mutable=False)
    user_selection_service_pack_name: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    user_selection_service_name: "List[str]" = Field(type=list, required=False, mutable=False)
    remove_service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    remove_service_name: "List[str]" = Field(type=list, required=False, mutable=False)
    assign_service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    assign_service_name: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderServicePackMigrationTaskGetResponse21(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetRequest21()``.

    The groupTable column headings are: "Group Id", "Group Name", and "User Count".

    Attributes:
        task_name: taskName
        start_timestamp: startTimestamp
        actual_start_timestamp: actualStartTimestamp
        expire_after_num_hours: expireAfterNumHours
        max_duration_hours: maxDurationHours
        send_report_email: sendReportEmail
        report_delivery_email_address: reportDeliveryEmailAddress
        abort_on_error: abortOnError
        abort_error_threshold: abortErrorThreshold
        report_all_users: reportAllUsers
        automatically_increment_service_quantity: automaticallyIncrementServiceQuantity
        error_count: errorCount
        status: status
        groups_processed: groupsProcessed
        groups_total: groupsTotal
        users_processed: usersProcessed
        users_total: usersTotal
        user_selection_type: userSelectionType
        report_file_path_name: reportFilePathName
        migrate_all_groups: migrateAllGroups
        group_table: groupTable
        user_selection_service_pack_name: userSelectionServicePackName
        user_selection_service_name: userSelectionServiceName
        remove_service_pack_name: removeServicePackName
        remove_service_name: removeServiceName
        assign_service_pack_name: assignServicePackName
        assign_service_name: assignServiceName
    """

    _ELEMENTS = (
        E("task_name", "taskName", str, is_required=True),
        E("start_timestamp", "startTimestamp", str),
        E("actual_start_timestamp", "actualStartTimestamp", str),
        E("expire_after_num_hours", "expireAfterNumHours", int, is_required=True),
        E("max_duration_hours", "maxDurationHours", int, is_required=True),
        E("send_report_email", "sendReportEmail", bool, is_required=True),
        E("report_delivery_email_address", "reportDeliveryEmailAddress", str),
        E("abort_on_error", "abortOnError", bool, is_required=True),
        E("abort_error_threshold", "abortErrorThreshold", int),
        E("report_all_users", "reportAllUsers", bool, is_required=True),
        E(
            "automatically_increment_service_quantity",
            "automaticallyIncrementServiceQuantity", bool, is_required=True,
        ),
        E("error_count", "errorCount", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("groups_processed", "groupsProcessed", int, is_required=True),
        E("groups_total", "groupsTotal", int, is_required=True),
        E("users_processed", "usersProcessed", int, is_required=True),
        E("users_total", "usersTotal", int, is_required=True),
        E("user_selection_type", "userSelectionType", str, is_required=True),
        E("report_file_path_name", "reportFilePathName", str, is_required=True),
        E("migrate_all_groups", "migrateAllGroups", bool),
        E("group_table", "groupTable", list, is_complex=True, is_table=True),
        E(
            "user_selection_service_pack_name", "userSelectionServicePackName", str,
            is_array=True,
        ),
        E("user_selection_service_name", "userSelectionServiceName", str, is_array=True),
        E("remove_service_pack_name", "removeServicePackName", str, is_array=True),
        E("remove_service_name", "removeServiceName", str, is_array=True),
        E("assign_service_pack_name", "assignServicePackName", str, is_array=True),
        E("assign_service_name", "assignServiceName", str, is_array=True),
    )

    task_name: str = Field(type=str, required=True, mutable=False)
    start_timestamp: str = Field(type=str, required=False, mutable=False)
    actual_start_timestamp: str = Field(type=str, required=False, mutable=False)
    expire_after_num_hours: int = Field(type=int, required=True, mutable=False)
    max_duration_hours: int = Field(type=int, required=True, mutable=False)
    send_report_email: bool = Field(type=bool, required=True, mutable=False)
    report_delivery_email_address: str = Field(type=str, required=False, mutable=False)
    abort_on_error: bool = Field(type=bool, required=True, mutable=False)
    abort_error_threshold: int = Field(type=int, required=False, mutable=False)
    report_all_users: bool = Field(type=bool, required=True, mutable=False)
    automatically_increment_service_quantity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    error_count: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    groups_processed: int = Field(type=int, required=True, mutable=False)
    groups_total: int = Field(type=int, required=True, mutable=False)
    users_processed: int = Field(type=int, required=True, mutable=False)
    users_total: int = Field(type=int, required=True, mutable=False)
    user_selection_type: str = Field(type=str, required=True, mutable=False)
    report_file_path_name: str = Field(type=str, required=True, mutable=False)
    migrate_all_groups: bool = Field(type=bool, required=False, mutable=False)
    group_table: "list" = Field(type=list, required=False, mutable=False)
    user_selection_service_pack_name: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    user_selection_service_name: "List[str]" = Field(type=list, required=False, mutable=False)
    remove_service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    remove_service_name: "List[str]" = Field(type=list, required=False, mutable=False)
    assign_service_pack_name: "List[str]" = Field(type=list, required=False, mutable=False)
    assign_service_name: "List[str]" = Field(type=list, required=False, mutable=False)


class ServiceProviderServicePhoneNumberLookupResponse(OCIResponse):
    """
    Response to the ``ServiceProviderServicePhoneNumberLookupRequest()``.

    The column headings for the userTable are: "Group Id", "User Id", "Last Name", "First
    Name", "Hiragana Last Name", "Hiragana First Name", "Phone Number", "Extension" and
    "Department".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderSessionAdmissionControlGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderSessionAdmissionControlGetRequest()``.

    The response contains the session admission control capacity allocated for the service
    provider.

    Attributes:
        restrict_aggregate_sessions: restrictAggregateSessions
        max_sessions: maxSessions
        max_user_originating_sessions: maxUserOriginatingSessions
        max_user_terminating_sessions: maxUserTerminatingSessions
        count_intra_service_provider_sessions: countIntraServiceProviderSessions
    """

    _ELEMENTS = (
        E("restrict_aggregate_sessions", "restrictAggregateSessions", bool, is_required=True),
        E("max_sessions", "maxSessions", int),
        E("max_user_originating_sessions", "maxUserOriginatingSessions", int),
        E("max_user_terminating_sessions", "maxUserTerminatingSessions", int),
        E(
            "count_intra_service_provider_sessions", "countIntraServiceProviderSessions",
            bool, is_required=True,
        ),
    )

    restrict_aggregate_sessions: bool = Field(type=bool, required=True, mutable=False)
    max_sessions: int = Field(type=int, required=False, mutable=False)
    max_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    max_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    count_intra_service_provider_sessions: bool = Field(
        type=bool, required=True, mutable=False,
    )


class ServiceProviderSessionAdmissionControlWhiteListGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderSessionAdmissionControlWhiteListGetRequest()``.

    The response contains the White List information.

    Attributes:
        match_digit_pattern: matchDigitPattern
        enable_white_list: enableWhiteList
    """

    _ELEMENTS = (
        E("match_digit_pattern", "matchDigitPattern", str, is_array=True),
        E("enable_white_list", "enableWhiteList", bool, is_required=True),
    )

    match_digit_pattern: "List[str]" = Field(type=list, required=False, mutable=False)
    enable_white_list: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderVoiceMessagingGroupGetPasscodeRulesResponse(OCIResponse):
    """
    Response to ``ServiceProviderVoiceMessagingGroupGetPasscodeRulesRequest()``.

    Contains the service provider's voice portal passcode rules setting.

    Replaced By: ``ServiceProviderPortalPasscodeRulesGetResponse()``

    Attributes:
        disallow_repeated_digits: disallowRepeatedDigits
        disallow_user_number: disallowUserNumber
        disallow_reversed_user_number: disallowReversedUserNumber
        disallow_old_passcode: disallowOldPasscode
        disallow_reversed_old_passcode: disallowReversedOldPasscode
        min_code_length: minCodeLength
        max_code_length: maxCodeLength
        disable_login_after_max_failed_login_attempts:
            disableLoginAfterMaxFailedLoginAttempts
        max_failed_login_attempts: maxFailedLoginAttempts
        expire_password: expirePassword
        passcode_expires_days: passcodeExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
    """

    _ELEMENTS = (
        E("disallow_repeated_digits", "disallowRepeatedDigits", bool, is_required=True),
        E("disallow_user_number", "disallowUserNumber", bool, is_required=True),
        E(
            "disallow_reversed_user_number", "disallowReversedUserNumber", bool,
            is_required=True,
        ),
        E("disallow_old_passcode", "disallowOldPasscode", bool, is_required=True),
        E(
            "disallow_reversed_old_passcode", "disallowReversedOldPasscode", bool,
            is_required=True,
        ),
        E("min_code_length", "minCodeLength", int, is_required=True),
        E("max_code_length", "maxCodeLength", int, is_required=True),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts", bool, is_required=True,
        ),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int),
        E("expire_password", "expirePassword", bool, is_required=True),
        E("passcode_expires_days", "passcodeExpiresDays", int),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
    )

    disallow_repeated_digits: bool = Field(type=bool, required=True, mutable=False)
    disallow_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    min_code_length: int = Field(type=int, required=True, mutable=False)
    max_code_length: int = Field(type=int, required=True, mutable=False)
    disable_login_after_max_failed_login_attempts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_failed_login_attempts: int = Field(type=int, required=False, mutable=False)
    expire_password: bool = Field(type=bool, required=True, mutable=False)
    passcode_expires_days: int = Field(type=int, required=False, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)


class ServiceProviderVoiceMessagingGroupGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderVoiceMessagingGroupGetRequest()``.

    Contains the service provider's or enterprise's voice messaging settings.

    Attributes:
        delivery_from_address: deliveryFromAddress
        notification_from_address: notificationFromAddress
        voice_portal_lockout_from_address: voicePortalLockoutFromAddress
        use_system_default_delivery_from_address: useSystemDefaultDeliveryFromAddress
        use_system_default_notification_from_address:
            useSystemDefaultNotificationFromAddress
        use_system_default_voice_portal_lockout_from_address:
            useSystemDefaultVoicePortalLockoutFromAddress
    """

    _ELEMENTS = (
        E("delivery_from_address", "deliveryFromAddress", str),
        E("notification_from_address", "notificationFromAddress", str),
        E("voice_portal_lockout_from_address", "voicePortalLockoutFromAddress", str),
        E(
            "use_system_default_delivery_from_address",
            "useSystemDefaultDeliveryFromAddress", bool, is_required=True,
        ),
        E(
            "use_system_default_notification_from_address",
            "useSystemDefaultNotificationFromAddress", bool, is_required=True,
        ),
        E(
            "use_system_default_voice_portal_lockout_from_address",
            "useSystemDefaultVoicePortalLockoutFromAddress", bool, is_required=True,
        ),
    )

    delivery_from_address: str = Field(type=str, required=False, mutable=False)
    notification_from_address: str = Field(type=str, required=False, mutable=False)
    voice_portal_lockout_from_address: str = Field(type=str, required=False, mutable=False)
    use_system_default_delivery_from_address: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_system_default_notification_from_address: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_system_default_voice_portal_lockout_from_address: bool = Field(
        type=bool, required=True, mutable=False,
    )


class ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingResponse(OCIResponse):
    """
    Response to the ``ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingRequest()``.

    Replaced By: ``ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingResponse16()``

    Attributes:
        voice_portal_greeting_selection: voicePortalGreetingSelection
        voice_portal_greeting_file_description: voicePortalGreetingFileDescription
        voice_messaging_greeting_selection: voiceMessagingGreetingSelection
        voice_messaging_greeting_file_description: voiceMessagingGreetingFileDescription
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection", "voicePortalGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription", str,
        ),
        E(
            "voice_messaging_greeting_selection", "voiceMessagingGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription", str,
        ),
    )

    voice_portal_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_portal_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    voice_messaging_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_messaging_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )


class ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingResponse16(OCIResponse):
    """
    Response to the
    ``ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingRequest16()``.


    Attributes:
        voice_portal_greeting_selection: voicePortalGreetingSelection
        voice_portal_greeting_file_description: voicePortalGreetingFileDescription
        voice_portal_greeting_media_file_type: voicePortalGreetingMediaFileType
        voice_messaging_greeting_selection: voiceMessagingGreetingSelection
        voice_messaging_greeting_file_description: voiceMessagingGreetingFileDescription
        voice_messaging_greeting_media_file_type: voiceMessagingGreetingMediaFileType
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection", "voicePortalGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription", str,
        ),
        E("voice_portal_greeting_media_file_type", "voicePortalGreetingMediaFileType", str),
        E(
            "voice_messaging_greeting_selection", "voiceMessagingGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription", str,
        ),
        E(
            "voice_messaging_greeting_media_file_type",
            "voiceMessagingGreetingMediaFileType", str,
        ),
    )

    voice_portal_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_portal_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    voice_portal_greeting_media_file_type: str = Field(
        type=str, required=False, mutable=False,
    )
    voice_messaging_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_messaging_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    voice_messaging_greeting_media_file_type: str = Field(
        type=str, required=False, mutable=False,
    )


class ServiceProviderVoiceMessagingGroupGetVoicePortalResponse(OCIResponse):
    """
    Response to ``ServiceProviderVoiceMessagingGroupGetVoicePortalRequest()``.


    Attributes:
        voice_portal_scope: voicePortalScope
    """

    _ELEMENTS = (
        E("voice_portal_scope", "voicePortalScope", str, is_required=True),
    )

    voice_portal_scope: str = Field(type=str, required=True, mutable=False)


class ServiceProviderZoneCallingRestrictionsGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderZoneCallingRestrictionsGetRequest()``

    Attributes:
        enable_zone_calling_restrictions: enableZoneCallingRestrictions
        enable_origination_roaming_restrictions: enableOriginationRoamingRestrictions
        enable_emergency_origination_roaming_restrictions:
            enableEmergencyOriginationRoamingRestrictions
        enable_termination_roaming_restrictions: enableTerminationRoamingRestrictions
    """

    _ELEMENTS = (
        E(
            "enable_zone_calling_restrictions", "enableZoneCallingRestrictions", bool,
            is_required=True,
        ),
        E(
            "enable_origination_roaming_restrictions",
            "enableOriginationRoamingRestrictions", bool, is_required=True,
        ),
        E(
            "enable_emergency_origination_roaming_restrictions",
            "enableEmergencyOriginationRoamingRestrictions", bool, is_required=True,
        ),
        E(
            "enable_termination_roaming_restrictions",
            "enableTerminationRoamingRestrictions", bool, is_required=True,
        ),
    )

    enable_zone_calling_restrictions: bool = Field(type=bool, required=True, mutable=False)
    enable_origination_roaming_restrictions: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_emergency_origination_roaming_restrictions: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_termination_roaming_restrictions: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemASRParametersGetResponse(OCIResponse):
    """
    Response to ``SystemASRParametersGetRequest()``.

    Contains a list of system Application Server Registration parameters.

    Replaced By: ``SystemASRParametersGetResponse14sp5()``

    Attributes:
        max_transmissions: maxTransmissions
        retransmission_delay_milli_seconds: retransmissionDelayMilliSeconds
        listening_port: listeningPort
    """

    _ELEMENTS = (
        E("max_transmissions", "maxTransmissions", int, is_required=True),
        E(
            "retransmission_delay_milli_seconds", "retransmissionDelayMilliSeconds", int,
            is_required=True,
        ),
        E("listening_port", "listeningPort", int, is_required=True),
    )

    max_transmissions: int = Field(type=int, required=True, mutable=False)
    retransmission_delay_milli_seconds: int = Field(type=int, required=True, mutable=False)
    listening_port: int = Field(type=int, required=True, mutable=False)


class SystemASRParametersGetResponse14sp5(OCIResponse):
    """
    Response to ``SystemASRParametersGetRequest14sp5()``.

    Contains a list of system Application Server Registration parameters.

    Attributes:
        max_transmissions: maxTransmissions
        retransmission_delay_milli_seconds: retransmissionDelayMilliSeconds
        listening_port: listeningPort
        source_address: sourceAddress
    """

    _ELEMENTS = (
        E("max_transmissions", "maxTransmissions", int, is_required=True),
        E(
            "retransmission_delay_milli_seconds", "retransmissionDelayMilliSeconds", int,
            is_required=True,
        ),
        E("listening_port", "listeningPort", int, is_required=True),
        E("source_address", "sourceAddress", str),
    )

    max_transmissions: int = Field(type=int, required=True, mutable=False)
    retransmission_delay_milli_seconds: int = Field(type=int, required=True, mutable=False)
    listening_port: int = Field(type=int, required=True, mutable=False)
    source_address: str = Field(type=str, required=False, mutable=False)


class SystemASRParametersGetResponse14sp7(OCIResponse):
    """
    Response to ``SystemASRParametersGetRequest14sp7()``.

    Contains a list of system Application Server Registration parameters.

    Attributes:
        max_transmissions: maxTransmissions
        retransmission_delay_milli_seconds: retransmissionDelayMilliSeconds
        listening_port: listeningPort
    """

    _ELEMENTS = (
        E("max_transmissions", "maxTransmissions", int, is_required=True),
        E(
            "retransmission_delay_milli_seconds", "retransmissionDelayMilliSeconds", int,
            is_required=True,
        ),
        E("listening_port", "listeningPort", int, is_required=True),
    )

    max_transmissions: int = Field(type=int, required=True, mutable=False)
    retransmission_delay_milli_seconds: int = Field(type=int, required=True, mutable=False)
    listening_port: int = Field(type=int, required=True, mutable=False)


class SystemAccessDeviceCustomTagGetListResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceCustomTagGetListRequest()``.

    Contains a table of custom configuration tags managed by the Device Management System
    on a per-device profile basis.  The column headings are: "Tag Name", "Tag Value"

    Attributes:
        device_custom_tags_table: deviceCustomTagsTable
    """

    _ELEMENTS = (
        E(
            "device_custom_tags_table", "deviceCustomTagsTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_custom_tags_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAccessDeviceFileGetListResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetListRequest()``.

    Contains a table of device files managed by the Device Management System on a per-
    device profile basis.  The column headings are: "File Type", "File Format", "Is
    Authenticated".

    Replaced By: ``SystemAccessDeviceFileGetListResponse14sp8()``

    Attributes:
        device_files_table: deviceFilesTable
    """

    _ELEMENTS = (
        E(
            "device_files_table", "deviceFilesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_files_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAccessDeviceFileGetListResponse14sp8(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetListRequest14sp8()``.

    Contains a table of device files managed by the Device Management System on a per-
    device profile basis.  The column headings are: "File Format", "Is Authenticated",
    "Access URL", "Repository URL", "Template URL", "Extended Capture". The following
    columns are only used in AS data mode: "Extended Capture"

    Attributes:
        device_files_table: deviceFilesTable
    """

    _ELEMENTS = (
        E(
            "device_files_table", "deviceFilesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_files_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAccessDeviceFileGetResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetRequest()``.

    Replaced By: ``SystemAccessDeviceFileGetResponse14sp8()``

    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)


class SystemAccessDeviceFileGetResponse14sp8(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetRequest14sp8()``.

    Replaced by: ``SystemAccessDeviceFileGetResponse16sp1()``

    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)


class SystemAccessDeviceFileGetResponse16sp1(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetRequest16sp1()``.


    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)


class SystemAccessDeviceFileGetResponse20(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetRequest20()``.


    Attributes:
        file_source: fileSource
        configuration_file_name: configurationFileName
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
        extended_capture_enabled: extendedCaptureEnabled
        extended_capture_url: extendedCaptureURL
    """

    _ELEMENTS = (
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
        E("extended_capture_enabled", "extendedCaptureEnabled", bool),
        E("extended_capture_url", "extendedCaptureURL", str),
    )

    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)
    extended_capture_enabled: bool = Field(type=bool, required=False, mutable=False)
    extended_capture_url: str = Field(type=str, required=False, mutable=False)


class SystemAccessDeviceGetAllResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetAllRequest()``.

    Contains a table of devices configured in the entire system.  The column headings are:
    "Service Provider Id", "Is Enterprise", "Group Id", "Device Name", "Device Type", "Net
    Address", "MAC Address", "Status".

    Attributes:
        access_device_table: accessDeviceTable
    """

    _ELEMENTS = (
        E(
            "access_device_table", "accessDeviceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    access_device_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAccessDeviceGetListResponse14(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetListRequest14()``.

    Contains a table of devices defined at the System-level.  The column headings are:
    "Device Name", "Device Type", "Available Ports", "Net Address" and "MAC Address",
    "Status", "Version".

    Attributes:
        access_device_table: accessDeviceTable
    """

    _ELEMENTS = (
        E(
            "access_device_table", "accessDeviceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    access_device_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAccessDeviceGetUserListResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetUserListRequest()``.

    The column headings for the deviceUserTable are: "Line/Port", "Last Name", "First
    Name", "Phone Number", "Service Provider Id", "Group Id", "User Id", "User Type",
    "Endpoint Type", "Primary Line/Port", "Order", "Extension", "Department", "Email
    Address", "Private Identity". If the identity/device profile is an identity, the table
    will contain a row for each TEL-URI in the Phone Number column.  If the
    identity/device profile is a real device, rows for the alternate numbers are not
    included.  The User Type column contains one of the enumerated UserType values.  The
    Endpoint Type column contains one of the enumerated EndpointType values.  The Private
    Identity column is empty is AS mode.

    Attributes:
        device_user_table: deviceUserTable
    """

    _ELEMENTS = (
        E(
            "device_user_table", "deviceUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_user_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAccessDeviceMonitorGetDeviceTypeListResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceMonitorGetDeviceTypeListRequest()``.


    Attributes:
        device_type: deviceType
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_array=True),
    )

    device_type: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemAccessDeviceMonitorParametersGetResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceMonitorParametersGetListRequest()``.

    Contains a list of system Access Device Monitor parameters.

    Attributes:
        polling_interval_minutes: pollingIntervalMinutes
    """

    _ELEMENTS = (
        E("polling_interval_minutes", "pollingIntervalMinutes", int, is_required=True),
    )

    polling_interval_minutes: int = Field(type=int, required=True, mutable=False)


class SystemAccessDeviceTypeGetEnhancedConfigurableListResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceTypeGetEnhancedConfigurableListRequest()``.

    Contains a table with columns: "Access Device Type", "Enhanced Configuration Type",
    "Supports Reset". The "Enhanced Configuration Type" column contains one of the
    AccessDeviceEnhancedConfigurationType14 enumerated values.  The "Supports Reset"
    column is a boolean flag indicating the device can be remotely reset.

    Attributes:
        device_type_table: deviceTypeTable
    """

    _ELEMENTS = (
        E(
            "device_type_table", "deviceTypeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_type_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAccessDeviceTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceTypeGetListRequest()``.


    Attributes:
        device_type: deviceType
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
    )

    device_type: str = Field(type=str, required=True, mutable=False)


class SystemAccountingGetChargingFunctionElementServerListResponse(OCIResponse):
    """
    Response to ``SystemAccountingGetChargingFunctionElementServerListRequest()``.

    The accounting charging function element Server table column headings are: "Address",
    "Extended Net Address", "Type", "Description".

    Attributes:
        charging_function_element_server_table: chargingFunctionElementServerTable
    """

    _ELEMENTS = (
        E(
            "charging_function_element_server_table",
            "chargingFunctionElementServerTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    charging_function_element_server_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class SystemAccountingGetRadiusServerListResponse(OCIResponse):
    """
    Response to ``SystemAccountingGetRadiusServerListRequest()``.

    The Radius Server table column headings are: "Net Address", "Port", "Description"

    Attributes:
        radius_server_table: radiusServerTable
    """

    _ELEMENTS = (
        E(
            "radius_server_table", "radiusServerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    radius_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAccountingInhibitedAttributeValuePairCodeGetListResponse(OCIResponse):
    """
    Response to ``SystemAccountingInhibitedAttributeValuePairCodeGetListRequest()``.

    Contains a 2 column table with column headings "Attribute Value Pair Code" and "Vendor
    Id".

    Attributes:
        inhibited_attribute_value_pair_code_table: inhibitedAttributeValuePairCodeTable
    """

    _ELEMENTS = (
        E(
            "inhibited_attribute_value_pair_code_table",
            "inhibitedAttributeValuePairCodeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    inhibited_attribute_value_pair_code_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class SystemAdminGetListResponse(OCIResponse):
    """
    Response to ``SystemAdminGetListRequest()``.

    Contains a 6 column table with column headings "Administrator ID", "Last Name", "First
    Name", "Type", "Read Only", "Language".

    Attributes:
        system_admin_table: systemAdminTable
    """

    _ELEMENTS = (
        E(
            "system_admin_table", "systemAdminTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    system_admin_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAdminGetResponse(OCIResponse):
    """
    Response to the ``SystemAdminGetRequest()``.

    The response contains the system or provisioning administrators profile information.

    Attributes:
        first_name: firstName
        last_name: lastName
        language: language
        admin_type: adminType
        read_only: readOnly
    """

    _ELEMENTS = (
        E("first_name", "firstName", str),
        E("last_name", "lastName", str),
        E("language", "language", str, is_required=True),
        E("admin_type", "adminType", str, is_required=True),
        E("read_only", "readOnly", bool, is_required=True),
    )

    first_name: str = Field(type=str, required=False, mutable=False)
    last_name: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    admin_type: str = Field(type=str, required=True, mutable=False)
    read_only: bool = Field(type=bool, required=True, mutable=False)


class SystemAdviceOfChargeCostInformationSourceGetListResponse(OCIResponse):
    """
    Response to ``SystemAdviceOfChargeCostInformationSourceGetListRequest()``.

    Contains a table with column headings: "PeerIdentity", "Priority"

    Attributes:
        cost_information_source_table: costInformationSourceTable
    """

    _ELEMENTS = (
        E(
            "cost_information_source_table", "costInformationSourceTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    cost_information_source_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAdviceOfChargeGetResponse(OCIResponse):
    """
    Response to ``SystemAdviceOfChargeGetRequest()``.

    Contains a list of system Advice of Charge parameters.

    Attributes:
        delay_between_notification_seconds: delayBetweenNotificationSeconds
        incoming_aoc_handling: incomingAocHandling
        cost_information_source: costInformationSource
    """

    _ELEMENTS = (
        E(
            "delay_between_notification_seconds", "delayBetweenNotificationSeconds", int,
            is_required=True,
        ),
        E("incoming_aoc_handling", "incomingAocHandling", str, is_required=True),
        E("cost_information_source", "costInformationSource", str),
    )

    delay_between_notification_seconds: int = Field(type=int, required=True, mutable=False)
    incoming_aoc_handling: str = Field(type=str, required=True, mutable=False)
    cost_information_source: str = Field(type=str, required=False, mutable=False)


class SystemAdviceOfChargeGetResponse19sp1(OCIResponse):
    """
    Response to ``SystemAdviceOfChargeGetRequest()``.

    Contains a list of system Advice of Charge parameters.

    Attributes:
        delay_between_notification_seconds: delayBetweenNotificationSeconds
        incoming_aoc_handling: incomingAocHandling
        use_ocs_enquiry: useOCSEnquiry
        ocs_enquiry_type: OCSEnquiryType
    """

    _ELEMENTS = (
        E(
            "delay_between_notification_seconds", "delayBetweenNotificationSeconds", int,
            is_required=True,
        ),
        E("incoming_aoc_handling", "incomingAocHandling", str, is_required=True),
        E("use_ocs_enquiry", "useOCSEnquiry", bool, is_required=True),
        E("ocs_enquiry_type", "OCSEnquiryType", str, is_required=True),
    )

    delay_between_notification_seconds: int = Field(type=int, required=True, mutable=False)
    incoming_aoc_handling: str = Field(type=str, required=True, mutable=False)
    use_ocs_enquiry: bool = Field(type=bool, required=True, mutable=False)
    ocs_enquiry_type: str = Field(type=str, required=True, mutable=False)


class SystemAliasGetListResponse(OCIResponse):
    """
    Response to ``SystemAliasGetListRequest()``.

    Contains the list of all network alias' for the Application Server.

    Attributes:
        alias_net_address: aliasNetAddress
    """

    _ELEMENTS = (
        E("alias_net_address", "aliasNetAddress", str, is_array=True),
    )

    alias_net_address: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemAnonymousCallRejectionGetResponse(OCIResponse):
    """
    Response to the ``SystemAnonymousCallRejectionGetRequest()``.

    The response contains the anonymous call rejection system.".

    Attributes:
        pai_required: paiRequired
        screen_only_local_calls: screenOnlyLocalCalls
    """

    _ELEMENTS = (
        E("pai_required", "paiRequired", bool, is_required=True),
        E("screen_only_local_calls", "screenOnlyLocalCalls", bool, is_required=True),
    )

    pai_required: bool = Field(type=bool, required=True, mutable=False)
    screen_only_local_calls: bool = Field(type=bool, required=True, mutable=False)


class SystemApplicationControllerGetListResponse(OCIResponse):
    """
    Response to the ``SystemApplicationControllerGetListRequest()``.

    Contains a table with column headings: "Name", "Subscriber Id", "Channel Set Id",
    "Status". The column values for "Status" can either be "ready" or "notReady".

    Attributes:
        application_controller_table: applicationControllerTable
    """

    _ELEMENTS = (
        E(
            "application_controller_table", "applicationControllerTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    application_controller_table: "list" = Field(type=list, required=True, mutable=False)


class SystemAttendantConsoleGetResponse(OCIResponse):
    """
    Response to ``SystemAttendantConsoleGetRequest()``.

    Contains a list of Attendant Console parameters.

    Attributes:
        max_monitored_users: maxMonitoredUsers
    """

    _ELEMENTS = (
        E("max_monitored_users", "maxMonitoredUsers", int, is_required=True),
    )

    max_monitored_users: int = Field(type=int, required=True, mutable=False)


class SystemAuthenticationLockoutSettingsGetResponse(OCIResponse):
    """
    Response to ``SystemAuthenticationLockoutSettingsGetRequest()``.

    Contains the authentication lockout settings in the system.

    Attributes:
        counter_reset_interval_days: counterResetIntervalDays
        counter_reset_hour: counterResetHour
        counter_reset_minute: counterResetMinute
        emergency_sip_bypass_allowed: emergencySIPBypassAllowed
    """

    _ELEMENTS = (
        E("counter_reset_interval_days", "counterResetIntervalDays", int, is_required=True),
        E("counter_reset_hour", "counterResetHour", int, is_required=True),
        E("counter_reset_minute", "counterResetMinute", int, is_required=True),
        E(
            "emergency_sip_bypass_allowed", "emergencySIPBypassAllowed", bool,
            is_required=True,
        ),
    )

    counter_reset_interval_days: int = Field(type=int, required=True, mutable=False)
    counter_reset_hour: int = Field(type=int, required=True, mutable=False)
    counter_reset_minute: int = Field(type=int, required=True, mutable=False)
    emergency_sip_bypass_allowed: bool = Field(type=bool, required=True, mutable=False)


class SystemAutomaticCallbackGetReleaseCauseListResponse(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetReleaseCauseListRequest()``.


    Attributes:
        release_cause: releaseCause
    """

    _ELEMENTS = (
        E("release_cause", "releaseCause", str, is_array=True),
    )

    release_cause: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemAutomaticCallbackGetResponse(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetRequest()``.

    Replaced By: ``SystemAutomaticCallbackGetResponse15()``

    Attributes:
        monitor_minutes: monitorMinutes
        wait_between_retry_originator_minutes: waitBetweenRetryOriginatorMinutes
        max_monitors_per_originator: maxMonitorsPerOriginator
        max_callback_rings: maxCallbackRings
        max_retry_originator_minutes: maxRetryOriginatorMinutes
    """

    _ELEMENTS = (
        E("monitor_minutes", "monitorMinutes", int, is_required=True),
        E(
            "wait_between_retry_originator_minutes", "waitBetweenRetryOriginatorMinutes",
            int, is_required=True,
        ),
        E("max_monitors_per_originator", "maxMonitorsPerOriginator", int, is_required=True),
        E("max_callback_rings", "maxCallbackRings", int, is_required=True),
        E("max_retry_originator_minutes", "maxRetryOriginatorMinutes", int, is_required=True),
    )

    monitor_minutes: int = Field(type=int, required=True, mutable=False)
    wait_between_retry_originator_minutes: int = Field(type=int, required=True, mutable=False)
    max_monitors_per_originator: int = Field(type=int, required=True, mutable=False)
    max_callback_rings: int = Field(type=int, required=True, mutable=False)
    max_retry_originator_minutes: int = Field(type=int, required=True, mutable=False)


class SystemAutomaticCallbackGetResponse15(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetRequest15()``.

    Replaced By: ``SystemAutomaticCallbackGetResponse15sp2()``

    Attributes:
        monitor_minutes: monitorMinutes
        max_monitors_per_originator: maxMonitorsPerOriginator
        max_callback_rings: maxCallbackRings
        max_monitors_per_terminator: maxMonitorsPerTerminator
        terminator_idle_guard_seconds: terminatorIdleGuardSeconds
    """

    _ELEMENTS = (
        E("monitor_minutes", "monitorMinutes", int, is_required=True),
        E("max_monitors_per_originator", "maxMonitorsPerOriginator", int, is_required=True),
        E("max_callback_rings", "maxCallbackRings", int, is_required=True),
        E("max_monitors_per_terminator", "maxMonitorsPerTerminator", int, is_required=True),
        E(
            "terminator_idle_guard_seconds", "terminatorIdleGuardSeconds", int,
            is_required=True,
        ),
    )

    monitor_minutes: int = Field(type=int, required=True, mutable=False)
    max_monitors_per_originator: int = Field(type=int, required=True, mutable=False)
    max_callback_rings: int = Field(type=int, required=True, mutable=False)
    max_monitors_per_terminator: int = Field(type=int, required=True, mutable=False)
    terminator_idle_guard_seconds: int = Field(type=int, required=True, mutable=False)


class SystemAutomaticCallbackGetResponse15sp2(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetRequest15sp2()``.


    Attributes:
        monitor_minutes: monitorMinutes
        max_monitors_per_originator: maxMonitorsPerOriginator
        max_callback_rings: maxCallbackRings
        max_monitors_per_terminator: maxMonitorsPerTerminator
        terminator_idle_guard_seconds: terminatorIdleGuardSeconds
        callback_method: callbackMethod
        polling_interval_seconds: pollingIntervalSeconds
    """

    _ELEMENTS = (
        E("monitor_minutes", "monitorMinutes", int, is_required=True),
        E("max_monitors_per_originator", "maxMonitorsPerOriginator", int, is_required=True),
        E("max_callback_rings", "maxCallbackRings", int, is_required=True),
        E("max_monitors_per_terminator", "maxMonitorsPerTerminator", int, is_required=True),
        E(
            "terminator_idle_guard_seconds", "terminatorIdleGuardSeconds", int,
            is_required=True,
        ),
        E("callback_method", "callbackMethod", str, is_required=True),
        E("polling_interval_seconds", "pollingIntervalSeconds", int, is_required=True),
    )

    monitor_minutes: int = Field(type=int, required=True, mutable=False)
    max_monitors_per_originator: int = Field(type=int, required=True, mutable=False)
    max_callback_rings: int = Field(type=int, required=True, mutable=False)
    max_monitors_per_terminator: int = Field(type=int, required=True, mutable=False)
    terminator_idle_guard_seconds: int = Field(type=int, required=True, mutable=False)
    callback_method: str = Field(type=str, required=True, mutable=False)
    polling_interval_seconds: int = Field(type=int, required=True, mutable=False)


class SystemAutomaticCallbackGetResponse17(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetRequest17()``.


    Attributes:
        monitor_minutes: monitorMinutes
        max_monitors_per_originator: maxMonitorsPerOriginator
        max_callback_rings: maxCallbackRings
        max_monitors_per_terminator: maxMonitorsPerTerminator
        terminator_idle_guard_seconds: terminatorIdleGuardSeconds
        callback_method: callbackMethod
        polling_interval_seconds: pollingIntervalSeconds
        activation_digit: activationDigit
    """

    _ELEMENTS = (
        E("monitor_minutes", "monitorMinutes", int, is_required=True),
        E("max_monitors_per_originator", "maxMonitorsPerOriginator", int, is_required=True),
        E("max_callback_rings", "maxCallbackRings", int, is_required=True),
        E("max_monitors_per_terminator", "maxMonitorsPerTerminator", int, is_required=True),
        E(
            "terminator_idle_guard_seconds", "terminatorIdleGuardSeconds", int,
            is_required=True,
        ),
        E("callback_method", "callbackMethod", str, is_required=True),
        E("polling_interval_seconds", "pollingIntervalSeconds", int, is_required=True),
        E("activation_digit", "activationDigit", int, is_required=True),
    )

    monitor_minutes: int = Field(type=int, required=True, mutable=False)
    max_monitors_per_originator: int = Field(type=int, required=True, mutable=False)
    max_callback_rings: int = Field(type=int, required=True, mutable=False)
    max_monitors_per_terminator: int = Field(type=int, required=True, mutable=False)
    terminator_idle_guard_seconds: int = Field(type=int, required=True, mutable=False)
    callback_method: str = Field(type=str, required=True, mutable=False)
    polling_interval_seconds: int = Field(type=int, required=True, mutable=False)
    activation_digit: int = Field(type=int, required=True, mutable=False)


class SystemBCCTGetOCIInterfaceAddressListResponse(OCIResponse):
    """
    Response to ``SystemBCCTGetOCIInterfaceAddressListRequest()``.


    Attributes:
        interface_net_address: interfaceNetAddress
    """

    _ELEMENTS = (
        E("interface_net_address", "interfaceNetAddress", str, is_array=True),
    )

    interface_net_address: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemBroadCloudGetResponse(OCIResponse):
    """
    Response to the ``SystemBroadCloudGetRequest()``.

    The response contains the system interface attributes for Messaging Server.

    Attributes:
        provisioning_url: provisioningUrl
        provisioning_user_id: provisioningUserId
        enable_synchronization: enableSynchronization
    """

    _ELEMENTS = (
        E("provisioning_url", "provisioningUrl", str),
        E("provisioning_user_id", "provisioningUserId", str),
        E("enable_synchronization", "enableSynchronization", bool, is_required=True),
    )

    provisioning_url: str = Field(type=str, required=False, mutable=False)
    provisioning_user_id: str = Field(type=str, required=False, mutable=False)
    enable_synchronization: bool = Field(type=bool, required=True, mutable=False)


class SystemBroadWorksMobileManagerGetResponse(OCIResponse):
    """
    Response to the ``SystemBroadWorksMobileManagerGetRequest()``

    Attributes:
        scf_api_net_address1: scfApiNetAddress1
        scf_api_net_address2: scfApiNetAddress2
        user_name: userName
        email_from_address: emailFromAddress
        scf_ims_only: scfIMSOnly
        signaling_ip_address: signalingIPAddress
        signaling_port: signalingPort
    """

    _ELEMENTS = (
        E("scf_api_net_address1", "scfApiNetAddress1", str),
        E("scf_api_net_address2", "scfApiNetAddress2", str),
        E("user_name", "userName", str),
        E("email_from_address", "emailFromAddress", str),
        E("scf_ims_only", "scfIMSOnly", bool, is_required=True),
        E("signaling_ip_address", "signalingIPAddress", str),
        E("signaling_port", "signalingPort", int),
    )

    scf_api_net_address1: str = Field(type=str, required=False, mutable=False)
    scf_api_net_address2: str = Field(type=str, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)
    email_from_address: str = Field(type=str, required=False, mutable=False)
    scf_ims_only: bool = Field(type=bool, required=True, mutable=False)
    signaling_ip_address: str = Field(type=str, required=False, mutable=False)
    signaling_port: int = Field(type=int, required=False, mutable=False)


class SystemBroadWorksMobilityGetIMRNListResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityDnGetListRequest()``.


    Attributes:
        imrn_number: imrnNumber
    """

    _ELEMENTS = (
        E("imrn_number", "imrnNumber", str, is_array=True),
    )

    imrn_number: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemBroadWorksMobilityGetMobileNetworkIMRNListResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityGetMobileNetworkIMRNListRequest()``.


    Attributes:
        imrn_number: imrnNumber
    """

    _ELEMENTS = (
        E("imrn_number", "imrnNumber", str, is_array=True),
    )

    imrn_number: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemBroadWorksMobilityGetResponse(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityGetRequest()``.

    Replaced by: ``SystemBroadWorksMobilityGetResponse17sp4()``.

    Attributes:
        enable_location_services: enableLocationServices
        enable_msrn_lookup: enableMSRNLookup
        enable_mobile_state_checking: enableMobileStateChecking
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
        imrn_timeout_millisecnds: imrnTimeoutMillisecnds
        scf_signaling_ip_address: scfSignalingIPAddress
        scf_signaling_port: scfSignalingPort
    """

    _ELEMENTS = (
        E("enable_location_services", "enableLocationServices", bool, is_required=True),
        E("enable_msrn_lookup", "enableMSRNLookup", bool, is_required=True),
        E(
            "enable_mobile_state_checking", "enableMobileStateChecking", bool,
            is_required=True,
        ),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
        E("imrn_timeout_millisecnds", "imrnTimeoutMillisecnds", int, is_required=True),
        E("scf_signaling_ip_address", "scfSignalingIPAddress", str),
        E("scf_signaling_port", "scfSignalingPort", int),
    )

    enable_location_services: bool = Field(type=bool, required=True, mutable=False)
    enable_msrn_lookup: bool = Field(type=bool, required=True, mutable=False)
    enable_mobile_state_checking: bool = Field(type=bool, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)
    imrn_timeout_millisecnds: int = Field(type=int, required=True, mutable=False)
    scf_signaling_ip_address: str = Field(type=str, required=False, mutable=False)
    scf_signaling_port: int = Field(type=int, required=False, mutable=False)


class SystemBroadWorksMobilityGetResponse17sp4(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityGetRequest17sp4()``.


    Attributes:
        enable_location_services: enableLocationServices
        enable_msrn_lookup: enableMSRNLookup
        enable_mobile_state_checking: enableMobileStateChecking
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
        imrn_timeout_millisecnds: imrnTimeoutMillisecnds
        scf_signaling_net_address: scfSignalingNetAddress
        scf_signaling_port: scfSignalingPort
        refresh_period_seconds: refreshPeriodSeconds
        max_consecutive_failures: maxConsecutiveFailures
        max_response_wait_time_milliseconds: maxResponseWaitTimeMilliseconds
    """

    _ELEMENTS = (
        E("enable_location_services", "enableLocationServices", bool, is_required=True),
        E("enable_msrn_lookup", "enableMSRNLookup", bool, is_required=True),
        E(
            "enable_mobile_state_checking", "enableMobileStateChecking", bool,
            is_required=True,
        ),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
        E("imrn_timeout_millisecnds", "imrnTimeoutMillisecnds", int, is_required=True),
        E("scf_signaling_net_address", "scfSignalingNetAddress", str),
        E("scf_signaling_port", "scfSignalingPort", int),
        E("refresh_period_seconds", "refreshPeriodSeconds", int, is_required=True),
        E("max_consecutive_failures", "maxConsecutiveFailures", int, is_required=True),
        E(
            "max_response_wait_time_milliseconds", "maxResponseWaitTimeMilliseconds", int,
            is_required=True,
        ),
    )

    enable_location_services: bool = Field(type=bool, required=True, mutable=False)
    enable_msrn_lookup: bool = Field(type=bool, required=True, mutable=False)
    enable_mobile_state_checking: bool = Field(type=bool, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)
    imrn_timeout_millisecnds: int = Field(type=int, required=True, mutable=False)
    scf_signaling_net_address: str = Field(type=str, required=False, mutable=False)
    scf_signaling_port: int = Field(type=int, required=False, mutable=False)
    refresh_period_seconds: int = Field(type=int, required=True, mutable=False)
    max_consecutive_failures: int = Field(type=int, required=True, mutable=False)
    max_response_wait_time_milliseconds: int = Field(type=int, required=True, mutable=False)


class SystemBroadWorksMobilityGetResponse19sp1(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityGetRequest19sp1()``.

    Replaced by ``SystemBroadWorksMobilityGetResponse21()``

    Attributes:
        enable_location_services: enableLocationServices
        enable_msrn_lookup: enableMSRNLookup
        enable_mobile_state_checking: enableMobileStateChecking
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
        imrn_timeout_millisecnds: imrnTimeoutMillisecnds
        scf_signaling_net_address: scfSignalingNetAddress
        scf_signaling_port: scfSignalingPort
        refresh_period_seconds: refreshPeriodSeconds
        max_consecutive_failures: maxConsecutiveFailures
        max_response_wait_time_milliseconds: maxResponseWaitTimeMilliseconds
        enable_announcement_suppression: enableAnnouncementSuppression
    """

    _ELEMENTS = (
        E("enable_location_services", "enableLocationServices", bool, is_required=True),
        E("enable_msrn_lookup", "enableMSRNLookup", bool, is_required=True),
        E(
            "enable_mobile_state_checking", "enableMobileStateChecking", bool,
            is_required=True,
        ),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
        E("imrn_timeout_millisecnds", "imrnTimeoutMillisecnds", int, is_required=True),
        E("scf_signaling_net_address", "scfSignalingNetAddress", str),
        E("scf_signaling_port", "scfSignalingPort", int),
        E("refresh_period_seconds", "refreshPeriodSeconds", int, is_required=True),
        E("max_consecutive_failures", "maxConsecutiveFailures", int, is_required=True),
        E(
            "max_response_wait_time_milliseconds", "maxResponseWaitTimeMilliseconds", int,
            is_required=True,
        ),
        E(
            "enable_announcement_suppression", "enableAnnouncementSuppression", bool,
            is_required=True,
        ),
    )

    enable_location_services: bool = Field(type=bool, required=True, mutable=False)
    enable_msrn_lookup: bool = Field(type=bool, required=True, mutable=False)
    enable_mobile_state_checking: bool = Field(type=bool, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)
    imrn_timeout_millisecnds: int = Field(type=int, required=True, mutable=False)
    scf_signaling_net_address: str = Field(type=str, required=False, mutable=False)
    scf_signaling_port: int = Field(type=int, required=False, mutable=False)
    refresh_period_seconds: int = Field(type=int, required=True, mutable=False)
    max_consecutive_failures: int = Field(type=int, required=True, mutable=False)
    max_response_wait_time_milliseconds: int = Field(type=int, required=True, mutable=False)
    enable_announcement_suppression: bool = Field(type=bool, required=True, mutable=False)


class SystemBroadWorksMobilityGetResponse21(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityGetRequest21()``.


    Attributes:
        enable_location_services: enableLocationServices
        enable_msrn_lookup: enableMSRNLookup
        enable_mobile_state_checking: enableMobileStateChecking
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
        imrn_timeout_millisecnds: imrnTimeoutMillisecnds
    """

    _ELEMENTS = (
        E("enable_location_services", "enableLocationServices", bool, is_required=True),
        E("enable_msrn_lookup", "enableMSRNLookup", bool, is_required=True),
        E(
            "enable_mobile_state_checking", "enableMobileStateChecking", bool,
            is_required=True,
        ),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
        E("imrn_timeout_millisecnds", "imrnTimeoutMillisecnds", int, is_required=True),
    )

    enable_location_services: bool = Field(type=bool, required=True, mutable=False)
    enable_msrn_lookup: bool = Field(type=bool, required=True, mutable=False)
    enable_mobile_state_checking: bool = Field(type=bool, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)
    imrn_timeout_millisecnds: int = Field(type=int, required=True, mutable=False)


class SystemBroadWorksMobilityMobileNetworkGetListResponse(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityMobileNetworkGetListRequest()``.

    Contains a table with column headings: "Name", "SCF Signaling Net Address", "SCF
    Signaling Port"

    Attributes:
        mobile_network_table: mobileNetworkTable
    """

    _ELEMENTS = (
        E(
            "mobile_network_table", "mobileNetworkTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    mobile_network_table: "list" = Field(type=list, required=True, mutable=False)


class SystemBroadWorksMobilityMobileNetworkGetResponse(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityMobileNetworkGetRequest()``.


    Attributes:
        scf_signaling_net_address: scfSignalingNetAddress
        scf_signaling_port: scfSignalingPort
        refresh_period_seconds: refreshPeriodSeconds
        max_consecutive_failures: maxConsecutiveFailures
        max_response_wait_time_milliseconds: maxResponseWaitTimeMilliseconds
        enable_announcement_suppression: enableAnnouncementSuppression
        service_access_code_list_name: serviceAccessCodeListName
    """

    _ELEMENTS = (
        E("scf_signaling_net_address", "scfSignalingNetAddress", str),
        E("scf_signaling_port", "scfSignalingPort", int),
        E("refresh_period_seconds", "refreshPeriodSeconds", int, is_required=True),
        E("max_consecutive_failures", "maxConsecutiveFailures", int, is_required=True),
        E(
            "max_response_wait_time_milliseconds", "maxResponseWaitTimeMilliseconds", int,
            is_required=True,
        ),
        E(
            "enable_announcement_suppression", "enableAnnouncementSuppression", bool,
            is_required=True,
        ),
        E("service_access_code_list_name", "serviceAccessCodeListName", str),
    )

    scf_signaling_net_address: str = Field(type=str, required=False, mutable=False)
    scf_signaling_port: int = Field(type=int, required=False, mutable=False)
    refresh_period_seconds: int = Field(type=int, required=True, mutable=False)
    max_consecutive_failures: int = Field(type=int, required=True, mutable=False)
    max_response_wait_time_milliseconds: int = Field(type=int, required=True, mutable=False)
    enable_announcement_suppression: bool = Field(type=bool, required=True, mutable=False)
    service_access_code_list_name: str = Field(type=str, required=False, mutable=False)


class SystemBroadWorksMobilityMobileSubscriberDirectoryNumberGetSummaryListResponse(OCIResponse):
    """
    Response to
    ``SystemBroadWorksMobilityMobileSubscriberDirectoryNumberGetSummaryListRequest()``.

    The response contains a table with columns: "Mobile Number", "Mobile Network",
    "Service Provider Id", "Is Enterprise", "Group Id", "User Id", "Last Name", "First
    Name", "Hiragana Last Name", "Hiragana First Name", "Phone Number" and "Extension".

    Attributes:
        mobile_subscriber_directory_numbers_summary_table:
            mobileSubscriberDirectoryNumbersSummaryTable
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_numbers_summary_table",
            "mobileSubscriberDirectoryNumbersSummaryTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    mobile_subscriber_directory_numbers_summary_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class SystemBroadWorksMobilityServiceAccessCodeGetListResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityServiceAccessCodeGetListRequest()``.

    Contains a table with column headings: "Country Code", "Service Access Code",
    "Description". Replaced by SystemBroadWorksMobilityServiceAccessCodeGetListReponse21.

    Attributes:
        service_access_code_table: serviceAccessCodeTable
    """

    _ELEMENTS = (
        E(
            "service_access_code_table", "serviceAccessCodeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_access_code_table: "list" = Field(type=list, required=True, mutable=False)


class SystemBroadWorksMobilityServiceAccessCodeGetListResponse21(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityServiceAccessCodeGetListRequest21()``.

    Contains a table with column headings: "Country Code", "Service Access Code",
    "Description"

    Attributes:
        service_access_code_table: serviceAccessCodeTable
    """

    _ELEMENTS = (
        E(
            "service_access_code_table", "serviceAccessCodeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_access_code_table: "list" = Field(type=list, required=True, mutable=False)


class SystemBroadWorksMobilityServiceAccessCodeListGetListResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityServiceAccessCodeListGetListRequest()``.


    Attributes:
        name: name
    """

    _ELEMENTS = (
        E("name", "name", str, is_array=True),
    )

    name: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemBroadWorksMobilityServiceAccessCodeListUsageGetResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityServiceAccessCodeListUsageGetRequest()``.


    Attributes:
        mobile_network_name: mobileNetworkName
    """

    _ELEMENTS = (
        E("mobile_network_name", "mobileNetworkName", str, is_array=True),
    )

    mobile_network_name: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemBroadWorksReceptionistEnterpriseGetResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksReceptionistEnterpriseGetRequest()``.

    Contains a list of BroadWorks Receptionist - Enterprise parameters.

    Attributes:
        max_monitored_users: maxMonitoredUsers
    """

    _ELEMENTS = (
        E("max_monitored_users", "maxMonitoredUsers", int, is_required=True),
    )

    max_monitored_users: int = Field(type=int, required=True, mutable=False)


class SystemBusyLampFieldGetResponse(OCIResponse):
    """
    Response to ``SystemBusyLampFieldGetRequest()``.


    Attributes:
        display_local_user_identity_last_name_first: displayLocalUserIdentityLastNameFirst
    """

    _ELEMENTS = (
        E(
            "display_local_user_identity_last_name_first",
            "displayLocalUserIdentityLastNameFirst", bool, is_required=True,
        ),
    )

    display_local_user_identity_last_name_first: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemBusyLampFieldGetResponse18(OCIResponse):
    """
    Response to ``SystemBusyLampFieldGetRequest18()``.

    The following elements are only used in AS data mode: forceUseOfTCP

    Attributes:
        display_local_user_identity_last_name_first: displayLocalUserIdentityLastNameFirst
        force_use_of_tcp: forceUseOfTCP
    """

    _ELEMENTS = (
        E(
            "display_local_user_identity_last_name_first",
            "displayLocalUserIdentityLastNameFirst", bool, is_required=True,
        ),
        E("force_use_of_tcp", "forceUseOfTCP", bool, is_required=True),
    )

    display_local_user_identity_last_name_first: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_use_of_tcp: bool = Field(type=bool, required=True, mutable=False)


class SystemBwDiameterBaseDataGetResponse(OCIResponse):
    """
    Response to ``SystemBwDiameterBaseDataGetRequest()``.

    Contains a list of System Diameter base parameters.

    Attributes:
        xs_realm: xsRealm
        xs_listening_port: xsListeningPort
        ps_realm: psRealm
        ps_listening_port: psListeningPort
        ps_relay_through_xs: psRelayThroughXs
        xs_relay_listening_port: xsRelayListeningPort
        tc_timer_seconds: tcTimerSeconds
        tw_timer_seconds: twTimerSeconds
        request_timer_seconds: requestTimerSeconds
        busy_peer_detection_outstanding_txn_count: busyPeerDetectionOutstandingTxnCount
        busy_peer_restore_outstanding_txn_count: busyPeerRestoreOutstandingTxnCount
        dynamic_entry_inactivity_timer_hours: dynamicEntryInactivityTimerHours
    """

    _ELEMENTS = (
        E("xs_realm", "xsRealm", str),
        E("xs_listening_port", "xsListeningPort", int, is_required=True),
        E("ps_realm", "psRealm", str),
        E("ps_listening_port", "psListeningPort", int, is_required=True),
        E("ps_relay_through_xs", "psRelayThroughXs", bool, is_required=True),
        E("xs_relay_listening_port", "xsRelayListeningPort", int, is_required=True),
        E("tc_timer_seconds", "tcTimerSeconds", int, is_required=True),
        E("tw_timer_seconds", "twTimerSeconds", int, is_required=True),
        E("request_timer_seconds", "requestTimerSeconds", int, is_required=True),
        E(
            "busy_peer_detection_outstanding_txn_count",
            "busyPeerDetectionOutstandingTxnCount", int, is_required=True,
        ),
        E(
            "busy_peer_restore_outstanding_txn_count",
            "busyPeerRestoreOutstandingTxnCount", int, is_required=True,
        ),
        E(
            "dynamic_entry_inactivity_timer_hours", "dynamicEntryInactivityTimerHours",
            int, is_required=True,
        ),
    )

    xs_realm: str = Field(type=str, required=False, mutable=False)
    xs_listening_port: int = Field(type=int, required=True, mutable=False)
    ps_realm: str = Field(type=str, required=False, mutable=False)
    ps_listening_port: int = Field(type=int, required=True, mutable=False)
    ps_relay_through_xs: bool = Field(type=bool, required=True, mutable=False)
    xs_relay_listening_port: int = Field(type=int, required=True, mutable=False)
    tc_timer_seconds: int = Field(type=int, required=True, mutable=False)
    tw_timer_seconds: int = Field(type=int, required=True, mutable=False)
    request_timer_seconds: int = Field(type=int, required=True, mutable=False)
    busy_peer_detection_outstanding_txn_count: int = Field(
        type=int, required=True, mutable=False,
    )
    busy_peer_restore_outstanding_txn_count: int = Field(
        type=int, required=True, mutable=False,
    )
    dynamic_entry_inactivity_timer_hours: int = Field(type=int, required=True, mutable=False)


class SystemBwDiameterBaseDataGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemBwDiameterBaseDataGetRequest17sp3()``.

    Contains a list of System Diameter base parameters.

    Attributes:
        xs_realm: xsRealm
        xs_listening_port: xsListeningPort
        ps_realm: psRealm
        ps_listening_port: psListeningPort
        ps_relay_through_xs: psRelayThroughXs
        xs_relay_listening_port: xsRelayListeningPort
        tc_timer_seconds: tcTimerSeconds
        tw_timer_seconds: twTimerSeconds
        request_timer_seconds: requestTimerSeconds
        busy_peer_detection_outstanding_txn_count: busyPeerDetectionOutstandingTxnCount
        busy_peer_restore_outstanding_txn_count: busyPeerRestoreOutstandingTxnCount
        dynamic_entry_inactivity_timer_hours: dynamicEntryInactivityTimerHours
        advertised_offline_billing_application: advertisedOfflineBillingApplication
        advertised_online_billing_application: advertisedOnlineBillingApplication
    """

    _ELEMENTS = (
        E("xs_realm", "xsRealm", str),
        E("xs_listening_port", "xsListeningPort", int, is_required=True),
        E("ps_realm", "psRealm", str),
        E("ps_listening_port", "psListeningPort", int, is_required=True),
        E("ps_relay_through_xs", "psRelayThroughXs", bool, is_required=True),
        E("xs_relay_listening_port", "xsRelayListeningPort", int, is_required=True),
        E("tc_timer_seconds", "tcTimerSeconds", int, is_required=True),
        E("tw_timer_seconds", "twTimerSeconds", int, is_required=True),
        E("request_timer_seconds", "requestTimerSeconds", int, is_required=True),
        E(
            "busy_peer_detection_outstanding_txn_count",
            "busyPeerDetectionOutstandingTxnCount", int, is_required=True,
        ),
        E(
            "busy_peer_restore_outstanding_txn_count",
            "busyPeerRestoreOutstandingTxnCount", int, is_required=True,
        ),
        E(
            "dynamic_entry_inactivity_timer_hours", "dynamicEntryInactivityTimerHours",
            int, is_required=True,
        ),
        E(
            "advertised_offline_billing_application",
            "advertisedOfflineBillingApplication", str, is_required=True,
        ),
        E(
            "advertised_online_billing_application", "advertisedOnlineBillingApplication",
            str, is_required=True,
        ),
    )

    xs_realm: str = Field(type=str, required=False, mutable=False)
    xs_listening_port: int = Field(type=int, required=True, mutable=False)
    ps_realm: str = Field(type=str, required=False, mutable=False)
    ps_listening_port: int = Field(type=int, required=True, mutable=False)
    ps_relay_through_xs: bool = Field(type=bool, required=True, mutable=False)
    xs_relay_listening_port: int = Field(type=int, required=True, mutable=False)
    tc_timer_seconds: int = Field(type=int, required=True, mutable=False)
    tw_timer_seconds: int = Field(type=int, required=True, mutable=False)
    request_timer_seconds: int = Field(type=int, required=True, mutable=False)
    busy_peer_detection_outstanding_txn_count: int = Field(
        type=int, required=True, mutable=False,
    )
    busy_peer_restore_outstanding_txn_count: int = Field(
        type=int, required=True, mutable=False,
    )
    dynamic_entry_inactivity_timer_hours: int = Field(type=int, required=True, mutable=False)
    advertised_offline_billing_application: str = Field(
        type=str, required=True, mutable=False,
    )
    advertised_online_billing_application: str = Field(type=str, required=True, mutable=False)


class SystemBwDiameterPeerGetListResponse(OCIResponse):
    """
    Contains a 5 column table with column headings 'Instance', 'Identity', 'IP Address',
    'Port', and 'Enabled'.

    One row is present for each peer.

    Attributes:
        peer_table: peerTable
    """

    _ELEMENTS = (
        E("peer_table", "peerTable", list, is_complex=True, is_required=True, is_table=True),
    )

    peer_table: "list" = Field(type=list, required=True, mutable=False)


class SystemBwDiameterRoutingPeerGetListResponse(OCIResponse):
    """
    Contains a 6 column table with column headings 'Instance', 'Realm', 'ApplicationID',
    'Identity, 'Priority', and 'Weight'.

    One row is present for each Diameter Routing Peer.

    Attributes:
        routing_peer_table: routingPeerTable
    """

    _ELEMENTS = (
        E(
            "routing_peer_table", "routingPeerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    routing_peer_table: "list" = Field(type=list, required=True, mutable=False)


class SystemBwDiameterRoutingRealmGetListResponse(OCIResponse):
    """
    Contains a 4 column table with column headings 'Instance', 'Realm', 'ApplicationID',
    and 'Default'.

    One row is present for each Diameter routing realm.

    Attributes:
        routing_realm_table: routingRealmTable
    """

    _ELEMENTS = (
        E(
            "routing_realm_table", "routingRealmTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    routing_realm_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCAPGetACLListResponse14(OCIResponse):
    """
    Response to ``SystemCAPGetACLListRequest14()``.

    The table columns are: "Net Address" and "Description".

    Attributes:
        acl_table: aclTable
    """

    _ELEMENTS = (
        E("acl_table", "aclTable", list, is_complex=True, is_required=True, is_table=True),
    )

    acl_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCAPParametersGetResponse(OCIResponse):
    """
    Response to ``SystemCAPParametersGetRequest()``.

    Contains a list of system CAP parameters.

    Replaced By: ``SystemCAPParametersGetResponse14sp3()``

    Attributes:
        server_port: serverPort
        max_client_connections: maxClientConnections
        enable_connection_ping: enableConnectionPing
        connection_ping_interval_minutes: connectionPingIntervalMinutes
        ccc2_server_port: CCC2ServerPort
        ccc2_max_client_connections: CCC2MaxClientConnections
    """

    _ELEMENTS = (
        E("server_port", "serverPort", int, is_required=True),
        E("max_client_connections", "maxClientConnections", int, is_required=True),
        E("enable_connection_ping", "enableConnectionPing", bool, is_required=True),
        E(
            "connection_ping_interval_minutes", "connectionPingIntervalMinutes", int,
            is_required=True,
        ),
        E("ccc2_server_port", "CCC2ServerPort", int, is_required=True),
        E("ccc2_max_client_connections", "CCC2MaxClientConnections", int, is_required=True),
    )

    server_port: int = Field(type=int, required=True, mutable=False)
    max_client_connections: int = Field(type=int, required=True, mutable=False)
    enable_connection_ping: bool = Field(type=bool, required=True, mutable=False)
    connection_ping_interval_minutes: int = Field(type=int, required=True, mutable=False)
    ccc2_server_port: int = Field(type=int, required=True, mutable=False)
    ccc2_max_client_connections: int = Field(type=int, required=True, mutable=False)


class SystemCAPParametersGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemCAPParametersGetListRequest14sp3()``.

    Contains a list of system CAP parameters.  Replaced by
    ``SystemCAPParametersGetResponse19()``

    Attributes:
        server_port: serverPort
        max_client_connections: maxClientConnections
        enable_connection_ping: enableConnectionPing
        connection_ping_interval_minutes: connectionPingIntervalMinutes
        ccc2_server_port: CCC2ServerPort
        ccc2_max_client_connections: CCC2MaxClientConnections
        cap_server_call_center_port: capServerCallCenterPort
        cap_server_call_center_max_client_connections:
            capServerCallCenterMaxClientConnections
    """

    _ELEMENTS = (
        E("server_port", "serverPort", int, is_required=True),
        E("max_client_connections", "maxClientConnections", int, is_required=True),
        E("enable_connection_ping", "enableConnectionPing", bool, is_required=True),
        E(
            "connection_ping_interval_minutes", "connectionPingIntervalMinutes", int,
            is_required=True,
        ),
        E("ccc2_server_port", "CCC2ServerPort", int, is_required=True),
        E("ccc2_max_client_connections", "CCC2MaxClientConnections", int, is_required=True),
        E("cap_server_call_center_port", "capServerCallCenterPort", int, is_required=True),
        E(
            "cap_server_call_center_max_client_connections",
            "capServerCallCenterMaxClientConnections", int, is_required=True,
        ),
    )

    server_port: int = Field(type=int, required=True, mutable=False)
    max_client_connections: int = Field(type=int, required=True, mutable=False)
    enable_connection_ping: bool = Field(type=bool, required=True, mutable=False)
    connection_ping_interval_minutes: int = Field(type=int, required=True, mutable=False)
    ccc2_server_port: int = Field(type=int, required=True, mutable=False)
    ccc2_max_client_connections: int = Field(type=int, required=True, mutable=False)
    cap_server_call_center_port: int = Field(type=int, required=True, mutable=False)
    cap_server_call_center_max_client_connections: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemCAPParametersGetResponse19(OCIResponse):
    """
    Response to ``SystemCAPParametersGetRequest19()``.

    Contains a list of system CAP parameters.

    Attributes:
        server_port: serverPort
        max_client_connections: maxClientConnections
        enable_connection_ping: enableConnectionPing
        connection_ping_interval_minutes: connectionPingIntervalMinutes
        ccc2_server_port: CCC2ServerPort
        ccc2_max_client_connections: CCC2MaxClientConnections
    """

    _ELEMENTS = (
        E("server_port", "serverPort", int, is_required=True),
        E("max_client_connections", "maxClientConnections", int, is_required=True),
        E("enable_connection_ping", "enableConnectionPing", bool, is_required=True),
        E(
            "connection_ping_interval_minutes", "connectionPingIntervalMinutes", int,
            is_required=True,
        ),
        E("ccc2_server_port", "CCC2ServerPort", int, is_required=True),
        E("ccc2_max_client_connections", "CCC2MaxClientConnections", int, is_required=True),
    )

    server_port: int = Field(type=int, required=True, mutable=False)
    max_client_connections: int = Field(type=int, required=True, mutable=False)
    enable_connection_ping: bool = Field(type=bool, required=True, mutable=False)
    connection_ping_interval_minutes: int = Field(type=int, required=True, mutable=False)
    ccc2_server_port: int = Field(type=int, required=True, mutable=False)
    ccc2_max_client_connections: int = Field(type=int, required=True, mutable=False)


class SystemCPEConfigGetFileServerListResponse(OCIResponse):
    """
    Response to ``SystemCPEConfigGetFileServerListRequest()``.

    The table columns are: "Device Type", "FTP Host Net Address", "FTP User Id",
    "Directory" and "Passive FTP".

    Replaced By: ``SystemCPEConfigGetFileServerListResponse14sp6()``

    Attributes:
        file_server_table: fileServerTable
    """

    _ELEMENTS = (
        E(
            "file_server_table", "fileServerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    file_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCPEConfigGetFileServerListResponse14sp6(OCIResponse):
    """
    Response to ``SystemCPEConfigGetFileServerListRequest14sp6()``.

    The table columns are: "Device Type", "File Repository Name", "Directory", "Extended
    File Repository Name". The following columns are only used in AS data mode: "Extended
    File Repository Name"

    Attributes:
        file_server_table: fileServerTable
    """

    _ELEMENTS = (
        E(
            "file_server_table", "fileServerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    file_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCPEConfigParametersGetResponse(OCIResponse):
    """
    Response to ``SystemCPEConfigParametersGetListRequest()``.

    Contains a list of system CPE Config parameters.

    Replaced By: ``SystemCPEConfigParametersGetResponse14sp6()``

    Attributes:
        enable_ip_device_management: enableIPDeviceManagement
        ftp_connect_timeout_seconds: ftpConnectTimeoutSeconds
        ftp_file_transfer_timeout_seconds: ftpFileTransferTimeoutSeconds
    """

    _ELEMENTS = (
        E("enable_ip_device_management", "enableIPDeviceManagement", bool, is_required=True),
        E("ftp_connect_timeout_seconds", "ftpConnectTimeoutSeconds", int, is_required=True),
        E(
            "ftp_file_transfer_timeout_seconds", "ftpFileTransferTimeoutSeconds", int,
            is_required=True,
        ),
    )

    enable_ip_device_management: bool = Field(type=bool, required=True, mutable=False)
    ftp_connect_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    ftp_file_transfer_timeout_seconds: int = Field(type=int, required=True, mutable=False)


class SystemCPEConfigParametersGetResponse14sp6(OCIResponse):
    """
    Response to ``SystemCPEConfigParametersGetListRequest14sp6()``.

    Contains a list of system CPE Config parameters.

    Attributes:
        enable_ip_device_management: enableIPDeviceManagement
        ftp_connect_timeout_seconds: ftpConnectTimeoutSeconds
        ftp_file_transfer_timeout_seconds: ftpFileTransferTimeoutSeconds
        pause_between_file_rebuild_milliseconds: pauseBetweenFileRebuildMilliseconds
        max_busy_time_minutes: maxBusyTimeMinutes
        device_access_app_server_cluster_name: deviceAccessAppServerClusterName
        file_rebuild_immediate: fileRebuildImmediate
        file_rebuild_daily: fileRebuildDaily
        file_rebuild_hourly: fileRebuildHourly
    """

    _ELEMENTS = (
        E("enable_ip_device_management", "enableIPDeviceManagement", bool, is_required=True),
        E("ftp_connect_timeout_seconds", "ftpConnectTimeoutSeconds", int, is_required=True),
        E(
            "ftp_file_transfer_timeout_seconds", "ftpFileTransferTimeoutSeconds", int,
            is_required=True,
        ),
        E(
            "pause_between_file_rebuild_milliseconds",
            "pauseBetweenFileRebuildMilliseconds", int, is_required=True,
        ),
        E("max_busy_time_minutes", "maxBusyTimeMinutes", int, is_required=True),
        E("device_access_app_server_cluster_name", "deviceAccessAppServerClusterName", str),
        E("file_rebuild_immediate", "fileRebuildImmediate", str, is_complex=True),  # unknown
        E("file_rebuild_daily", "fileRebuildDaily", str, is_complex=True),  # unknown
        E("file_rebuild_hourly", "fileRebuildHourly", str, is_complex=True),  # unknown
    )

    enable_ip_device_management: bool = Field(type=bool, required=True, mutable=False)
    ftp_connect_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    ftp_file_transfer_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    pause_between_file_rebuild_milliseconds: int = Field(
        type=int, required=True, mutable=False,
    )
    max_busy_time_minutes: int = Field(type=int, required=True, mutable=False)
    device_access_app_server_cluster_name: str = Field(
        type=str, required=False, mutable=False,
    )
    file_rebuild_immediate: str = Field(type=str, required=False, mutable=False)
    file_rebuild_daily: str = Field(type=str, required=False, mutable=False)
    file_rebuild_hourly: str = Field(type=str, required=False, mutable=False)


class SystemCPEConfigParametersGetResponse20(OCIResponse):
    """
    Response to ``SystemCPEConfigParametersGetListRequest20()``.

    Contains a list of system CPE Config parameters.  Replaced by:
    ``SystemCPEConfigParametersGetResponse21()``

    Attributes:
        enable_ip_device_management: enableIPDeviceManagement
        ftp_connect_timeout_seconds: ftpConnectTimeoutSeconds
        ftp_file_transfer_timeout_seconds: ftpFileTransferTimeoutSeconds
        pause_between_file_rebuild_milliseconds: pauseBetweenFileRebuildMilliseconds
        max_busy_time_minutes: maxBusyTimeMinutes
        device_access_app_server_cluster_name: deviceAccessAppServerClusterName
    """

    _ELEMENTS = (
        E("enable_ip_device_management", "enableIPDeviceManagement", bool, is_required=True),
        E("ftp_connect_timeout_seconds", "ftpConnectTimeoutSeconds", int, is_required=True),
        E(
            "ftp_file_transfer_timeout_seconds", "ftpFileTransferTimeoutSeconds", int,
            is_required=True,
        ),
        E(
            "pause_between_file_rebuild_milliseconds",
            "pauseBetweenFileRebuildMilliseconds", int, is_required=True,
        ),
        E("max_busy_time_minutes", "maxBusyTimeMinutes", int, is_required=True),
        E("device_access_app_server_cluster_name", "deviceAccessAppServerClusterName", str),
    )

    enable_ip_device_management: bool = Field(type=bool, required=True, mutable=False)
    ftp_connect_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    ftp_file_transfer_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    pause_between_file_rebuild_milliseconds: int = Field(
        type=int, required=True, mutable=False,
    )
    max_busy_time_minutes: int = Field(type=int, required=True, mutable=False)
    device_access_app_server_cluster_name: str = Field(
        type=str, required=False, mutable=False,
    )


class SystemCPEConfigParametersGetResponse21(OCIResponse):
    """
    Response to ``SystemCPEConfigParametersGetListRequest21()``.

    Contains a list of system CPE Config parameters.

    Attributes:
        enable_ip_device_management: enableIPDeviceManagement
        ftp_connect_timeout_seconds: ftpConnectTimeoutSeconds
        ftp_file_transfer_timeout_seconds: ftpFileTransferTimeoutSeconds
        pause_between_file_rebuild_milliseconds: pauseBetweenFileRebuildMilliseconds
        device_access_app_server_cluster_name: deviceAccessAppServerClusterName
        min_time_between_reset_milliseconds: minTimeBetweenResetMilliseconds
        always_push_files_on_rebuild: alwaysPushFilesOnRebuild
        max_file_operation_retry_attempts: maxFileOperationRetryAttempts
        enable_auto_rebuild_config: enableAutoRebuildConfig
        event_queue_size: eventQueueSize
        allow_device_credentials_retrieval: allowDeviceCredentialsRetrieval
    """

    _ELEMENTS = (
        E("enable_ip_device_management", "enableIPDeviceManagement", bool, is_required=True),
        E("ftp_connect_timeout_seconds", "ftpConnectTimeoutSeconds", int, is_required=True),
        E(
            "ftp_file_transfer_timeout_seconds", "ftpFileTransferTimeoutSeconds", int,
            is_required=True,
        ),
        E(
            "pause_between_file_rebuild_milliseconds",
            "pauseBetweenFileRebuildMilliseconds", int, is_required=True,
        ),
        E("device_access_app_server_cluster_name", "deviceAccessAppServerClusterName", str),
        E(
            "min_time_between_reset_milliseconds", "minTimeBetweenResetMilliseconds", int,
            is_required=True,
        ),
        E("always_push_files_on_rebuild", "alwaysPushFilesOnRebuild", bool, is_required=True),
        E(
            "max_file_operation_retry_attempts", "maxFileOperationRetryAttempts", int,
            is_required=True,
        ),
        E("enable_auto_rebuild_config", "enableAutoRebuildConfig", bool, is_required=True),
        E("event_queue_size", "eventQueueSize", int, is_required=True),
        E(
            "allow_device_credentials_retrieval", "allowDeviceCredentialsRetrieval", bool,
            is_required=True,
        ),
    )

    enable_ip_device_management: bool = Field(type=bool, required=True, mutable=False)
    ftp_connect_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    ftp_file_transfer_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    pause_between_file_rebuild_milliseconds: int = Field(
        type=int, required=True, mutable=False,
    )
    device_access_app_server_cluster_name: str = Field(
        type=str, required=False, mutable=False,
    )
    min_time_between_reset_milliseconds: int = Field(type=int, required=True, mutable=False)
    always_push_files_on_rebuild: bool = Field(type=bool, required=True, mutable=False)
    max_file_operation_retry_attempts: int = Field(type=int, required=True, mutable=False)
    enable_auto_rebuild_config: bool = Field(type=bool, required=True, mutable=False)
    event_queue_size: int = Field(type=int, required=True, mutable=False)
    allow_device_credentials_retrieval: bool = Field(type=bool, required=True, mutable=False)


class SystemCallCenterEnhancedReportingBrandingGetResponse(OCIResponse):
    """
    Response to the ``SystemCallCenterEnhancedReportingBrandingGetRequest()``.


    Attributes:
        branding_choice: brandingChoice
        custom_branding_file_description: customBrandingFileDescription
    """

    _ELEMENTS = (
        E("branding_choice", "brandingChoice", str, is_required=True),
        E("custom_branding_file_description", "customBrandingFileDescription", str),
    )

    branding_choice: str = Field(type=str, required=True, mutable=False)
    custom_branding_file_description: str = Field(type=str, required=False, mutable=False)


class SystemCallCenterEnhancedReportingGetResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingGetRequest()``.


    Attributes:
        archive_reports: archiveReports
        report_application_url: reportApplicationURL
        repository_application_url: repositoryApplicationURL
    """

    _ELEMENTS = (
        E("archive_reports", "archiveReports", bool, is_required=True),
        E("report_application_url", "reportApplicationURL", str),
        E("repository_application_url", "repositoryApplicationURL", str),
    )

    archive_reports: bool = Field(type=bool, required=True, mutable=False)
    report_application_url: str = Field(type=str, required=False, mutable=False)
    repository_application_url: str = Field(type=str, required=False, mutable=False)


class SystemCallCenterEnhancedReportingReportTemplateGetListResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingReportTemplateGetListRequest()``.

    Contains a table with column headings: "Name", "Description", "Is Custom", "Type" and
    "Enabled"

    Attributes:
        report_template_table: reportTemplateTable
    """

    _ELEMENTS = (
        E(
            "report_template_table", "reportTemplateTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    report_template_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallCenterEnhancedReportingReportTemplateGetResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingReportTemplateGetRequest()``.


    Attributes:
        description: description
        data_template: dataTemplate
        filter_number: filterNumber
        xslt_template_description: xsltTemplateDescription
        scope: scope
        is_enabled: isEnabled
        is_realtime_report: isRealtimeReport
        call_completion_threshold_param: callCompletionThresholdParam
        short_duration_threshold_param: shortDurationThresholdParam
        service_level_threshold_param: serviceLevelThresholdParam
        service_level_inclusions_param: serviceLevelInclusionsParam
        service_level_objective_threshold_param: serviceLevelObjectiveThresholdParam
        abandoned_call_threshold_param: abandonedCallThresholdParam
        service_level_threshold_param_number: serviceLevelThresholdParamNumber
        abandoned_call_threshold_param_number: abandonedCallThresholdParamNumber
        filter_value: filterValue
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("data_template", "dataTemplate", str, is_required=True),
        E("filter_number", "filterNumber", int),
        E("xslt_template_description", "xsltTemplateDescription", str, is_required=True),
        E("scope", "scope", str, is_required=True),
        E("is_enabled", "isEnabled", bool, is_required=True),
        E("is_realtime_report", "isRealtimeReport", bool),
        E("call_completion_threshold_param", "callCompletionThresholdParam", str),
        E("short_duration_threshold_param", "shortDurationThresholdParam", str),
        E("service_level_threshold_param", "serviceLevelThresholdParam", str),
        E("service_level_inclusions_param", "serviceLevelInclusionsParam", str),
        E(
            "service_level_objective_threshold_param",
            "serviceLevelObjectiveThresholdParam", str,
        ),
        E("abandoned_call_threshold_param", "abandonedCallThresholdParam", str),
        E("service_level_threshold_param_number", "serviceLevelThresholdParamNumber", int),
        E("abandoned_call_threshold_param_number", "abandonedCallThresholdParamNumber", int),
        E("filter_value", "filterValue", str),
    )

    description: str = Field(type=str, required=False, mutable=False)
    data_template: str = Field(type=str, required=True, mutable=False)
    filter_number: int = Field(type=int, required=False, mutable=False)
    xslt_template_description: str = Field(type=str, required=True, mutable=False)
    scope: str = Field(type=str, required=True, mutable=False)
    is_enabled: bool = Field(type=bool, required=True, mutable=False)
    is_realtime_report: bool = Field(type=bool, required=False, mutable=False)
    call_completion_threshold_param: str = Field(type=str, required=False, mutable=False)
    short_duration_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_inclusions_param: str = Field(type=str, required=False, mutable=False)
    service_level_objective_threshold_param: str = Field(
        type=str, required=False, mutable=False,
    )
    abandoned_call_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_threshold_param_number: int = Field(type=int, required=False, mutable=False)
    abandoned_call_threshold_param_number: int = Field(
        type=int, required=False, mutable=False,
    )
    filter_value: str = Field(type=str, required=False, mutable=False)


class SystemCallCenterEnhancedReportingScheduledReportGetActiveListResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingScheduledReportGetActiveListRequest()``
    Contains a table with column headings : "Scheduled Report Name", "Description",
    "Service Provider Id", "Is Enterprise", "Group Id", "Created By", "Is Supervisor
    Report", "Report Template Name", "Report Template Level" and "Recurring".

    The "Created By" can be either "Administrator" or user id if created by supervisor.
    The possible values for "Recurring" are "None", "Daily", "Weekly", "Monthly" and
    "Yearly". The possible values for "Report Template Level" are "System", "Enterprise"
    and "Group". For the rows with "Is Enterprise" column value "true", the "Group Id"
    column will be empty.

    Attributes:
        scheduled_report_table: scheduledReportTable
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table", "scheduledReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    scheduled_report_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallCenterEnhancedReportingScheduledReportGetCompletedListResponse(OCIResponse):
    """
    Response to
    ``SystemCallCenterEnhancedReportingScheduledReportGetCompletedListRequest()`` Contains
    a table with column headings : "Scheduled Report Name", "Description", "Service
    Provider Id", "Is Enterprise", "Group Id", "Created By", "Is Supervisor Report",
    "Report Template Name", "Report Template Level" and "Recurring".

    The "Created By" can be either "Administrator" or user id if created by supervisor.
    The possible values for "Recurring" are "None", "Daily", "Weekly", "Monthly" and
    "Yearly". The possible values for "Report Template Level" are "System", "Enterprise"
    and "Group". For the rows with "Is Enterprise" column value "true", the "Group Id"
    column will be empty.

    Attributes:
        scheduled_report_table: scheduledReportTable
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table", "scheduledReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    scheduled_report_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallCenterEnhancedReportingScheduledReportGetListResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingScheduledReportGetListRequest()``.

    Contains a table with column headings : "Scheduled Report Name", "Description",
    "Service Provider Id", "Is Enterprise", "Group Id", "Created By", "Is Supervisor
    Report", "Status", "Report Template Name", "Report Template Level" and "Recurring".
    The "Created By" can be either "Administrator" or user id if created by supervisor.
    The possible values for "Status" are "Active", and "Completed". The possible values
    for "Recurring" are "None", "Daily", "Weekly", "Monthly" and "Yearly". The possible
    values for "Report Template Level" are "System", "Enterprise" and "Group". For the
    rows with "Is Enterprise" column value "true", the "Group Id" column will be empty.

    Attributes:
        scheduled_report_table: scheduledReportTable
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table", "scheduledReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    scheduled_report_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallCenterEnhancedReportingScheduledReportGetReportTemplateUsageListResponse(OCIResponse):
    """
    Response to
    ``SystemCallCenterEnhancedReportingScheduledReportGetReportTemplateUsageListRequest()``.

    Contains a table with column headings: "Schedule Name", "Organization Type", "Service
    Provider Id", "Group Id", "Created By", "Created By Supervisor", and "Is Active". The
    "Organization Type" is either "Service Provider" or "Enterprise". The "Created By" can
    be either "Administrator" or user id if created by supervisor.  The possible values
    for "Created By Supervisor" are "true" and "false".

    Attributes:
        schedule_report_table: scheduleReportTable
    """

    _ELEMENTS = (
        E(
            "schedule_report_table", "scheduleReportTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    schedule_report_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallCenterEnhancedReportingScheduledTaskParametersGetResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingScheduledTaskParametersGetRequest()``

    Attributes:
        scheduled_report_search_interval_minutes: scheduledReportSearchIntervalMinutes
        maximum_scheduled_reports_per_interval: maximumScheduledReportsPerInterval
        delete_scheduled_report_days_after_completion:
            deleteScheduledReportDaysAfterCompletion
    """

    _ELEMENTS = (
        E(
            "scheduled_report_search_interval_minutes",
            "scheduledReportSearchIntervalMinutes", int, is_required=True,
        ),
        E(
            "maximum_scheduled_reports_per_interval",
            "maximumScheduledReportsPerInterval", int, is_required=True,
        ),
        E(
            "delete_scheduled_report_days_after_completion",
            "deleteScheduledReportDaysAfterCompletion", int, is_required=True,
        ),
    )

    scheduled_report_search_interval_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    maximum_scheduled_reports_per_interval: int = Field(
        type=int, required=True, mutable=False,
    )
    delete_scheduled_report_days_after_completion: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemCallCenterGetResponse(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest()``.

    Replaced By: ``SystemCallCenterGetResponse14sp9()``

    Attributes:
        default_from_address: defaultFromAddress
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)


class SystemCallCenterGetResponse14sp9(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest14sp9()``.


    Attributes:
        default_from_address: defaultFromAddress
        statistics_sampling_period_minutes: statisticsSamplingPeriodMinutes
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
        E(
            "statistics_sampling_period_minutes", "statisticsSamplingPeriodMinutes", int,
            is_required=True,
        ),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)
    statistics_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)


class SystemCallCenterGetResponse16(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest16()``.


    Attributes:
        default_from_address: defaultFromAddress
        statistics_sampling_period_minutes: statisticsSamplingPeriodMinutes
        default_enable_guard_timer: defaultEnableGuardTimer
        default_guard_timer_seconds: defaultGuardTimerSeconds
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
        E(
            "statistics_sampling_period_minutes", "statisticsSamplingPeriodMinutes", int,
            is_required=True,
        ),
        E("default_enable_guard_timer", "defaultEnableGuardTimer", bool, is_required=True),
        E("default_guard_timer_seconds", "defaultGuardTimerSeconds", int, is_required=True),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool, is_required=True,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int, is_required=True,
        ),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)
    statistics_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)
    default_enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    default_guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemCallCenterGetResponse17(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest17()``.

    Replaced by ``SystemCallCenterGetResponse17sp4()``.

    Attributes:
        default_from_address: defaultFromAddress
        statistics_sampling_period_minutes: statisticsSamplingPeriodMinutes
        default_enable_guard_timer: defaultEnableGuardTimer
        default_guard_timer_seconds: defaultGuardTimerSeconds
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        default_play_ring_when_offer_call: defaultPlayRingWhenOfferCall
        uniform_call_distribution_policy_scope: uniformCallDistributionPolicyScope
        call_handling_sampling_period_minutes: callHandlingSamplingPeriodMinutes
        call_handling_minimum_sampling_size: callHandlingMinimumSamplingSize
        play_tone_to_agent_for_emergency_call: playToneToAgentForEmergencyCall
        emergency_call_clid_prefix: emergencyCallCLIDPrefix
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
        E(
            "statistics_sampling_period_minutes", "statisticsSamplingPeriodMinutes", int,
            is_required=True,
        ),
        E("default_enable_guard_timer", "defaultEnableGuardTimer", bool, is_required=True),
        E("default_guard_timer_seconds", "defaultGuardTimerSeconds", int, is_required=True),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool, is_required=True,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int, is_required=True,
        ),
        E(
            "default_play_ring_when_offer_call", "defaultPlayRingWhenOfferCall", bool,
            is_required=True,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope", str, is_required=True,
        ),
        E(
            "call_handling_sampling_period_minutes", "callHandlingSamplingPeriodMinutes",
            int, is_required=True,
        ),
        E(
            "call_handling_minimum_sampling_size", "callHandlingMinimumSamplingSize", int,
            is_required=True,
        ),
        E(
            "play_tone_to_agent_for_emergency_call", "playToneToAgentForEmergencyCall",
            bool, is_required=True,
        ),
        E("emergency_call_clid_prefix", "emergencyCallCLIDPrefix", str, is_required=True),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)
    statistics_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)
    default_enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    default_guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=True, mutable=False,
    )
    default_play_ring_when_offer_call: bool = Field(type=bool, required=True, mutable=False)
    uniform_call_distribution_policy_scope: str = Field(
        type=str, required=True, mutable=False,
    )
    call_handling_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)
    call_handling_minimum_sampling_size: int = Field(type=int, required=True, mutable=False)
    play_tone_to_agent_for_emergency_call: bool = Field(
        type=bool, required=True, mutable=False,
    )
    emergency_call_clid_prefix: str = Field(type=str, required=True, mutable=False)


class SystemCallCenterGetResponse17sp4(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest17sp4()``.

    Replaced by: ``SystemCallCenterGetResponse19()``.

    Attributes:
        default_from_address: defaultFromAddress
        statistics_sampling_period_minutes: statisticsSamplingPeriodMinutes
        default_enable_guard_timer: defaultEnableGuardTimer
        default_guard_timer_seconds: defaultGuardTimerSeconds
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        force_agent_unavailable_on_not_reachable: forceAgentUnavailableOnNotReachable
        default_play_ring_when_offer_call: defaultPlayRingWhenOfferCall
        uniform_call_distribution_policy_scope: uniformCallDistributionPolicyScope
        call_handling_sampling_period_minutes: callHandlingSamplingPeriodMinutes
        call_handling_minimum_sampling_size: callHandlingMinimumSamplingSize
        play_tone_to_agent_for_emergency_call: playToneToAgentForEmergencyCall
        emergency_call_clid_prefix: emergencyCallCLIDPrefix
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
        E(
            "statistics_sampling_period_minutes", "statisticsSamplingPeriodMinutes", int,
            is_required=True,
        ),
        E("default_enable_guard_timer", "defaultEnableGuardTimer", bool, is_required=True),
        E("default_guard_timer_seconds", "defaultGuardTimerSeconds", int, is_required=True),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool, is_required=True,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable", bool, is_required=True,
        ),
        E(
            "default_play_ring_when_offer_call", "defaultPlayRingWhenOfferCall", bool,
            is_required=True,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope", str, is_required=True,
        ),
        E(
            "call_handling_sampling_period_minutes", "callHandlingSamplingPeriodMinutes",
            int, is_required=True,
        ),
        E(
            "call_handling_minimum_sampling_size", "callHandlingMinimumSamplingSize", int,
            is_required=True,
        ),
        E(
            "play_tone_to_agent_for_emergency_call", "playToneToAgentForEmergencyCall",
            bool, is_required=True,
        ),
        E("emergency_call_clid_prefix", "emergencyCallCLIDPrefix", str, is_required=True),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)
    statistics_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)
    default_enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    default_guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=True, mutable=False,
    )
    force_agent_unavailable_on_not_reachable: bool = Field(
        type=bool, required=True, mutable=False,
    )
    default_play_ring_when_offer_call: bool = Field(type=bool, required=True, mutable=False)
    uniform_call_distribution_policy_scope: str = Field(
        type=str, required=True, mutable=False,
    )
    call_handling_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)
    call_handling_minimum_sampling_size: int = Field(type=int, required=True, mutable=False)
    play_tone_to_agent_for_emergency_call: bool = Field(
        type=bool, required=True, mutable=False,
    )
    emergency_call_clid_prefix: str = Field(type=str, required=True, mutable=False)


class SystemCallCenterGetResponse19(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest19()``.

    Replaced by ``SystemCallCenterGetRequest21()``.

    Attributes:
        default_from_address: defaultFromAddress
        statistics_sampling_period_minutes: statisticsSamplingPeriodMinutes
        default_enable_guard_timer: defaultEnableGuardTimer
        default_guard_timer_seconds: defaultGuardTimerSeconds
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        force_agent_unavailable_on_not_reachable: forceAgentUnavailableOnNotReachable
        default_play_ring_when_offer_call: defaultPlayRingWhenOfferCall
        uniform_call_distribution_policy_scope: uniformCallDistributionPolicyScope
        call_handling_sampling_period_minutes: callHandlingSamplingPeriodMinutes
        call_handling_minimum_sampling_size: callHandlingMinimumSamplingSize
        play_tone_to_agent_for_emergency_call: playToneToAgentForEmergencyCall
        emergency_call_clid_prefix: emergencyCallCLIDPrefix
        threshold_crossing_notification_email_guard_timer_seconds:
            thresholdCrossingNotificationEmailGuardTimerSeconds
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
        E(
            "statistics_sampling_period_minutes", "statisticsSamplingPeriodMinutes", int,
            is_required=True,
        ),
        E("default_enable_guard_timer", "defaultEnableGuardTimer", bool, is_required=True),
        E("default_guard_timer_seconds", "defaultGuardTimerSeconds", int, is_required=True),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool, is_required=True,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable", bool, is_required=True,
        ),
        E(
            "default_play_ring_when_offer_call", "defaultPlayRingWhenOfferCall", bool,
            is_required=True,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope", str, is_required=True,
        ),
        E(
            "call_handling_sampling_period_minutes", "callHandlingSamplingPeriodMinutes",
            int, is_required=True,
        ),
        E(
            "call_handling_minimum_sampling_size", "callHandlingMinimumSamplingSize", int,
            is_required=True,
        ),
        E(
            "play_tone_to_agent_for_emergency_call", "playToneToAgentForEmergencyCall",
            bool, is_required=True,
        ),
        E("emergency_call_clid_prefix", "emergencyCallCLIDPrefix", str, is_required=True),
        E(
            "threshold_crossing_notification_email_guard_timer_seconds",
            "thresholdCrossingNotificationEmailGuardTimerSeconds", int, is_required=True,
        ),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)
    statistics_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)
    default_enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    default_guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=True, mutable=False,
    )
    force_agent_unavailable_on_not_reachable: bool = Field(
        type=bool, required=True, mutable=False,
    )
    default_play_ring_when_offer_call: bool = Field(type=bool, required=True, mutable=False)
    uniform_call_distribution_policy_scope: str = Field(
        type=str, required=True, mutable=False,
    )
    call_handling_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)
    call_handling_minimum_sampling_size: int = Field(type=int, required=True, mutable=False)
    play_tone_to_agent_for_emergency_call: bool = Field(
        type=bool, required=True, mutable=False,
    )
    emergency_call_clid_prefix: str = Field(type=str, required=True, mutable=False)
    threshold_crossing_notification_email_guard_timer_seconds: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemCallCenterGetResponse21(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest21()``.


    Attributes:
        default_from_address: defaultFromAddress
        statistics_sampling_period_minutes: statisticsSamplingPeriodMinutes
        default_enable_guard_timer: defaultEnableGuardTimer
        default_guard_timer_seconds: defaultGuardTimerSeconds
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        force_agent_unavailable_on_not_reachable: forceAgentUnavailableOnNotReachable
        default_play_ring_when_offer_call: defaultPlayRingWhenOfferCall
        uniform_call_distribution_policy_scope: uniformCallDistributionPolicyScope
        call_handling_sampling_period_minutes: callHandlingSamplingPeriodMinutes
        call_handling_minimum_sampling_size: callHandlingMinimumSamplingSize
        play_tone_to_agent_for_emergency_call: playToneToAgentForEmergencyCall
        emergency_call_clid_prefix: emergencyCallCLIDPrefix
        threshold_crossing_notification_email_guard_timer_seconds:
            thresholdCrossingNotificationEmailGuardTimerSeconds
        allow_agent_device_initiated_forward: allowAgentDeviceInitiatedForward
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
        E(
            "statistics_sampling_period_minutes", "statisticsSamplingPeriodMinutes", int,
            is_required=True,
        ),
        E("default_enable_guard_timer", "defaultEnableGuardTimer", bool, is_required=True),
        E("default_guard_timer_seconds", "defaultGuardTimerSeconds", int, is_required=True),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool, is_required=True,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int, is_required=True,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable", bool, is_required=True,
        ),
        E(
            "default_play_ring_when_offer_call", "defaultPlayRingWhenOfferCall", bool,
            is_required=True,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope", str, is_required=True,
        ),
        E(
            "call_handling_sampling_period_minutes", "callHandlingSamplingPeriodMinutes",
            int, is_required=True,
        ),
        E(
            "call_handling_minimum_sampling_size", "callHandlingMinimumSamplingSize", int,
            is_required=True,
        ),
        E(
            "play_tone_to_agent_for_emergency_call", "playToneToAgentForEmergencyCall",
            bool, is_required=True,
        ),
        E("emergency_call_clid_prefix", "emergencyCallCLIDPrefix", str, is_required=True),
        E(
            "threshold_crossing_notification_email_guard_timer_seconds",
            "thresholdCrossingNotificationEmailGuardTimerSeconds", int, is_required=True,
        ),
        E(
            "allow_agent_device_initiated_forward", "allowAgentDeviceInitiatedForward",
            bool, is_required=True,
        ),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)
    statistics_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)
    default_enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    default_guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=True, mutable=False,
    )
    force_agent_unavailable_on_not_reachable: bool = Field(
        type=bool, required=True, mutable=False,
    )
    default_play_ring_when_offer_call: bool = Field(type=bool, required=True, mutable=False)
    uniform_call_distribution_policy_scope: str = Field(
        type=str, required=True, mutable=False,
    )
    call_handling_sampling_period_minutes: int = Field(type=int, required=True, mutable=False)
    call_handling_minimum_sampling_size: int = Field(type=int, required=True, mutable=False)
    play_tone_to_agent_for_emergency_call: bool = Field(
        type=bool, required=True, mutable=False,
    )
    emergency_call_clid_prefix: str = Field(type=str, required=True, mutable=False)
    threshold_crossing_notification_email_guard_timer_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    allow_agent_device_initiated_forward: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallCenterReportingServerGetListResponse(OCIResponse):
    """
    Response to ``SystemCallCenterReportingServerGetListRequest()``.

    The table columns are: "Name", "URL", "Net Address", and "Description".

    Attributes:
        reporting_server_table: reportingServerTable
    """

    _ELEMENTS = (
        E(
            "reporting_server_table", "reportingServerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    reporting_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallMeNowGetResponse(OCIResponse):
    """
    Response to ``SystemCallMeNowGetRequest()``.


    Attributes:
        passcode_length: passcodeLength
        passcode_timeout_seconds: passcodeTimeoutSeconds
    """

    _ELEMENTS = (
        E("passcode_length", "passcodeLength", int, is_required=True),
        E("passcode_timeout_seconds", "passcodeTimeoutSeconds", int, is_required=True),
    )

    passcode_length: int = Field(type=int, required=True, mutable=False)
    passcode_timeout_seconds: int = Field(type=int, required=True, mutable=False)


class SystemCallNotifyGetResponse(OCIResponse):
    """
    Response to ``SystemCallNotifyGetRequest()``.


    Attributes:
        default_from_address: defaultFromAddress
        use_short_subject_line: useShortSubjectLine
        use_dn_in_mail_body: useDnInMailBody
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
        E("use_short_subject_line", "useShortSubjectLine", bool, is_required=True),
        E("use_dn_in_mail_body", "useDnInMailBody", bool, is_required=True),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)
    use_short_subject_line: bool = Field(type=bool, required=True, mutable=False)
    use_dn_in_mail_body: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingGetPolicyResponse14(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest14()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)


class SystemCallProcessingGetPolicyResponse14sp1(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest14sp1()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemCallProcessingGetPolicyResponse14sp4(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest14sp4()``.

    Replaced By : ``SystemCallProcessingGetPolicyResponse15()``

    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_external_calls_via_private_dialing_plan:
            overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan", bool,
            is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_external_calls_via_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemCallProcessingGetPolicyResponse14sp7(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest14sp7()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_external_calls_via_private_dialing_plan:
            overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan", bool,
            is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_external_calls_via_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallProcessingGetPolicyResponse15(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest15()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemCallProcessingGetPolicyResponse15sp2(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest15sp2()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallProcessingGetPolicyResponse16(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest16()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallProcessingGetPolicyResponse16sp2(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest16sp2()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingGetPolicyResponse17(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest17()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallProcessingGetPolicyResponse17sp3(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest17sp3()``.

    The following elements are only used in AS data mode: enableDialableCallerID

    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingGetPolicyResponse17sp4(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest17sp4()``.

    The following elements are only used in AS data mode: enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity

    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallProcessingGetPolicyResponse18sp1(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest18sp1()``.

    The following elements are only used in AS data mode: enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity enterpriseCallsCLIDPolicy
    enterpriseGroupCallsCLIDPolicy serviceProviderGroupCallsCLIDPolicy Replaced by:
    ``SystemCallProcessingGetPolicyResponse19sp1()``

    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemCallProcessingGetPolicyResponse19sp1(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest19sp1()``.

    The following elements are only used in AS data mode: enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity enterpriseCallsCLIDPolicy
    enterpriseGroupCallsCLIDPolicy serviceProviderGroupCallsCLIDPolicy

    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        network_usage_selection: networkUsageSelection
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemCallProcessingPolicyProfileAutoAttendantProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileAutoAttendantProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileBroadWorksAnywhereProfileGetResponse(OCIResponse):
    """
    Response to
    ``SystemCallProcessingPolicyProfileBroadWorksAnywhereProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileCallCenterProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileCallCenterProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileCollaborateProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileCollaborateProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileFindMeFollowMeProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileFindMeFollowMeProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileFlexibleSeatingHostProfileGetResponse(OCIResponse):
    """
    Response to
    ``SystemCallProcessingPolicyProfileFlexibleSeatingHostProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=False, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallProcessingPolicyProfileGetAssignedNCOSListResponse(OCIResponse):
    """
    Response to the ``SystemCallProcessingPolicyProfileGetAssignedNCOSListRequest()``.

    The response contains a table of all Network Classes of Service that contain the
    specific CAllP Policy Profile.  The column headings are "Name" and "Description".

    Attributes:
        network_class_of_service_table: networkClassOfServiceTable
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table", "networkClassOfServiceTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    network_class_of_service_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallProcessingPolicyProfileGetListResponse(OCIResponse):
    """
    Response to the ``SystemCallProcessingPolicyProfileGetListRequest()``.

    The response contains a table of all Call Processing Policy Profiles in the system.
    The column headings are "Name" and "Description".

    Attributes:
        call_processing_policy_profiles_table: callProcessingPolicyProfilesTable
    """

    _ELEMENTS = (
        E(
            "call_processing_policy_profiles_table", "callProcessingPolicyProfilesTable",
            list, is_complex=True, is_required=True, is_table=True,
        ),
    )

    call_processing_policy_profiles_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class SystemCallProcessingPolicyProfileGetResponse(OCIResponse):
    """
    Response to a ``SystemCallProcessingPolicyProfileGetRequest()``.


    Attributes:
        description: description
        assigned_subscriber_type: assignedSubscriberType
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("assigned_subscriber_type", "assignedSubscriberType", str, is_array=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    assigned_subscriber_type: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemCallProcessingPolicyProfileGetResponse20(OCIResponse):
    """
    Response to a ``SystemCallProcessingPolicyProfileGetRequest20()``.


    Attributes:
        description: description
        assigned_subscriber_type: assignedSubscriberType
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("assigned_subscriber_type", "assignedSubscriberType", str, is_array=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    assigned_subscriber_type: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemCallProcessingPolicyProfileGetResponse21(OCIResponse):
    """
    Response to a ``SystemCallProcessingPolicyProfileGetRequest21()``.


    Attributes:
        description: description
        assigned_subscriber_type: assignedSubscriberType
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("assigned_subscriber_type", "assignedSubscriberType", str, is_array=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    assigned_subscriber_type: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemCallProcessingPolicyProfileGroupPagingProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileGroupPagingProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallProcessingPolicyProfileHuntGroupProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileHuntGroupProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileInstantGroupCallProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileInstantGroupCallProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallProcessingPolicyProfileMeetMeConferencingProfileGetResponse(OCIResponse):
    """
    Response to
    ``SystemCallProcessingPolicyProfileMeetMeConferencingProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileRoutePointProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileRoutePointProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileTrunkGroupPilotProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileTrunkGroupPilotProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_media_policy: useMediaPolicy
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_media_policy", "useMediaPolicy", bool, is_required=True),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_media_policy: bool = Field(type=bool, required=True, mutable=False)
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileUserProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileUserProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_media_policy: useMediaPolicy
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_media_policy", "useMediaPolicy", bool, is_required=True),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_media_policy: bool = Field(type=bool, required=True, mutable=False)
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallProcessingPolicyProfileVoicePortalProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileVoicePortalProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallProcessingPolicyProfileVoiceXMLProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileVoiceXMLProfileGetRequest()``.


    Attributes:
        use_clid_policy: useCLIDPolicy
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
        enterprise_calls_clid_policy: enterpriseCallsCLIDPolicy
        enterprise_group_calls_clid_policy: enterpriseGroupCallsCLIDPolicy
        service_provider_group_calls_clid_policy: serviceProviderGroupCallsCLIDPolicy
        use_call_limits_policy: useCallLimitsPolicy
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        max_redirection_depth: maxRedirectionDepth
        use_translation_routing_policy: useTranslationRoutingPolicy
        network_usage_selection: networkUsageSelection
        enable_enterprise_extension_dialing: enableEnterpriseExtensionDialing
        enforce_group_calling_line_identity_restriction:
            enforceGroupCallingLineIdentityRestriction
        enforce_enterprise_calling_line_identity_restriction:
            enforceEnterpriseCallingLineIdentityRestriction
        allow_enterprise_group_call_typing_for_private_dialing_plan:
            allowEnterpriseGroupCallTypingForPrivateDialingPlan
        allow_enterprise_group_call_typing_for_public_dialing_plan:
            allowEnterpriseGroupCallTypingForPublicDialingPlan
        override_clid_restriction_for_private_call_category:
            overrideCLIDRestrictionForPrivateCallCategory
        use_enterprise_clid_for_private_call_category:
            useEnterpriseCLIDForPrivateCallCategory
        use_incoming_clid_policy: useIncomingCLIDPolicy
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_clid_policy", "useCLIDPolicy", bool, is_required=True),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
        E("enterprise_calls_clid_policy", "enterpriseCallsCLIDPolicy", str, is_required=True),
        E(
            "enterprise_group_calls_clid_policy", "enterpriseGroupCallsCLIDPolicy", str,
            is_required=True,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy", str, is_required=True,
        ),
        E("use_call_limits_policy", "useCallLimitsPolicy", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_translation_routing_policy", "useTranslationRoutingPolicy", bool,
            is_required=True,
        ),
        E("network_usage_selection", "networkUsageSelection", str, is_required=True),
        E(
            "enable_enterprise_extension_dialing", "enableEnterpriseExtensionDialing",
            bool, is_required=True,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan", bool, is_required=True,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan", bool, is_required=True,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory", bool, is_required=True,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory", bool, is_required=True,
        ),
        E("use_incoming_clid_policy", "useIncomingCLIDPolicy", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)
    enterprise_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    enterprise_group_calls_clid_policy: str = Field(type=str, required=True, mutable=False)
    service_provider_group_calls_clid_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_call_limits_policy: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_translation_routing_policy: bool = Field(type=bool, required=True, mutable=False)
    network_usage_selection: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    enforce_group_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enforce_enterprise_calling_line_identity_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_private_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_enterprise_group_call_typing_for_public_dialing_plan: bool = Field(
        type=bool, required=True, mutable=False,
    )
    override_clid_restriction_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_enterprise_clid_for_private_call_category: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_incoming_clid_policy: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class SystemCallRecordingGetPlatformListResponse(OCIResponse):
    """
    Response to ``SystemCallRecordingGetPlatformListRequest()``.

    Contains the default system Call Recording platform and a table with columns headings
    "Name", "Net Address", "Port", "Transport Type", "Media Stream", "Description",
    "Schema Version", "Support Video Rec". The system default recording platform also
    appears in the table with the other platforms.  The possible values for "Support Video
    Rec" can be either true or false.  Schema version values include: 1.0, 2.0, 3.0

    Attributes:
        system_default: systemDefault
        call_recording_platform_table: callRecordingPlatformTable
    """

    _ELEMENTS = (
        E("system_default", "systemDefault", str),
        E(
            "call_recording_platform_table", "callRecordingPlatformTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    system_default: str = Field(type=str, required=False, mutable=False)
    call_recording_platform_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallRecordingGetPlatformUsageResponse(OCIResponse):
    """
    Response to ``SystemCallRecordingGetPlatformUsageRequest()``.

    The response contains a table with columns headings "Service Provider Id", "Group Id".

    Attributes:
        group_table: groupTable
    """

    _ELEMENTS = (
        E(
            "group_table", "groupTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    group_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallRecordingGetResponse(OCIResponse):
    """
    Response to ``SystemCallRecordingGetRequest()``.


    Attributes:
        continue_call_after_recording_failure: continueCallAfterRecordingFailure
        refresh_period_seconds: refreshPeriodSeconds
        max_consecutive_failures: maxConsecutiveFailures
        max_response_wait_time_milliseconds: maxResponseWaitTimeMilliseconds
        continue_call_after_video_recording_failure:
            continueCallAfterVideoRecordingFailure
    """

    _ELEMENTS = (
        E(
            "continue_call_after_recording_failure", "continueCallAfterRecordingFailure",
            bool, is_required=True,
        ),
        E("refresh_period_seconds", "refreshPeriodSeconds", int, is_required=True),
        E("max_consecutive_failures", "maxConsecutiveFailures", int, is_required=True),
        E(
            "max_response_wait_time_milliseconds", "maxResponseWaitTimeMilliseconds", int,
            is_required=True,
        ),
        E(
            "continue_call_after_video_recording_failure",
            "continueCallAfterVideoRecordingFailure", bool, is_required=True,
        ),
    )

    continue_call_after_recording_failure: bool = Field(
        type=bool, required=True, mutable=False,
    )
    refresh_period_seconds: int = Field(type=int, required=True, mutable=False)
    max_consecutive_failures: int = Field(type=int, required=True, mutable=False)
    max_response_wait_time_milliseconds: int = Field(type=int, required=True, mutable=False)
    continue_call_after_video_recording_failure: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallReturnGetResponse(OCIResponse):
    """
    Response to ``SystemCallReturnGetRequest()``.


    Attributes:
        two_level_activation: twoLevelActivation
        provide_date: provideDate
        last_unanswered_call_only: lastUnansweredCallOnly
        confirmation_key: confirmationKey
        allow_restricted_number: allowRestrictedNumber
        delete_number_after_answered_call_return: deleteNumberAfterAnsweredCallReturn
    """

    _ELEMENTS = (
        E("two_level_activation", "twoLevelActivation", bool, is_required=True),
        E("provide_date", "provideDate", bool, is_required=True),
        E("last_unanswered_call_only", "lastUnansweredCallOnly", bool, is_required=True),
        E("confirmation_key", "confirmationKey", str),
        E("allow_restricted_number", "allowRestrictedNumber", bool, is_required=True),
        E(
            "delete_number_after_answered_call_return",
            "deleteNumberAfterAnsweredCallReturn", bool, is_required=True,
        ),
    )

    two_level_activation: bool = Field(type=bool, required=True, mutable=False)
    provide_date: bool = Field(type=bool, required=True, mutable=False)
    last_unanswered_call_only: bool = Field(type=bool, required=True, mutable=False)
    confirmation_key: str = Field(type=str, required=False, mutable=False)
    allow_restricted_number: bool = Field(type=bool, required=True, mutable=False)
    delete_number_after_answered_call_return: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemCallTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemCallTypeGetListRequest()``.


    Attributes:
        call_type: callType
    """

    _ELEMENTS = (
        E("call_type", "callType", str, is_required=True),
    )

    call_type: str = Field(type=str, required=True, mutable=False)


class SystemCallTypeGetMappingListResponse(OCIResponse):
    """
    Response to ``SystemCallTypeGetMappingListRequest()``.

    The table columns are: "Country Code", "Digit Map" and "Call Type".

    Attributes:
        call_type_mapping: callTypeMapping
    """

    _ELEMENTS = (
        E(
            "call_type_mapping", "callTypeMapping", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    call_type_mapping: "list" = Field(type=list, required=True, mutable=False)


class SystemCallWaitingGetResponse(OCIResponse):
    """
    Response to ``SystemCallWaitingGetRequest()``.


    Attributes:
        play_distinctive_ringback: playDistinctiveRingback
    """

    _ELEMENTS = (
        E("play_distinctive_ringback", "playDistinctiveRingback", bool, is_required=True),
    )

    play_distinctive_ringback: bool = Field(type=bool, required=True, mutable=False)


class SystemCallingNameRetrievalGetResponse14(OCIResponse):
    """
    Response to ``SystemCallingNameRetrievalGetRequest14()``.


    Attributes:
        query_timer_milli_seconds: queryTimerMilliSeconds
        server_net_address: serverNetAddress
        server_port: serverPort
        server_transport_protocol: serverTransportProtocol
    """

    _ELEMENTS = (
        E("query_timer_milli_seconds", "queryTimerMilliSeconds", int, is_required=True),
        E("server_net_address", "serverNetAddress", str),
        E("server_port", "serverPort", int),
        E("server_transport_protocol", "serverTransportProtocol", str, is_required=True),
    )

    query_timer_milli_seconds: int = Field(type=int, required=True, mutable=False)
    server_net_address: str = Field(type=str, required=False, mutable=False)
    server_port: int = Field(type=int, required=False, mutable=False)
    server_transport_protocol: str = Field(type=str, required=True, mutable=False)


class SystemCallingNameRetrievalGetResponse16sp1(OCIResponse):
    """
    Response to ``SystemCallingNameRetrievalGetRequest16sp1()``.


    Attributes:
        trigger_cnam_queries_for_all_network_calls: triggerCNAMQueriesForAllNetworkCalls
        trigger_cnam_queries_for_group_and_enterprise_calls:
            triggerCNAMQueriesForGroupAndEnterpriseCalls
        query_protocol: queryProtocol
        query_timeout_milliseconds: queryTimeoutMilliseconds
        sip_external_database_net_address: sipExternalDatabaseNetAddress
        sip_external_database_port: sipExternalDatabasePort
        sip_external_database_transport: sipExternalDatabaseTransport
        soap_external_database_net_address: soapExternalDatabaseNetAddress
        soap_supports_dnssrv: soapSupportsDNSSRV
    """

    _ELEMENTS = (
        E(
            "trigger_cnam_queries_for_all_network_calls",
            "triggerCNAMQueriesForAllNetworkCalls", bool, is_required=True,
        ),
        E(
            "trigger_cnam_queries_for_group_and_enterprise_calls",
            "triggerCNAMQueriesForGroupAndEnterpriseCalls", bool, is_required=True,
        ),
        E("query_protocol", "queryProtocol", str, is_required=True),
        E("query_timeout_milliseconds", "queryTimeoutMilliseconds", int, is_required=True),
        E("sip_external_database_net_address", "sipExternalDatabaseNetAddress", str),
        E("sip_external_database_port", "sipExternalDatabasePort", int),
        E(
            "sip_external_database_transport", "sipExternalDatabaseTransport", str,
            is_required=True,
        ),
        E("soap_external_database_net_address", "soapExternalDatabaseNetAddress", str),
        E("soap_supports_dnssrv", "soapSupportsDNSSRV", bool, is_required=True),
    )

    trigger_cnam_queries_for_all_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    trigger_cnam_queries_for_group_and_enterprise_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    query_protocol: str = Field(type=str, required=True, mutable=False)
    query_timeout_milliseconds: int = Field(type=int, required=True, mutable=False)
    sip_external_database_net_address: str = Field(type=str, required=False, mutable=False)
    sip_external_database_port: int = Field(type=int, required=False, mutable=False)
    sip_external_database_transport: str = Field(type=str, required=True, mutable=False)
    soap_external_database_net_address: str = Field(type=str, required=False, mutable=False)
    soap_supports_dnssrv: bool = Field(type=bool, required=True, mutable=False)


class SystemCallingNameRetrievalGetResponse17sp4(OCIResponse):
    """
    Response to ``SystemCallingNameRetrievalGetRequest17sp4()``.


    Attributes:
        trigger_cnam_queries_for_all_network_calls: triggerCNAMQueriesForAllNetworkCalls
        trigger_cnam_queries_for_group_and_enterprise_calls:
            triggerCNAMQueriesForGroupAndEnterpriseCalls
        query_protocol: queryProtocol
        query_timeout_milliseconds: queryTimeoutMilliseconds
        sip_external_database_net_address: sipExternalDatabaseNetAddress
        sip_external_database_port: sipExternalDatabasePort
        sip_external_database_transport: sipExternalDatabaseTransport
        soap_external_database_net_address: soapExternalDatabaseNetAddress
        soap_supports_dnssrv: soapSupportsDNSSRV
        calling_name_source: callingNameSource
    """

    _ELEMENTS = (
        E(
            "trigger_cnam_queries_for_all_network_calls",
            "triggerCNAMQueriesForAllNetworkCalls", bool, is_required=True,
        ),
        E(
            "trigger_cnam_queries_for_group_and_enterprise_calls",
            "triggerCNAMQueriesForGroupAndEnterpriseCalls", bool, is_required=True,
        ),
        E("query_protocol", "queryProtocol", str, is_required=True),
        E("query_timeout_milliseconds", "queryTimeoutMilliseconds", int, is_required=True),
        E("sip_external_database_net_address", "sipExternalDatabaseNetAddress", str),
        E("sip_external_database_port", "sipExternalDatabasePort", int),
        E(
            "sip_external_database_transport", "sipExternalDatabaseTransport", str,
            is_required=True,
        ),
        E("soap_external_database_net_address", "soapExternalDatabaseNetAddress", str),
        E("soap_supports_dnssrv", "soapSupportsDNSSRV", bool, is_required=True),
        E("calling_name_source", "callingNameSource", str, is_required=True),
    )

    trigger_cnam_queries_for_all_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    trigger_cnam_queries_for_group_and_enterprise_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    query_protocol: str = Field(type=str, required=True, mutable=False)
    query_timeout_milliseconds: int = Field(type=int, required=True, mutable=False)
    sip_external_database_net_address: str = Field(type=str, required=False, mutable=False)
    sip_external_database_port: int = Field(type=int, required=False, mutable=False)
    sip_external_database_transport: str = Field(type=str, required=True, mutable=False)
    soap_external_database_net_address: str = Field(type=str, required=False, mutable=False)
    soap_supports_dnssrv: bool = Field(type=bool, required=True, mutable=False)
    calling_name_source: str = Field(type=str, required=True, mutable=False)


class SystemCallingNameRetrievalGetResponse20(OCIResponse):
    """
    Response to ``SystemCallingNameRetrievalGetRequest20()``.


    Attributes:
        trigger_cnam_queries_for_all_network_calls: triggerCNAMQueriesForAllNetworkCalls
        trigger_cnam_queries_for_group_and_enterprise_calls:
            triggerCNAMQueriesForGroupAndEnterpriseCalls
        query_protocol: queryProtocol
        query_timeout_milliseconds: queryTimeoutMilliseconds
        sip_external_database_net_address: sipExternalDatabaseNetAddress
        sip_external_database_port: sipExternalDatabasePort
        sip_external_database_transport: sipExternalDatabaseTransport
        soap_external_database_net_address: soapExternalDatabaseNetAddress
        calling_name_source: callingNameSource
        route_advance_timer: routeAdvanceTimer
        retry_failed_cnam_server_interval: retryFailedCNAMServerInterval
        ignore_restricted_presentation_indicator: ignoreRestrictedPresentationIndicator
        supports_dnssrv: supportsDNSSRV
    """

    _ELEMENTS = (
        E(
            "trigger_cnam_queries_for_all_network_calls",
            "triggerCNAMQueriesForAllNetworkCalls", bool, is_required=True,
        ),
        E(
            "trigger_cnam_queries_for_group_and_enterprise_calls",
            "triggerCNAMQueriesForGroupAndEnterpriseCalls", bool, is_required=True,
        ),
        E("query_protocol", "queryProtocol", str, is_required=True),
        E("query_timeout_milliseconds", "queryTimeoutMilliseconds", int, is_required=True),
        E("sip_external_database_net_address", "sipExternalDatabaseNetAddress", str),
        E("sip_external_database_port", "sipExternalDatabasePort", int),
        E(
            "sip_external_database_transport", "sipExternalDatabaseTransport", str,
            is_required=True,
        ),
        E("soap_external_database_net_address", "soapExternalDatabaseNetAddress", str),
        E("calling_name_source", "callingNameSource", str, is_required=True),
        E("route_advance_timer", "routeAdvanceTimer", int, is_required=True),
        E(
            "retry_failed_cnam_server_interval", "retryFailedCNAMServerInterval", int,
            is_required=True,
        ),
        E(
            "ignore_restricted_presentation_indicator",
            "ignoreRestrictedPresentationIndicator", bool, is_required=True,
        ),
        E("supports_dnssrv", "supportsDNSSRV", bool, is_required=True),
    )

    trigger_cnam_queries_for_all_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    trigger_cnam_queries_for_group_and_enterprise_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    query_protocol: str = Field(type=str, required=True, mutable=False)
    query_timeout_milliseconds: int = Field(type=int, required=True, mutable=False)
    sip_external_database_net_address: str = Field(type=str, required=False, mutable=False)
    sip_external_database_port: int = Field(type=int, required=False, mutable=False)
    sip_external_database_transport: str = Field(type=str, required=True, mutable=False)
    soap_external_database_net_address: str = Field(type=str, required=False, mutable=False)
    calling_name_source: str = Field(type=str, required=True, mutable=False)
    route_advance_timer: int = Field(type=int, required=True, mutable=False)
    retry_failed_cnam_server_interval: int = Field(type=int, required=True, mutable=False)
    ignore_restricted_presentation_indicator: bool = Field(
        type=bool, required=True, mutable=False,
    )
    supports_dnssrv: bool = Field(type=bool, required=True, mutable=False)


class SystemCallingPartyCategoryGetListResponse(OCIResponse):
    """
    Response to ``SystemCallingPartyCategoryGetListRequest()``.

    Contains a table of Calling Party Category defined in system.  The column headings
    are: "Category Name", "User Category", "Collect Call", "Default" and "Web Display
    Key".

    Attributes:
        calling_party_category_table: callingPartyCategoryTable
    """

    _ELEMENTS = (
        E(
            "calling_party_category_table", "callingPartyCategoryTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    calling_party_category_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCallingPartyCategoryGetResponse(OCIResponse):
    """
    Response to ``SystemCallingPartyCategoryGetRequest()``.

    Contains information of a Calling Party Category defined in system.

    Attributes:
        cpc_value: cpcValue
        isup_oli_value: isupOliValue
        gtd_oli_value: gtdOliValue
        user_category: userCategory
        pay_phone: payPhone
        operator: operator
        default: default
        collect_call: collectCall
        web_display_key: webDisplayKey
    """

    _ELEMENTS = (
        E("cpc_value", "cpcValue", str),
        E("isup_oli_value", "isupOliValue", int),
        E("gtd_oli_value", "gtdOliValue", str),
        E("user_category", "userCategory", bool, is_required=True),
        E("pay_phone", "payPhone", bool, is_required=True),
        E("operator", "operator", bool, is_required=True),
        E("default", "default", bool, is_required=True),
        E("collect_call", "collectCall", bool, is_required=True),
        E("web_display_key", "webDisplayKey", str),
    )

    cpc_value: str = Field(type=str, required=False, mutable=False)
    isup_oli_value: int = Field(type=int, required=False, mutable=False)
    gtd_oli_value: str = Field(type=str, required=False, mutable=False)
    user_category: bool = Field(type=bool, required=True, mutable=False)
    pay_phone: bool = Field(type=bool, required=True, mutable=False)
    operator: bool = Field(type=bool, required=True, mutable=False)
    default: bool = Field(type=bool, required=True, mutable=False)
    collect_call: bool = Field(type=bool, required=True, mutable=False)
    web_display_key: str = Field(type=str, required=False, mutable=False)


class SystemClassmarkGetListResponse(OCIResponse):
    """
    Response to ``SystemClassmarkGetListRequest()``.

    Contains a table of with the column headings: "Class Mark", "Value" and "Web Display
    Key".

    Attributes:
        classmark_table: classmarkTable
    """

    _ELEMENTS = (
        E(
            "classmark_table", "classmarkTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    classmark_table: "list" = Field(type=list, required=True, mutable=False)


class SystemClassmarkGetUtilizationListResponse(OCIResponse):
    """
    Response to ``SystemClassmarkGetUtilizationListRequest()``.

    Contains a table with the column headings: "User Id", "Group Id", "Service Provider
    Id", "Last Name", "First Name", and "Phone Number", "Extension", "Department", "Email
    Address".

    Attributes:
        classmark_user_table: classmarkUserTable
    """

    _ELEMENTS = (
        E(
            "classmark_user_table", "classmarkUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    classmark_user_table: "list" = Field(type=list, required=True, mutable=False)


class SystemClientSessionParametersGetResponse(OCIResponse):
    """
    Response to ``SystemClientSessionParametersGetRequest()``.

    Contains a list of system Client Session (web and CLI) parameters.

    Attributes:
        enable_inactivity_timeout: enableInactivityTimeout
        inactivity_timeout_minutes: inactivityTimeoutMinutes
    """

    _ELEMENTS = (
        E("enable_inactivity_timeout", "enableInactivityTimeout", bool, is_required=True),
        E("inactivity_timeout_minutes", "inactivityTimeoutMinutes", int, is_required=True),
    )

    enable_inactivity_timeout: bool = Field(type=bool, required=True, mutable=False)
    inactivity_timeout_minutes: int = Field(type=int, required=True, mutable=False)


class SystemCodecGetListResponse(OCIResponse):
    """
    Response to ``SystemCodecGetListRequest()``.


    Attributes:
        codec: codec
    """

    _ELEMENTS = (
        E("codec", "codec", str, is_array=True),
    )

    codec: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemCommunicationBarringAlternateCallIndicatorGetListResponse(OCIResponse):
    """
    Response to a ``SystemCommunicationBarringAlternateCallIndicatorGetListRequest()``.

    Contains a table with one row per Communication Barring Alternate Call Indicator.  The
    table column headings are: "Alternate Call Indicator" and "Network Server Alternate
    Call Indicator".

    Attributes:
        alternate_call_indicator_table: alternateCallIndicatorTable
    """

    _ELEMENTS = (
        E(
            "alternate_call_indicator_table", "alternateCallIndicatorTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    alternate_call_indicator_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringCallTypeGetListResponse(OCIResponse):
    """
    Response to a ``SystemCommunicationBarringCallTypeGetListRequest()``.

    Contains a table with one row per Communication Barring Call Type.  The table column
    headings are: "Call Type" and "Network Server Call Type".

    Attributes:
        call_type_table: callTypeTable
    """

    _ELEMENTS = (
        E(
            "call_type_table", "callTypeTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    call_type_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringCriteriaGetListResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringCriteriaGetListRequest()``.

    The response contains a table of all Communication Barring Criteria in the system.
    The column headings are "Name" and "Description".

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringCriteriaGetResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringCriteriaGetRequest()``.

    The response contains the Communication Barring Criteria information.  Replaced by:
    ``SystemCommunicationBarringCriteriaGetResponse17()``

    Attributes:
        description: description
        match_call_type: matchCallType
        match_alternate_call_indicator: matchAlternateCallIndicator
        match_public_network: matchPublicNetwork
        match_private_network: matchPrivateNetwork
        match_local_category: matchLocalCategory
        match_national_category: matchNationalCategory
        match_interlata_category: matchInterlataCategory
        match_intralata_category: matchIntralataCategory
        match_international_category: matchInternationalCategory
        match_private_category: matchPrivateCategory
        match_emergency_category: matchEmergencyCategory
        match_other_category: matchOtherCategory
        match_inter_network: matchInterNetwork
        match_inter_hosting_ne: matchInterHostingNE
        match_inter_as: matchInterAS
        match_intra_as: matchIntraAS
        match_charge_calls: matchChargeCalls
        match_no_charge_calls: matchNoChargeCalls
        match_group_calls: matchGroupCalls
        match_enterprise_calls: matchEnterpriseCalls
        match_network_calls: matchNetworkCalls
        match_network_url_calls: matchNetworkURLCalls
        match_repair_calls: matchRepairCalls
        match_emergency_calls: matchEmergencyCalls
        match_internal_calls: matchInternalCalls
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("match_call_type", "matchCallType", str, is_array=True),
        E(
            "match_alternate_call_indicator", "matchAlternateCallIndicator", str,
            is_array=True,
        ),
        E("match_public_network", "matchPublicNetwork", bool, is_required=True),
        E("match_private_network", "matchPrivateNetwork", bool, is_required=True),
        E("match_local_category", "matchLocalCategory", bool, is_required=True),
        E("match_national_category", "matchNationalCategory", bool, is_required=True),
        E("match_interlata_category", "matchInterlataCategory", bool, is_required=True),
        E("match_intralata_category", "matchIntralataCategory", bool, is_required=True),
        E(
            "match_international_category", "matchInternationalCategory", bool,
            is_required=True,
        ),
        E("match_private_category", "matchPrivateCategory", bool, is_required=True),
        E("match_emergency_category", "matchEmergencyCategory", bool, is_required=True),
        E("match_other_category", "matchOtherCategory", bool, is_required=True),
        E("match_inter_network", "matchInterNetwork", bool, is_required=True),
        E("match_inter_hosting_ne", "matchInterHostingNE", bool, is_required=True),
        E("match_inter_as", "matchInterAS", bool, is_required=True),
        E("match_intra_as", "matchIntraAS", bool, is_required=True),
        E("match_charge_calls", "matchChargeCalls", bool, is_required=True),
        E("match_no_charge_calls", "matchNoChargeCalls", bool, is_required=True),
        E("match_group_calls", "matchGroupCalls", bool, is_required=True),
        E("match_enterprise_calls", "matchEnterpriseCalls", bool, is_required=True),
        E("match_network_calls", "matchNetworkCalls", bool, is_required=True),
        E("match_network_url_calls", "matchNetworkURLCalls", bool, is_required=True),
        E("match_repair_calls", "matchRepairCalls", bool, is_required=True),
        E("match_emergency_calls", "matchEmergencyCalls", bool, is_required=True),
        E("match_internal_calls", "matchInternalCalls", bool, is_required=True),
        E("time_schedule", "timeSchedule", str),
        E("holiday_schedule", "holidaySchedule", str),
    )

    description: str = Field(type=str, required=False, mutable=False)
    match_call_type: "List[str]" = Field(type=list, required=False, mutable=False)
    match_alternate_call_indicator: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    match_public_network: bool = Field(type=bool, required=True, mutable=False)
    match_private_network: bool = Field(type=bool, required=True, mutable=False)
    match_local_category: bool = Field(type=bool, required=True, mutable=False)
    match_national_category: bool = Field(type=bool, required=True, mutable=False)
    match_interlata_category: bool = Field(type=bool, required=True, mutable=False)
    match_intralata_category: bool = Field(type=bool, required=True, mutable=False)
    match_international_category: bool = Field(type=bool, required=True, mutable=False)
    match_private_category: bool = Field(type=bool, required=True, mutable=False)
    match_emergency_category: bool = Field(type=bool, required=True, mutable=False)
    match_other_category: bool = Field(type=bool, required=True, mutable=False)
    match_inter_network: bool = Field(type=bool, required=True, mutable=False)
    match_inter_hosting_ne: bool = Field(type=bool, required=True, mutable=False)
    match_inter_as: bool = Field(type=bool, required=True, mutable=False)
    match_intra_as: bool = Field(type=bool, required=True, mutable=False)
    match_charge_calls: bool = Field(type=bool, required=True, mutable=False)
    match_no_charge_calls: bool = Field(type=bool, required=True, mutable=False)
    match_group_calls: bool = Field(type=bool, required=True, mutable=False)
    match_enterprise_calls: bool = Field(type=bool, required=True, mutable=False)
    match_network_calls: bool = Field(type=bool, required=True, mutable=False)
    match_network_url_calls: bool = Field(type=bool, required=True, mutable=False)
    match_repair_calls: bool = Field(type=bool, required=True, mutable=False)
    match_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    match_internal_calls: bool = Field(type=bool, required=True, mutable=False)
    time_schedule: str = Field(type=str, required=False, mutable=False)
    holiday_schedule: str = Field(type=str, required=False, mutable=False)


class SystemCommunicationBarringCriteriaGetResponse17(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringCriteriaGetRequest17()``.

    The response contains the Communication Barring Criteria information.

    Attributes:
        description: description
        match_call_type: matchCallType
        match_alternate_call_indicator: matchAlternateCallIndicator
        match_virtual_on_net_call_type: matchVirtualOnNetCallType
        match_public_network: matchPublicNetwork
        match_private_network: matchPrivateNetwork
        match_local_category: matchLocalCategory
        match_national_category: matchNationalCategory
        match_interlata_category: matchInterlataCategory
        match_intralata_category: matchIntralataCategory
        match_international_category: matchInternationalCategory
        match_private_category: matchPrivateCategory
        match_emergency_category: matchEmergencyCategory
        match_other_category: matchOtherCategory
        match_inter_network: matchInterNetwork
        match_inter_hosting_ne: matchInterHostingNE
        match_inter_as: matchInterAS
        match_intra_as: matchIntraAS
        match_charge_calls: matchChargeCalls
        match_no_charge_calls: matchNoChargeCalls
        match_group_calls: matchGroupCalls
        match_enterprise_calls: matchEnterpriseCalls
        match_network_calls: matchNetworkCalls
        match_network_url_calls: matchNetworkURLCalls
        match_repair_calls: matchRepairCalls
        match_emergency_calls: matchEmergencyCalls
        match_internal_calls: matchInternalCalls
        match_location: matchLocation
        match_roaming: matchRoaming
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("match_call_type", "matchCallType", str, is_array=True),
        E(
            "match_alternate_call_indicator", "matchAlternateCallIndicator", str,
            is_array=True,
        ),
        E("match_virtual_on_net_call_type", "matchVirtualOnNetCallType", str, is_array=True),
        E("match_public_network", "matchPublicNetwork", bool, is_required=True),
        E("match_private_network", "matchPrivateNetwork", bool, is_required=True),
        E("match_local_category", "matchLocalCategory", bool, is_required=True),
        E("match_national_category", "matchNationalCategory", bool, is_required=True),
        E("match_interlata_category", "matchInterlataCategory", bool, is_required=True),
        E("match_intralata_category", "matchIntralataCategory", bool, is_required=True),
        E(
            "match_international_category", "matchInternationalCategory", bool,
            is_required=True,
        ),
        E("match_private_category", "matchPrivateCategory", bool, is_required=True),
        E("match_emergency_category", "matchEmergencyCategory", bool, is_required=True),
        E("match_other_category", "matchOtherCategory", bool, is_required=True),
        E("match_inter_network", "matchInterNetwork", bool, is_required=True),
        E("match_inter_hosting_ne", "matchInterHostingNE", bool, is_required=True),
        E("match_inter_as", "matchInterAS", bool, is_required=True),
        E("match_intra_as", "matchIntraAS", bool, is_required=True),
        E("match_charge_calls", "matchChargeCalls", bool, is_required=True),
        E("match_no_charge_calls", "matchNoChargeCalls", bool, is_required=True),
        E("match_group_calls", "matchGroupCalls", bool, is_required=True),
        E("match_enterprise_calls", "matchEnterpriseCalls", bool, is_required=True),
        E("match_network_calls", "matchNetworkCalls", bool, is_required=True),
        E("match_network_url_calls", "matchNetworkURLCalls", bool, is_required=True),
        E("match_repair_calls", "matchRepairCalls", bool, is_required=True),
        E("match_emergency_calls", "matchEmergencyCalls", bool, is_required=True),
        E("match_internal_calls", "matchInternalCalls", bool, is_required=True),
        E("match_location", "matchLocation", str, is_required=True),
        E("match_roaming", "matchRoaming", str, is_required=True),
        E("time_schedule", "timeSchedule", str),
        E("holiday_schedule", "holidaySchedule", str),
    )

    description: str = Field(type=str, required=False, mutable=False)
    match_call_type: "List[str]" = Field(type=list, required=False, mutable=False)
    match_alternate_call_indicator: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    match_virtual_on_net_call_type: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    match_public_network: bool = Field(type=bool, required=True, mutable=False)
    match_private_network: bool = Field(type=bool, required=True, mutable=False)
    match_local_category: bool = Field(type=bool, required=True, mutable=False)
    match_national_category: bool = Field(type=bool, required=True, mutable=False)
    match_interlata_category: bool = Field(type=bool, required=True, mutable=False)
    match_intralata_category: bool = Field(type=bool, required=True, mutable=False)
    match_international_category: bool = Field(type=bool, required=True, mutable=False)
    match_private_category: bool = Field(type=bool, required=True, mutable=False)
    match_emergency_category: bool = Field(type=bool, required=True, mutable=False)
    match_other_category: bool = Field(type=bool, required=True, mutable=False)
    match_inter_network: bool = Field(type=bool, required=True, mutable=False)
    match_inter_hosting_ne: bool = Field(type=bool, required=True, mutable=False)
    match_inter_as: bool = Field(type=bool, required=True, mutable=False)
    match_intra_as: bool = Field(type=bool, required=True, mutable=False)
    match_charge_calls: bool = Field(type=bool, required=True, mutable=False)
    match_no_charge_calls: bool = Field(type=bool, required=True, mutable=False)
    match_group_calls: bool = Field(type=bool, required=True, mutable=False)
    match_enterprise_calls: bool = Field(type=bool, required=True, mutable=False)
    match_network_calls: bool = Field(type=bool, required=True, mutable=False)
    match_network_url_calls: bool = Field(type=bool, required=True, mutable=False)
    match_repair_calls: bool = Field(type=bool, required=True, mutable=False)
    match_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    match_internal_calls: bool = Field(type=bool, required=True, mutable=False)
    match_location: str = Field(type=str, required=True, mutable=False)
    match_roaming: str = Field(type=str, required=True, mutable=False)
    time_schedule: str = Field(type=str, required=False, mutable=False)
    holiday_schedule: str = Field(type=str, required=False, mutable=False)


class SystemCommunicationBarringCriteriaGetResponse19sp1(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringCriteriaGetRequest19sp1()``.

    The response contains the Communication Barring Criteria information.

    Attributes:
        description: description
        match_call_type: matchCallType
        match_alternate_call_indicator: matchAlternateCallIndicator
        match_virtual_on_net_call_type: matchVirtualOnNetCallType
        match_public_network: matchPublicNetwork
        match_private_network: matchPrivateNetwork
        match_local_category: matchLocalCategory
        match_national_category: matchNationalCategory
        match_interlata_category: matchInterlataCategory
        match_intralata_category: matchIntralataCategory
        match_international_category: matchInternationalCategory
        match_private_category: matchPrivateCategory
        match_emergency_category: matchEmergencyCategory
        match_other_category: matchOtherCategory
        match_inter_network: matchInterNetwork
        match_inter_hosting_ne: matchInterHostingNE
        match_inter_as: matchInterAS
        match_intra_as: matchIntraAS
        match_charge_calls: matchChargeCalls
        match_no_charge_calls: matchNoChargeCalls
        match_group_calls: matchGroupCalls
        match_enterprise_calls: matchEnterpriseCalls
        match_network_calls: matchNetworkCalls
        match_network_url_calls: matchNetworkURLCalls
        match_repair_calls: matchRepairCalls
        match_emergency_calls: matchEmergencyCalls
        match_internal_calls: matchInternalCalls
        match_location: matchLocation
        match_roaming: matchRoaming
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        match_number_portability_status: matchNumberPortabilityStatus
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("match_call_type", "matchCallType", str, is_array=True),
        E(
            "match_alternate_call_indicator", "matchAlternateCallIndicator", str,
            is_array=True,
        ),
        E("match_virtual_on_net_call_type", "matchVirtualOnNetCallType", str, is_array=True),
        E("match_public_network", "matchPublicNetwork", bool, is_required=True),
        E("match_private_network", "matchPrivateNetwork", bool, is_required=True),
        E("match_local_category", "matchLocalCategory", bool, is_required=True),
        E("match_national_category", "matchNationalCategory", bool, is_required=True),
        E("match_interlata_category", "matchInterlataCategory", bool, is_required=True),
        E("match_intralata_category", "matchIntralataCategory", bool, is_required=True),
        E(
            "match_international_category", "matchInternationalCategory", bool,
            is_required=True,
        ),
        E("match_private_category", "matchPrivateCategory", bool, is_required=True),
        E("match_emergency_category", "matchEmergencyCategory", bool, is_required=True),
        E("match_other_category", "matchOtherCategory", bool, is_required=True),
        E("match_inter_network", "matchInterNetwork", bool, is_required=True),
        E("match_inter_hosting_ne", "matchInterHostingNE", bool, is_required=True),
        E("match_inter_as", "matchInterAS", bool, is_required=True),
        E("match_intra_as", "matchIntraAS", bool, is_required=True),
        E("match_charge_calls", "matchChargeCalls", bool, is_required=True),
        E("match_no_charge_calls", "matchNoChargeCalls", bool, is_required=True),
        E("match_group_calls", "matchGroupCalls", bool, is_required=True),
        E("match_enterprise_calls", "matchEnterpriseCalls", bool, is_required=True),
        E("match_network_calls", "matchNetworkCalls", bool, is_required=True),
        E("match_network_url_calls", "matchNetworkURLCalls", bool, is_required=True),
        E("match_repair_calls", "matchRepairCalls", bool, is_required=True),
        E("match_emergency_calls", "matchEmergencyCalls", bool, is_required=True),
        E("match_internal_calls", "matchInternalCalls", bool, is_required=True),
        E("match_location", "matchLocation", str, is_required=True),
        E("match_roaming", "matchRoaming", str, is_required=True),
        E("time_schedule", "timeSchedule", str),
        E("holiday_schedule", "holidaySchedule", str),
        E(
            "match_number_portability_status", "matchNumberPortabilityStatus", str,
            is_array=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    match_call_type: "List[str]" = Field(type=list, required=False, mutable=False)
    match_alternate_call_indicator: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    match_virtual_on_net_call_type: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    match_public_network: bool = Field(type=bool, required=True, mutable=False)
    match_private_network: bool = Field(type=bool, required=True, mutable=False)
    match_local_category: bool = Field(type=bool, required=True, mutable=False)
    match_national_category: bool = Field(type=bool, required=True, mutable=False)
    match_interlata_category: bool = Field(type=bool, required=True, mutable=False)
    match_intralata_category: bool = Field(type=bool, required=True, mutable=False)
    match_international_category: bool = Field(type=bool, required=True, mutable=False)
    match_private_category: bool = Field(type=bool, required=True, mutable=False)
    match_emergency_category: bool = Field(type=bool, required=True, mutable=False)
    match_other_category: bool = Field(type=bool, required=True, mutable=False)
    match_inter_network: bool = Field(type=bool, required=True, mutable=False)
    match_inter_hosting_ne: bool = Field(type=bool, required=True, mutable=False)
    match_inter_as: bool = Field(type=bool, required=True, mutable=False)
    match_intra_as: bool = Field(type=bool, required=True, mutable=False)
    match_charge_calls: bool = Field(type=bool, required=True, mutable=False)
    match_no_charge_calls: bool = Field(type=bool, required=True, mutable=False)
    match_group_calls: bool = Field(type=bool, required=True, mutable=False)
    match_enterprise_calls: bool = Field(type=bool, required=True, mutable=False)
    match_network_calls: bool = Field(type=bool, required=True, mutable=False)
    match_network_url_calls: bool = Field(type=bool, required=True, mutable=False)
    match_repair_calls: bool = Field(type=bool, required=True, mutable=False)
    match_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    match_internal_calls: bool = Field(type=bool, required=True, mutable=False)
    match_location: str = Field(type=str, required=True, mutable=False)
    match_roaming: str = Field(type=str, required=True, mutable=False)
    time_schedule: str = Field(type=str, required=False, mutable=False)
    holiday_schedule: str = Field(type=str, required=False, mutable=False)
    match_number_portability_status: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemCommunicationBarringDigitPatternCriteriaGetListResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringDigitPatternCriteriaGetListRequest()``.

    The response contains a table of all Digit Pattern Criteria defined at the system
    level.  The column headings are "Name" and "Description"

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringDigitPatternCriteriaGetPatternListResponse(OCIResponse):
    """
    Response to the
    ``SystemCommunicationBarringDigitPatternCriteriaGetPatternListRequest()``.

    The response contains the Digit Pattern Criteria information.

    Attributes:
        match_digit_pattern: matchDigitPattern
    """

    _ELEMENTS = (
        E("match_digit_pattern", "matchDigitPattern", str, is_array=True),
    )

    match_digit_pattern: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemCommunicationBarringDigitPatternCriteriaGetResponse(OCIResponse):
    """
    The response to a ``SystemCommunicationBarringDigitPatternCriteriaGetRequest()``.


    Attributes:
        description: description
        digit_pattern: digitPattern
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("digit_pattern", "digitPattern", str, is_array=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    digit_pattern: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemCommunicationBarringGetResponse(OCIResponse):
    """
    Response to ``SystemCommunicationBarringGetRequest()``.


    Attributes:
        direct_transfer_screening: directTransferScreening
    """

    _ELEMENTS = (
        E("direct_transfer_screening", "directTransferScreening", bool, is_required=True),
    )

    direct_transfer_screening: bool = Field(type=bool, required=True, mutable=False)


class SystemCommunicationBarringIncomingCriteriaGetListResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringIncomingCriteriaGetListRequest()``.

    The response contains a table of all Communication Barring Incoming Criteria in the
    system.  The column headings are "Name" and "Description".

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringIncomingCriteriaGetResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringIncomingCriteriaGetRequest()``.

    The response contains the Communication Barring Incoming Criteria information.

    Attributes:
        description: description
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        match_number_portability_status: matchNumberPortabilityStatus
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("time_schedule", "timeSchedule", str),
        E("holiday_schedule", "holidaySchedule", str),
        E(
            "match_number_portability_status", "matchNumberPortabilityStatus", str,
            is_array=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    time_schedule: str = Field(type=str, required=False, mutable=False)
    holiday_schedule: str = Field(type=str, required=False, mutable=False)
    match_number_portability_status: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemCommunicationBarringProfileGetCriteriaUsageListResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringProfileGetCriteriaUsageListRequest()``.

    The response contains a table of system Communication Barring Profiles that use the
    specific Communication Barring Criteria.  The column headings are "Name" and
    "Description"

    Attributes:
        profile_table: profileTable
    """

    _ELEMENTS = (
        E(
            "profile_table", "profileTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringProfileGetDigitPatternCriteriaUsageListResponse(OCIResponse):
    """
    Response to the
    ``SystemCommunicationBarringProfileGetDigitPatternCriteriaUsageListRequest()``.

    The response contains a table of all Profiles that use the specific Digit Pattern
    Criteria.  The column headings are "Name" and "Description"

    Attributes:
        profile_table: profileTable
    """

    _ELEMENTS = (
        E(
            "profile_table", "profileTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringProfileGetIncomingCriteriaUsageListResponse(OCIResponse):
    """
    Response to the
    ``SystemCommunicationBarringProfileGetIncomingCriteriaUsageListRequest()``.

    The response contains a table of system Communication Barring Profiles that use the
    specific Communication Barring Incoming Criteria.  The column headings are "Name" and
    "Description"

    Attributes:
        profile_table: profileTable
    """

    _ELEMENTS = (
        E(
            "profile_table", "profileTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringProfileGetListResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringProfileGetListRequest()``.

    The response contains a table of all Communication Barring Profiles in the system.
    The column headings are "Name" and "Description"

    Attributes:
        profile_table: profileTable
    """

    _ELEMENTS = (
        E(
            "profile_table", "profileTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    profile_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringServiceProviderGetCriteriaUsageListResponse(OCIResponse):
    """
    Response to the
    ``SystemCommunicationBarringServiceProviderGetCriteriaUsageListRequest()``.

    The response contains a table of all Service Providers that use the specific
    Communication Barring criteria.  The column headings are "Service Provider Id",
    "Service Provider Name" and "Is Enterprise"

    Attributes:
        service_provider_table: serviceProviderTable
    """

    _ELEMENTS = (
        E(
            "service_provider_table", "serviceProviderTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_provider_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringServiceProviderGetIncomingCriteriaUsageListResponse(OCIResponse):
    """
    Response to the
    ``SystemCommunicationBarringServiceProviderGetIncomingCriteriaUsageListRequest()``.

    The response contains a table of all Service Providers that use the specific
    Communication Barring Incoming criteria.  The column headings are "Service Provider
    Id", "Service Provider Name" and "Is Enterprise"

    Attributes:
        service_provider_table: serviceProviderTable
    """

    _ELEMENTS = (
        E(
            "service_provider_table", "serviceProviderTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_provider_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCommunicationBarringUserControlGetResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringUserControlGetRequest()``.

    Contains the settings to whole system for Communication Barring User-Control

    Attributes:
        enable_lockout: enableLockout
        max_number_of_failed_attempts: maxNumberOfFailedAttempts
        lockout_minutes: lockoutMinutes
    """

    _ELEMENTS = (
        E("enable_lockout", "enableLockout", bool, is_required=True),
        E(
            "max_number_of_failed_attempts", "maxNumberOfFailedAttempts", int,
            is_required=True,
        ),
        E("lockout_minutes", "lockoutMinutes", int, is_required=True),
    )

    enable_lockout: bool = Field(type=bool, required=True, mutable=False)
    max_number_of_failed_attempts: int = Field(type=int, required=True, mutable=False)
    lockout_minutes: int = Field(type=int, required=True, mutable=False)


class SystemConfigurableFileSystemGetResponse(OCIResponse):
    """
    Response to ``SystemConfigurableFileSystemGetRequest()``.

    Contains the File System parameters.

    Attributes:
        media_directory: mediaDirectory
        protocol_file: protocolFile
        protocol_web_dav: protocolWebDAV
    """

    _ELEMENTS = (
        E("media_directory", "mediaDirectory", str, is_required=True),
        E("protocol_file", "protocolFile", str, is_complex=True),  # unknown
        E("protocol_web_dav", "protocolWebDAV", str, is_complex=True),  # unknown
    )

    media_directory: str = Field(type=str, required=True, mutable=False)
    protocol_file: str = Field(type=str, required=False, mutable=False)
    protocol_web_dav: str = Field(type=str, required=False, mutable=False)


class SystemConfigurableTreatmentGetListResponse(OCIResponse):
    """
    Response to a ``SystemConfigurableTreatmentGetListRequest()``.

    Contains a table with one row per treatment.  The table columns are: "Treatment Id",
    "Description".

    Attributes:
        treatment_table: treatmentTable
    """

    _ELEMENTS = (
        E(
            "treatment_table", "treatmentTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    treatment_table: "list" = Field(type=list, required=True, mutable=False)


class SystemConfigurableTreatmentGetResponse(OCIResponse):
    """
    Response to the ``SystemConfigurableTreatmentGetRequest()``.

    The response contains the treatment configurable information.

    Replaced By: ``SystemConfigurableTreatmentGetResponse16()``

    Attributes:
        description: description
        charge_indicator: chargeIndicator
        access_sip_status_code: accessSIPStatusCode
        access_sip_status_message: accessSIPStatusMessage
        network_sip_status_code: networkSIPStatusCode
        network_sip_status_message: networkSIPStatusMessage
        q850_cause_value: q850CauseValue
        q850_text: q850Text
        access_treatment_audio_file: accessTreatmentAudioFile
        access_treatment_video_file: accessTreatmentVideoFile
        network_treatment_audio_file: networkTreatmentAudioFile
        network_treatment_video_file: networkTreatmentVideoFile
        cdr_termination_cause: cdrTerminationCause
        route_advance: routeAdvance
        internal_release_cause: internalReleaseCause
        access_send_reason_header: accessSendReasonHeader
        network_send_reason_header: networkSendReasonHeader
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("charge_indicator", "chargeIndicator", str, is_required=True),
        E("access_sip_status_code", "accessSIPStatusCode", int),
        E("access_sip_status_message", "accessSIPStatusMessage", str),
        E("network_sip_status_code", "networkSIPStatusCode", int),
        E("network_sip_status_message", "networkSIPStatusMessage", str),
        E("q850_cause_value", "q850CauseValue", int),
        E("q850_text", "q850Text", str),
        E("access_treatment_audio_file", "accessTreatmentAudioFile", str),
        E("access_treatment_video_file", "accessTreatmentVideoFile", str),
        E("network_treatment_audio_file", "networkTreatmentAudioFile", str),
        E("network_treatment_video_file", "networkTreatmentVideoFile", str),
        E("cdr_termination_cause", "cdrTerminationCause", str),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("internal_release_cause", "internalReleaseCause", str),
        E("access_send_reason_header", "accessSendReasonHeader", bool, is_required=True),
        E("network_send_reason_header", "networkSendReasonHeader", bool, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    charge_indicator: str = Field(type=str, required=True, mutable=False)
    access_sip_status_code: int = Field(type=int, required=False, mutable=False)
    access_sip_status_message: str = Field(type=str, required=False, mutable=False)
    network_sip_status_code: int = Field(type=int, required=False, mutable=False)
    network_sip_status_message: str = Field(type=str, required=False, mutable=False)
    q850_cause_value: int = Field(type=int, required=False, mutable=False)
    q850_text: str = Field(type=str, required=False, mutable=False)
    access_treatment_audio_file: str = Field(type=str, required=False, mutable=False)
    access_treatment_video_file: str = Field(type=str, required=False, mutable=False)
    network_treatment_audio_file: str = Field(type=str, required=False, mutable=False)
    network_treatment_video_file: str = Field(type=str, required=False, mutable=False)
    cdr_termination_cause: str = Field(type=str, required=False, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    internal_release_cause: str = Field(type=str, required=False, mutable=False)
    access_send_reason_header: bool = Field(type=bool, required=True, mutable=False)
    network_send_reason_header: bool = Field(type=bool, required=True, mutable=False)


class SystemConfigurableTreatmentGetResponse16(OCIResponse):
    """
    Response to the ``SystemConfigurableTreatmentGetRequest16()``.

    The response contains the treatment configurable information.

    Attributes:
        description: description
        charge_indicator: chargeIndicator
        access_sip_status_code: accessSIPStatusCode
        access_sip_status_message: accessSIPStatusMessage
        network_sip_status_code: networkSIPStatusCode
        network_sip_status_message: networkSIPStatusMessage
        q850_cause_value: q850CauseValue
        q850_text: q850Text
        access_treatment_audio_file: accessTreatmentAudioFile
        access_treatment_video_file: accessTreatmentVideoFile
        network_treatment_audio_file: networkTreatmentAudioFile
        network_treatment_video_file: networkTreatmentVideoFile
        cdr_termination_cause: cdrTerminationCause
        route_advance: routeAdvance
        internal_release_cause: internalReleaseCause
        access_send_reason_header: accessSendReasonHeader
        network_send_reason_header: networkSendReasonHeader
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("charge_indicator", "chargeIndicator", str, is_required=True),
        E("access_sip_status_code", "accessSIPStatusCode", int),
        E("access_sip_status_message", "accessSIPStatusMessage", str),
        E("network_sip_status_code", "networkSIPStatusCode", int),
        E("network_sip_status_message", "networkSIPStatusMessage", str),
        E("q850_cause_value", "q850CauseValue", int),
        E("q850_text", "q850Text", str),
        E("access_treatment_audio_file", "accessTreatmentAudioFile", str),
        E("access_treatment_video_file", "accessTreatmentVideoFile", str),
        E("network_treatment_audio_file", "networkTreatmentAudioFile", str),
        E("network_treatment_video_file", "networkTreatmentVideoFile", str),
        E("cdr_termination_cause", "cdrTerminationCause", str),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("internal_release_cause", "internalReleaseCause", str),
        E("access_send_reason_header", "accessSendReasonHeader", bool, is_required=True),
        E("network_send_reason_header", "networkSendReasonHeader", bool, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    charge_indicator: str = Field(type=str, required=True, mutable=False)
    access_sip_status_code: int = Field(type=int, required=False, mutable=False)
    access_sip_status_message: str = Field(type=str, required=False, mutable=False)
    network_sip_status_code: int = Field(type=int, required=False, mutable=False)
    network_sip_status_message: str = Field(type=str, required=False, mutable=False)
    q850_cause_value: int = Field(type=int, required=False, mutable=False)
    q850_text: str = Field(type=str, required=False, mutable=False)
    access_treatment_audio_file: str = Field(type=str, required=False, mutable=False)
    access_treatment_video_file: str = Field(type=str, required=False, mutable=False)
    network_treatment_audio_file: str = Field(type=str, required=False, mutable=False)
    network_treatment_video_file: str = Field(type=str, required=False, mutable=False)
    cdr_termination_cause: str = Field(type=str, required=False, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    internal_release_cause: str = Field(type=str, required=False, mutable=False)
    access_send_reason_header: bool = Field(type=bool, required=True, mutable=False)
    network_send_reason_header: bool = Field(type=bool, required=True, mutable=False)


class SystemConnectedLineIdentificationPresentationGetResponse(OCIResponse):
    """
    Response to ``SystemConnectedLineIdentificationPresentationGetRequest()``.


    Attributes:
        enforce_user_service_assignment: enforceUserServiceAssignment
    """

    _ELEMENTS = (
        E(
            "enforce_user_service_assignment", "enforceUserServiceAssignment", bool,
            is_required=True,
        ),
    )

    enforce_user_service_assignment: bool = Field(type=bool, required=True, mutable=False)


class SystemCountryCodeGetListResponse(OCIResponse):
    """
    Response to a ``SystemCountryCodeGetListRequest()``.

    Contains the default country code and a table with one row per country code.  The
    table columns are "Country Code", "Country Name", "Off Hook Warning Seconds", "Ring
    Period Milliseconds", "National Prefix", "Use Prefix", "Maximum Call Waiting Tones",
    "Time Between Call Waiting Tones Milliseconds" and "Disable National Prefix for OffNet
    Calls".

    Attributes:
        default_country_code: defaultCountryCode
        country_code_table: countryCodeTable
    """

    _ELEMENTS = (
        E("default_country_code", "defaultCountryCode", str, is_required=True),
        E(
            "country_code_table", "countryCodeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    default_country_code: str = Field(type=str, required=True, mutable=False)
    country_code_table: "list" = Field(type=list, required=True, mutable=False)


class SystemCrInterfaceGetResponse(OCIResponse):
    """
    Response to the ``SystemCrInterfaceGetRequest()``.


    Attributes:
        cr_audit_enabled: crAuditEnabled
        cr_audit_interval_milliseconds: crAuditIntervalMilliseconds
        cr_audit_timeout_milliseconds: crAuditTimeoutMilliseconds
        cr_connection_enabled: crConnectionEnabled
        cr_connection_timeout_milliseconds: crConnectionTimeoutMilliseconds
    """

    _ELEMENTS = (
        E("cr_audit_enabled", "crAuditEnabled", bool, is_required=True),
        E(
            "cr_audit_interval_milliseconds", "crAuditIntervalMilliseconds", int,
            is_required=True,
        ),
        E(
            "cr_audit_timeout_milliseconds", "crAuditTimeoutMilliseconds", int,
            is_required=True,
        ),
        E("cr_connection_enabled", "crConnectionEnabled", bool, is_required=True),
        E(
            "cr_connection_timeout_milliseconds", "crConnectionTimeoutMilliseconds", int,
            is_required=True,
        ),
    )

    cr_audit_enabled: bool = Field(type=bool, required=True, mutable=False)
    cr_audit_interval_milliseconds: int = Field(type=int, required=True, mutable=False)
    cr_audit_timeout_milliseconds: int = Field(type=int, required=True, mutable=False)
    cr_connection_enabled: bool = Field(type=bool, required=True, mutable=False)
    cr_connection_timeout_milliseconds: int = Field(type=int, required=True, mutable=False)


class SystemCustomerOriginatedTraceGetResponse(OCIResponse):
    """
    Response to ``SystemCustomerOriginatedTraceGetRequest()``.


    Attributes:
        screen_malicious_callers: screenMaliciousCallers
    """

    _ELEMENTS = (
        E("screen_malicious_callers", "screenMaliciousCallers", bool, is_required=True),
    )

    screen_malicious_callers: bool = Field(type=bool, required=True, mutable=False)


class SystemDTMFTransmissionGetResponse(OCIResponse):
    """
    Response to the ``SystemDTMFTransmissionGetRequest()``.


    Attributes:
        transmission_method: transmissionMethod
        signaling_content_type: signalingContentType
    """

    _ELEMENTS = (
        E("transmission_method", "transmissionMethod", str, is_required=True),
        E("signaling_content_type", "signalingContentType", str),
    )

    transmission_method: str = Field(type=str, required=True, mutable=False)
    signaling_content_type: str = Field(type=str, required=False, mutable=False)


class SystemDeviceManagementAutoRebuildConfigGetListResponse(OCIResponse):
    """
    Response to ``SystemDeviceManagementAutoRebuildConfigGetListRequest()``.

    Contains a table with column headings: "OCI Request Prefix", "Auto Rebuild Enabled".
    "OCI Request Prefix" is the prefix of the OCI request name.  It does not include the
    request's version '17.sp4, 18...' since the disabled flag applies to the whole series
    of requests, independent of the version.  "Auto Rebuild Enabled": 'True' if the
    request prefix triggers DM events automatically.  Otherwise, automatic DM events are
    not generated.

    Attributes:
        auto_rebuild_config_table: autoRebuildConfigTable
    """

    _ELEMENTS = (
        E(
            "auto_rebuild_config_table", "autoRebuildConfigTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    auto_rebuild_config_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDeviceManagementEventGetListResponse(OCIResponse):
    """
    Response to ``SystemDeviceManagementEventGetListRequest()``.

    Contains a table with column headings: "Event Id", "Status", "Action", "Level",
    "Type", "Additional Info", "Is Local", "Completion %", "Pushed/ Same Hash/ Not
    Pushed", "Login Id", "Start Time", "Process Time". "Event Id" is a unique identifer
    for the event.  "Status" can be: Pending, Queued, In Progress, Process On Other Host,
    Stale, Completed, Canceled.  "Action" can be: Delete, Download, Rebuild, Reset,
    Upload.  "Level" can be: Device, Device Type, Device Type Group, Group, User.  "Type"
    can be: Automatic, Manual.  "Additional Info" includes the affected device type,
    device or group.  It depends on the level of the event: Device Profile: "Device Name"
    "Service Provider Id" "Group Id" Device Type: "Device Type Name" Device Type Group:
    "Service Provider Id" "Group Id" "Device Type Name" Group: "Service Provider Id"
    "Group Id" User: "User Id" "Is Local" is set to "yes" if the event is processed on the
    server who received the request, "no" otherwise meaning that the event is processed on
    another server.  "Completion %" provides an estimate of the completion of the event.
    A percentage is given, the current number of completed expanded event, and the total
    number of expanded event.  "Pushed/ Same Hash/ Not Pushed" gives the total number of
    files that were pushed, not pushed because of same hash, and not pushed when
    processing the event.  "LoginId" is the user or admin id who triggered the event.
    "Start Time" is the date when the event was started.  The display shows the month,
    days, hours, and minutes (MM-dd hh:mm). "Process Time" is the time taken to process
    the event in hours, minutes, seconds, and milliseconds (hhhh:mm:ss.SSS). Each row
    represents an event sorted by priority of processing.  The first row in the table is
    an event that has an associated expanded event currently being processed or next in
    line to be processed.

    Attributes:
        event_table: eventTable
    """

    _ELEMENTS = (
        E(
            "event_table", "eventTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    event_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDeviceManagementGetAccessDeviceCountForDeviceTypeResponse(OCIResponse):
    """
    Response to ``SystemDeviceManagementGetAccessDeviceCountForDeviceTypeRequest()``.


    Attributes:
        access_device_count: accessDeviceCount
    """

    _ELEMENTS = (
        E("access_device_count", "accessDeviceCount", int, is_required=True),
    )

    access_device_count: int = Field(type=int, required=True, mutable=False)


class SystemDeviceManagementGetEventStatusSummaryCountResponse(OCIResponse):
    """
    Response to ``SystemDeviceManagementGetEventStatusSummaryCountRequest()``.

    The column headings are "Action, "Pending", "Queued Internally", and "Completed"

    Attributes:
        status_count_table: statusCountTable
    """

    _ELEMENTS = (
        E(
            "status_count_table", "statusCountTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    status_count_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDeviceManagementTagGetListResponse(OCIResponse):
    """
    Response to ``SystemDeviceManagementTagGetListRequest()``.

    Contains a table of custom configuration tags managed by the Device Management System.
    The column headings are: "Tag Name", "Tag Value".

    Attributes:
        tags_table: tagsTable
    """

    _ELEMENTS = (
        E("tags_table", "tagsTable", list, is_complex=True, is_required=True, is_table=True),
    )

    tags_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDeviceManagementTagSetGetListResponse(OCIResponse):
    """
    Response to ``SystemDeviceManagementTagSetGetListRequest()``.

    The response includes an array of tag set names defined in the system.  The system
    default tag set name is not part of this response.

    Attributes:
        tag_set_name: tagSetName
    """

    _ELEMENTS = (
        E("tag_set_name", "tagSetName", str, is_array=True),
    )

    tag_set_name: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemDeviceProfileAuthenticationLockoutGetResponse(OCIResponse):
    """
    Response to ``SystemDeviceProfileAuthenticationLockoutGetRequest()``.

    The column headings for the lockoutTable are: "Organization Id", "Organization Type",
    "Group Id", "Identity/Device Profile Name", " Identity/Device Profile Type", "Lockout
    Started", "Lockout Expires", "Lockout Count". Lockout times are shown in the system
    GMT time.  When a permanent lockout is shown, the "Lockout Expires" column is empty
    and the "Lockout Count" column contains the word Permanent.

    Attributes:
        lockout_table: lockoutTable
    """

    _ELEMENTS = (
        E(
            "lockout_table", "lockoutTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    lockout_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDeviceProfileAuthenticationPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``SystemDeviceProfileAuthenticationPasswordRulesGetRequest()``.

    Contains the device profile authentication password rules for the system.

    Attributes:
        disallow_authentication_name: disallowAuthenticationName
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        send_permanent_lockout_notification: sendPermanentLockoutNotification
        permanent_lockout_notify_email_address: permanentLockoutNotifyEmailAddress
        device_profile_authentication_lockout_type: deviceProfileAuthenticationLockoutType
        device_profile_temporary_lockout_threshold: deviceProfileTemporaryLockoutThreshold
        device_profile_wait_algorithm: deviceProfileWaitAlgorithm
        device_profile_lockout_fixed_minutes: deviceProfileLockoutFixedMinutes
        device_profile_permanent_lockout_threshold: deviceProfilePermanentLockoutThreshold
    """

    _ELEMENTS = (
        E(
            "disallow_authentication_name", "disallowAuthenticationName", bool,
            is_required=True,
        ),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E(
            "send_permanent_lockout_notification", "sendPermanentLockoutNotification",
            bool, is_required=True,
        ),
        E(
            "permanent_lockout_notify_email_address",
            "permanentLockoutNotifyEmailAddress", str,
        ),
        E(
            "device_profile_authentication_lockout_type",
            "deviceProfileAuthenticationLockoutType", str, is_required=True,
        ),
        E(
            "device_profile_temporary_lockout_threshold",
            "deviceProfileTemporaryLockoutThreshold", int, is_required=True,
        ),
        E(
            "device_profile_wait_algorithm", "deviceProfileWaitAlgorithm", str,
            is_required=True,
        ),
        E(
            "device_profile_lockout_fixed_minutes", "deviceProfileLockoutFixedMinutes",
            str, is_required=True,
        ),
        E(
            "device_profile_permanent_lockout_threshold",
            "deviceProfilePermanentLockoutThreshold", int, is_required=True,
        ),
    )

    disallow_authentication_name: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    send_permanent_lockout_notification: bool = Field(type=bool, required=True, mutable=False)
    permanent_lockout_notify_email_address: str = Field(
        type=str, required=False, mutable=False,
    )
    device_profile_authentication_lockout_type: str = Field(
        type=str, required=True, mutable=False,
    )
    device_profile_temporary_lockout_threshold: int = Field(
        type=int, required=True, mutable=False,
    )
    device_profile_wait_algorithm: str = Field(type=str, required=True, mutable=False)
    device_profile_lockout_fixed_minutes: str = Field(type=str, required=True, mutable=False)
    device_profile_permanent_lockout_threshold: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemDeviceTypeExportResponse(OCIResponse):
    """
    Response to ``SystemDeviceTypeExportRequest()``.


    Attributes:
        file: file
    """

    _ELEMENTS = (
        E("file", "file", str, is_required=True),
    )

    file: str = Field(type=str, required=True, mutable=False)


class SystemDeviceTypeGetAvailableListResponse(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetAvailableListRequest()``.


    Attributes:
        device_type: deviceType
        type_info: typeInfo
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_array=True),
        E("type_info", "typeInfo", str, is_complex=True, is_array=True),  # unknown
    )

    device_type: "List[str]" = Field(type=list, required=False, mutable=False)
    type_info: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemDeviceTypeGetAvailableListResponse14sp1(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetAvailableListRequest14sp1()``.

    Replaced By: ``SystemDeviceTypeGetAvailableListResponse14sp3()``

    Attributes:
        device_type: deviceType
        type_info: typeInfo
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_array=True),
        E("type_info", "typeInfo", str, is_complex=True, is_array=True),  # unknown
    )

    device_type: "List[str]" = Field(type=list, required=False, mutable=False)
    type_info: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemDeviceTypeGetAvailableListResponse14sp3(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetAvailableListRequest14sp3()``.


    Attributes:
        device_type: deviceType
        type_info: typeInfo
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_array=True),
        E("type_info", "typeInfo", str, is_complex=True, is_array=True),  # unknown
    )

    device_type: "List[str]" = Field(type=list, required=False, mutable=False)
    type_info: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemDeviceTypeGetAvailableListResponse19(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetAvailableListRequest19()``.

    Note: element numberOfPorts is only used by devices types with static line ordering
    enabled

    Attributes:
        device_type: deviceType
        type_info: typeInfo
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_array=True),
        E("type_info", "typeInfo", str, is_complex=True, is_array=True),  # unknown
    )

    device_type: "List[str]" = Field(type=list, required=False, mutable=False)
    type_info: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemDialPlanPolicyGetAccessCodeListResponse(OCIResponse):
    """
    Response to ``SystemDialPlanPolicyGetAccessCodeListRequest()``.

    Contains a table with column headings: "Access Code", "Enable Secondary Dial Tone",
    "Description"

    Attributes:
        access_code_table: accessCodeTable
    """

    _ELEMENTS = (
        E(
            "access_code_table", "accessCodeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    access_code_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDialPlanPolicyGetAccessCodeResponse(OCIResponse):
    """
    Response to ``SystemDialPlanPolicyGetAccessCodeRequest()``

    Attributes:
        include_code_for_network_translations_and_routing:
            includeCodeForNetworkTranslationsAndRouting
        include_code_for_screening_services: includeCodeForScreeningServices
        enable_secondary_dial_tone: enableSecondaryDialTone
        description: description
    """

    _ELEMENTS = (
        E(
            "include_code_for_network_translations_and_routing",
            "includeCodeForNetworkTranslationsAndRouting", bool, is_required=True,
        ),
        E(
            "include_code_for_screening_services", "includeCodeForScreeningServices",
            bool, is_required=True,
        ),
        E("enable_secondary_dial_tone", "enableSecondaryDialTone", bool, is_required=True),
        E("description", "description", str),
    )

    include_code_for_network_translations_and_routing: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_code_for_screening_services: bool = Field(type=bool, required=True, mutable=False)
    enable_secondary_dial_tone: bool = Field(type=bool, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class SystemDialPlanPolicyGetResponse(OCIResponse):
    """
    Response to ``SystemDialPlanPolicyGetRequest()`` Replaced by:
    ``SystemDialPlanPolicyGetResponse17()``

    Attributes:
        requires_access_code_for_public_calls: requiresAccessCodeForPublicCalls
        allow_e164_public_calls: allowE164PublicCalls
        public_digit_map: publicDigitMap
        private_digit_map: privateDigitMap
    """

    _ELEMENTS = (
        E(
            "requires_access_code_for_public_calls", "requiresAccessCodeForPublicCalls",
            bool, is_required=True,
        ),
        E("allow_e164_public_calls", "allowE164PublicCalls", bool, is_required=True),
        E("public_digit_map", "publicDigitMap", str, is_required=True),
        E("private_digit_map", "privateDigitMap", str),
    )

    requires_access_code_for_public_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_e164_public_calls: bool = Field(type=bool, required=True, mutable=False)
    public_digit_map: str = Field(type=str, required=True, mutable=False)
    private_digit_map: str = Field(type=str, required=False, mutable=False)


class SystemDialPlanPolicyGetResponse17(OCIResponse):
    """
    Response to ``SystemDialPlanPolicyGetRequest17()``

    Attributes:
        requires_access_code_for_public_calls: requiresAccessCodeForPublicCalls
        allow_e164_public_calls: allowE164PublicCalls
        prefer_e164_number_format_for_callback_services:
            preferE164NumberFormatForCallbackServices
        public_digit_map: publicDigitMap
        private_digit_map: privateDigitMap
    """

    _ELEMENTS = (
        E(
            "requires_access_code_for_public_calls", "requiresAccessCodeForPublicCalls",
            bool, is_required=True,
        ),
        E("allow_e164_public_calls", "allowE164PublicCalls", bool, is_required=True),
        E(
            "prefer_e164_number_format_for_callback_services",
            "preferE164NumberFormatForCallbackServices", bool, is_required=True,
        ),
        E("public_digit_map", "publicDigitMap", str, is_required=True),
        E("private_digit_map", "privateDigitMap", str),
    )

    requires_access_code_for_public_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_e164_public_calls: bool = Field(type=bool, required=True, mutable=False)
    prefer_e164_number_format_for_callback_services: bool = Field(
        type=bool, required=True, mutable=False,
    )
    public_digit_map: str = Field(type=str, required=True, mutable=False)
    private_digit_map: str = Field(type=str, required=False, mutable=False)


class SystemDialableCallerIDCriteriaGetResponse(OCIResponse):
    """
    Response to the ``SystemDialableCallerIDCriteriaGetRequest()``.

    The response contains the Dialable Caller ID Criteria information.

    Attributes:
        description: description
        prefix_digits: prefixDigits
        match_call_type: matchCallType
        match_alternate_call_indicator: matchAlternateCallIndicator
        match_local_category: matchLocalCategory
        match_national_category: matchNationalCategory
        match_interlata_category: matchInterlataCategory
        match_intralata_category: matchIntralataCategory
        match_international_category: matchInternationalCategory
        match_private_category: matchPrivateCategory
        match_emergency_category: matchEmergencyCategory
        match_other_category: matchOtherCategory
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("prefix_digits", "prefixDigits", str),
        E("match_call_type", "matchCallType", str, is_array=True),
        E(
            "match_alternate_call_indicator", "matchAlternateCallIndicator", str,
            is_array=True,
        ),
        E("match_local_category", "matchLocalCategory", bool, is_required=True),
        E("match_national_category", "matchNationalCategory", bool, is_required=True),
        E("match_interlata_category", "matchInterlataCategory", bool, is_required=True),
        E("match_intralata_category", "matchIntralataCategory", bool, is_required=True),
        E(
            "match_international_category", "matchInternationalCategory", bool,
            is_required=True,
        ),
        E("match_private_category", "matchPrivateCategory", bool, is_required=True),
        E("match_emergency_category", "matchEmergencyCategory", bool, is_required=True),
        E("match_other_category", "matchOtherCategory", bool, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    prefix_digits: str = Field(type=str, required=False, mutable=False)
    match_call_type: "List[str]" = Field(type=list, required=False, mutable=False)
    match_alternate_call_indicator: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )
    match_local_category: bool = Field(type=bool, required=True, mutable=False)
    match_national_category: bool = Field(type=bool, required=True, mutable=False)
    match_interlata_category: bool = Field(type=bool, required=True, mutable=False)
    match_intralata_category: bool = Field(type=bool, required=True, mutable=False)
    match_international_category: bool = Field(type=bool, required=True, mutable=False)
    match_private_category: bool = Field(type=bool, required=True, mutable=False)
    match_emergency_category: bool = Field(type=bool, required=True, mutable=False)
    match_other_category: bool = Field(type=bool, required=True, mutable=False)


class SystemDialableCallerIDGetResponse(OCIResponse):
    """
    Response to the ``SystemDialableCallerIDGetRequest()``.

    The criteria table?s column headings are ?Active?, "Name", "Description", ?Prefix
    Digits?, and ?Priority?.

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDigitCollectionGetResponse13mp4(OCIResponse):
    """
    Response to ``SystemDigitCollectionGetRequest13mp4()``.


    Attributes:
        access_code: accessCode
        public_digit_map: publicDigitMap
        private_digit_map: privateDigitMap
    """

    _ELEMENTS = (
        E("access_code", "accessCode", str),
        E("public_digit_map", "publicDigitMap", str, is_required=True),
        E("private_digit_map", "privateDigitMap", str),
    )

    access_code: str = Field(type=str, required=False, mutable=False)
    public_digit_map: str = Field(type=str, required=True, mutable=False)
    private_digit_map: str = Field(type=str, required=False, mutable=False)


class SystemDnGetSummaryListResponse(OCIResponse):
    """
    Response to ``SystemDnGetSummaryListRequest()``.

    The column headings are "Phone Numbers, "Service Provider Id" and "Is Enterprise"

    Attributes:
        dn_summary_table: dnSummaryTable
    """

    _ELEMENTS = (
        E(
            "dn_summary_table", "dnSummaryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    dn_summary_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDnGetUtilizationListResponse(OCIResponse):
    """
    Response to ``SystemDnUtilizationGetListRequest()``.

    The table columns are: "Service Provider Id", "Phone Numbers", "Assigned to Groups",
    "Percentage Assigned", "Is Enterprise" and "Activated on Groups".

    Attributes:
        dn_utilization_table: dnUtilizationTable
    """

    _ELEMENTS = (
        E(
            "dn_utilization_table", "dnUtilizationTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    dn_utilization_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDnGetUtilizationResponse(OCIResponse):
    """
    Response to ``SystemDnGetUtilizationRequest()``.

    Replaced By: ``SystemDnGetUtilizationResponse14sp3()``

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        user_id: userId
        user_type: userType
        is_group_calling_line_id: isGroupCallingLineId
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str),
        E("user_id", "userId", str),
        E("user_type", "userType", str),
        E("is_group_calling_line_id", "isGroupCallingLineId", bool, is_required=True),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=False, mutable=False)
    user_id: str = Field(type=str, required=False, mutable=False)
    user_type: str = Field(type=str, required=False, mutable=False)
    is_group_calling_line_id: bool = Field(type=bool, required=True, mutable=False)


class SystemDnGetUtilizationResponse14sp3(OCIResponse):
    """
    Response to ``SystemDnGetUtilizationRequest14sp3()``.

    The isActivated element is only included when the DN is assigned to a user.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        user_id: userId
        user_type: userType
        is_group_calling_line_id: isGroupCallingLineId
        is_activated: isActivated
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str),
        E("user_id", "userId", str),
        E("user_type", "userType", str),
        E("is_group_calling_line_id", "isGroupCallingLineId", bool, is_required=True),
        E("is_activated", "isActivated", bool),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=False, mutable=False)
    user_id: str = Field(type=str, required=False, mutable=False)
    user_type: str = Field(type=str, required=False, mutable=False)
    is_group_calling_line_id: bool = Field(type=bool, required=True, mutable=False)
    is_activated: bool = Field(type=bool, required=False, mutable=False)


class SystemDomainGetAssignedServiceProviderListResponse(OCIResponse):
    """
    Response to ``SystemDomainGetAssignedServiceProviderListRequest()``.

    The table columns are: "Service Provider Id", "Service Provider Name" and "Is
    Enterprise".

    Attributes:
        service_provider_table: serviceProviderTable
    """

    _ELEMENTS = (
        E(
            "service_provider_table", "serviceProviderTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_provider_table: "list" = Field(type=list, required=True, mutable=False)


class SystemDomainGetListResponse(OCIResponse):
    """
    Contains a simple list of all system-level domain names.


    Attributes:
        system_default_domain: systemDefaultDomain
        domain: domain
    """

    _ELEMENTS = (
        E("system_default_domain", "systemDefaultDomain", str, is_required=True),
        E("domain", "domain", str, is_array=True),
    )

    system_default_domain: str = Field(type=str, required=True, mutable=False)
    domain: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemDomainParametersGetResponse(OCIResponse):
    """
    Response to ``SystemDomainParametersGetRequest()``.

    Contains the system Domain parameters.

    Attributes:
        use_alias_for_domain: useAliasForDomain
        default_domain: defaultDomain
    """

    _ELEMENTS = (
        E("use_alias_for_domain", "useAliasForDomain", bool, is_required=True),
        E("default_domain", "defaultDomain", str, is_required=True),
    )

    use_alias_for_domain: bool = Field(type=bool, required=True, mutable=False)
    default_domain: str = Field(type=str, required=True, mutable=False)


class SystemEmergencyZonesGetResponse(OCIResponse):
    """
    Response to ``SystemEmergencyZonesGetRequest()``.


    Attributes:
        default_from_address: defaultFromAddress
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)


class SystemEndpointGetListResponse(OCIResponse):
    """
    Response to ``SystemEndpointGetListRequest()``.

    The column headings for the endpointTable are: "Organization Id", "Organization Type",
    "Group Id", "Line/Port", "Last Name","First Name", "User Id", "User Type", "Phone
    Number", "Extension", "Device Type", "Device Name", "Net Address", "MAC Address",
    "Department", "Email Address". Possible values for User Type are ‘User’, ‘CCBasic’,
    ‘CCStandard’, ‘CCPremium’, ‘RP’, ‘MOH’, ‘MOHVideo’.

    Attributes:
        endpoint_table: endpointTable
    """

    _ELEMENTS = (
        E(
            "endpoint_table", "endpointTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    endpoint_table: "list" = Field(type=list, required=True, mutable=False)


class SystemEnhancedCallLogsGetResponse(OCIResponse):
    """
    Response to ``SystemEnhancedCallLogsGetRequest()``.


    Attributes:
        is_send_enabled: isSendEnabled
        server1_net_address: server1NetAddress
        server1_send_port: server1SendPort
        server1_retrieve_port: server1RetrievePort
        server2_net_address: server2NetAddress
        server2_send_port: server2SendPort
        server2_retrieve_port: server2RetrievePort
        shared_secret: sharedSecret
        retransmission_delay_milli_seconds: retransmissionDelayMilliSeconds
        max_transmissions: maxTransmissions
        soap_timeout_seconds: soapTimeoutSeconds
    """

    _ELEMENTS = (
        E("is_send_enabled", "isSendEnabled", bool, is_required=True),
        E("server1_net_address", "server1NetAddress", str),
        E("server1_send_port", "server1SendPort", int, is_required=True),
        E("server1_retrieve_port", "server1RetrievePort", int, is_required=True),
        E("server2_net_address", "server2NetAddress", str),
        E("server2_send_port", "server2SendPort", int, is_required=True),
        E("server2_retrieve_port", "server2RetrievePort", int, is_required=True),
        E("shared_secret", "sharedSecret", str),
        E(
            "retransmission_delay_milli_seconds", "retransmissionDelayMilliSeconds", int,
            is_required=True,
        ),
        E("max_transmissions", "maxTransmissions", int, is_required=True),
        E("soap_timeout_seconds", "soapTimeoutSeconds", int, is_required=True),
    )

    is_send_enabled: bool = Field(type=bool, required=True, mutable=False)
    server1_net_address: str = Field(type=str, required=False, mutable=False)
    server1_send_port: int = Field(type=int, required=True, mutable=False)
    server1_retrieve_port: int = Field(type=int, required=True, mutable=False)
    server2_net_address: str = Field(type=str, required=False, mutable=False)
    server2_send_port: int = Field(type=int, required=True, mutable=False)
    server2_retrieve_port: int = Field(type=int, required=True, mutable=False)
    shared_secret: str = Field(type=str, required=False, mutable=False)
    retransmission_delay_milli_seconds: int = Field(type=int, required=True, mutable=False)
    max_transmissions: int = Field(type=int, required=True, mutable=False)
    soap_timeout_seconds: int = Field(type=int, required=True, mutable=False)


class SystemEnhancedCallLogsGetResponse17sp4(OCIResponse):
    """
    Response to ``SystemEnhancedCallLogsGetRequest17sp4()``.

    The following elements are only used in AS data mode: isSendEnabled server1NetAddress
    server1SendPort server1RetrievePort server2NetAddress server2SendPort
    server2RetrievePort sharedSecret retransmissionDelayMilliSeconds maxTransmissions
    soapTimeoutSeconds useDBS Replaced by:``SystemEnhancedCallLogsGetResponse20sp1()``

    Attributes:
        is_send_enabled: isSendEnabled
        server1_net_address: server1NetAddress
        server1_send_port: server1SendPort
        server1_retrieve_port: server1RetrievePort
        server2_net_address: server2NetAddress
        server2_send_port: server2SendPort
        server2_retrieve_port: server2RetrievePort
        shared_secret: sharedSecret
        retransmission_delay_milli_seconds: retransmissionDelayMilliSeconds
        max_transmissions: maxTransmissions
        soap_timeout_seconds: soapTimeoutSeconds
        use_dbs: useDBS
        max_non_paged_response_size: maxNonPagedResponseSize
    """

    _ELEMENTS = (
        E("is_send_enabled", "isSendEnabled", bool, is_required=True),
        E("server1_net_address", "server1NetAddress", str),
        E("server1_send_port", "server1SendPort", int, is_required=True),
        E("server1_retrieve_port", "server1RetrievePort", int, is_required=True),
        E("server2_net_address", "server2NetAddress", str),
        E("server2_send_port", "server2SendPort", int, is_required=True),
        E("server2_retrieve_port", "server2RetrievePort", int, is_required=True),
        E("shared_secret", "sharedSecret", str),
        E(
            "retransmission_delay_milli_seconds", "retransmissionDelayMilliSeconds", int,
            is_required=True,
        ),
        E("max_transmissions", "maxTransmissions", int, is_required=True),
        E("soap_timeout_seconds", "soapTimeoutSeconds", int, is_required=True),
        E("use_dbs", "useDBS", bool, is_required=True),
        E("max_non_paged_response_size", "maxNonPagedResponseSize", int, is_required=True),
    )

    is_send_enabled: bool = Field(type=bool, required=True, mutable=False)
    server1_net_address: str = Field(type=str, required=False, mutable=False)
    server1_send_port: int = Field(type=int, required=True, mutable=False)
    server1_retrieve_port: int = Field(type=int, required=True, mutable=False)
    server2_net_address: str = Field(type=str, required=False, mutable=False)
    server2_send_port: int = Field(type=int, required=True, mutable=False)
    server2_retrieve_port: int = Field(type=int, required=True, mutable=False)
    shared_secret: str = Field(type=str, required=False, mutable=False)
    retransmission_delay_milli_seconds: int = Field(type=int, required=True, mutable=False)
    max_transmissions: int = Field(type=int, required=True, mutable=False)
    soap_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    use_dbs: bool = Field(type=bool, required=True, mutable=False)
    max_non_paged_response_size: int = Field(type=int, required=True, mutable=False)


class SystemEnhancedCallLogsGetResponse20sp1(OCIResponse):
    """
    Response to ``SystemEnhancedCallLogsGetRequest20sp1()``.

    The following elements are only used in AS data mode: isSendEnabled server1NetAddress
    server1SendPort server1RetrievePort server2NetAddress server2SendPort
    server2RetrievePort sharedSecret retransmissionDelayMilliSeconds maxTransmissions
    soapTimeoutSeconds useDBS eclQueryApplicationURL eclQueryDataRepositoryURL

    Attributes:
        is_send_enabled: isSendEnabled
        server1_net_address: server1NetAddress
        server1_send_port: server1SendPort
        server1_retrieve_port: server1RetrievePort
        server2_net_address: server2NetAddress
        server2_send_port: server2SendPort
        server2_retrieve_port: server2RetrievePort
        shared_secret: sharedSecret
        retransmission_delay_milli_seconds: retransmissionDelayMilliSeconds
        max_transmissions: maxTransmissions
        soap_timeout_seconds: soapTimeoutSeconds
        use_dbs: useDBS
        max_non_paged_response_size: maxNonPagedResponseSize
        ecl_query_application_url: eclQueryApplicationURL
        ecl_query_data_repository_url: eclQueryDataRepositoryURL
    """

    _ELEMENTS = (
        E("is_send_enabled", "isSendEnabled", bool, is_required=True),
        E("server1_net_address", "server1NetAddress", str),
        E("server1_send_port", "server1SendPort", int, is_required=True),
        E("server1_retrieve_port", "server1RetrievePort", int, is_required=True),
        E("server2_net_address", "server2NetAddress", str),
        E("server2_send_port", "server2SendPort", int, is_required=True),
        E("server2_retrieve_port", "server2RetrievePort", int, is_required=True),
        E("shared_secret", "sharedSecret", str),
        E(
            "retransmission_delay_milli_seconds", "retransmissionDelayMilliSeconds", int,
            is_required=True,
        ),
        E("max_transmissions", "maxTransmissions", int, is_required=True),
        E("soap_timeout_seconds", "soapTimeoutSeconds", int, is_required=True),
        E("use_dbs", "useDBS", bool, is_required=True),
        E("max_non_paged_response_size", "maxNonPagedResponseSize", int, is_required=True),
        E("ecl_query_application_url", "eclQueryApplicationURL", str),
        E("ecl_query_data_repository_url", "eclQueryDataRepositoryURL", str),
    )

    is_send_enabled: bool = Field(type=bool, required=True, mutable=False)
    server1_net_address: str = Field(type=str, required=False, mutable=False)
    server1_send_port: int = Field(type=int, required=True, mutable=False)
    server1_retrieve_port: int = Field(type=int, required=True, mutable=False)
    server2_net_address: str = Field(type=str, required=False, mutable=False)
    server2_send_port: int = Field(type=int, required=True, mutable=False)
    server2_retrieve_port: int = Field(type=int, required=True, mutable=False)
    shared_secret: str = Field(type=str, required=False, mutable=False)
    retransmission_delay_milli_seconds: int = Field(type=int, required=True, mutable=False)
    max_transmissions: int = Field(type=int, required=True, mutable=False)
    soap_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    use_dbs: bool = Field(type=bool, required=True, mutable=False)
    max_non_paged_response_size: int = Field(type=int, required=True, mutable=False)
    ecl_query_application_url: str = Field(type=str, required=False, mutable=False)
    ecl_query_data_repository_url: str = Field(type=str, required=False, mutable=False)


class SystemEnhancedCallLogsSchemaInstanceGetListResponse(OCIResponse):
    """
    Response to ``SystemEnhancedCallLogsSchemaInstanceGetListRequest()``.

    Contains a table with column headings: "Instance Name", "Actual Users", "Potential
    Users".

    Attributes:
        schema_instance_usage_table: schemaInstanceUsageTable
    """

    _ELEMENTS = (
        E(
            "schema_instance_usage_table", "schemaInstanceUsageTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    schema_instance_usage_table: "list" = Field(type=list, required=True, mutable=False)


class SystemExecutiveGetResponse(OCIResponse):
    """
    Response to ``SystemExecutiveGetRequest()``.


    Attributes:
        treat_virtual_on_net_calls_as_internal: treatVirtualOnNetCallsAsInternal
    """

    _ELEMENTS = (
        E(
            "treat_virtual_on_net_calls_as_internal", "treatVirtualOnNetCallsAsInternal",
            bool, is_required=True,
        ),
    )

    treat_virtual_on_net_calls_as_internal: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemExpensiveCallNotificationGetResponse(OCIResponse):
    """
    Response to ``SystemExpensiveCallNotificationGetRequest()``.


    Attributes:
        enable_post_announcement_delay_timer: enablePostAnnouncementDelayTimer
        post_announcement_delay_seconds: postAnnouncementDelaySeconds
    """

    _ELEMENTS = (
        E(
            "enable_post_announcement_delay_timer", "enablePostAnnouncementDelayTimer",
            bool, is_required=True,
        ),
        E(
            "post_announcement_delay_seconds", "postAnnouncementDelaySeconds", int,
            is_required=True,
        ),
    )

    enable_post_announcement_delay_timer: bool = Field(
        type=bool, required=True, mutable=False,
    )
    post_announcement_delay_seconds: int = Field(type=int, required=True, mutable=False)


class SystemExpensiveCallTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemExpensiveCallTypeGetListRequest()``.

    Replaced by: ``SystemExpensiveCallTypeGetListResponse16sp1()``

    Attributes:
        alternate_call_indicator: alternateCallIndicator
    """

    _ELEMENTS = (
        E("alternate_call_indicator", "alternateCallIndicator", str, is_array=True),
    )

    alternate_call_indicator: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemExpensiveCallTypeGetListResponse16sp1(OCIResponse):
    """
    Response to ``SystemExpensiveCallTypeGetListRequest16sp1()``.

    The column headings are: "Alternate Call Indicator", "Treatment Audio File".

    Attributes:
        alternate_call_indicator_table: alternateCallIndicatorTable
    """

    _ELEMENTS = (
        E(
            "alternate_call_indicator_table", "alternateCallIndicatorTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    alternate_call_indicator_table: "list" = Field(type=list, required=True, mutable=False)


class SystemExtensionLengthGetResponse(OCIResponse):
    """
    Response to ``SystemExtensionLengthGetRequest()``.


    Attributes:
        min_extension_length: minExtensionLength
        max_extension_length: maxExtensionLength
    """

    _ELEMENTS = (
        E("min_extension_length", "minExtensionLength", int, is_required=True),
        E("max_extension_length", "maxExtensionLength", int, is_required=True),
    )

    min_extension_length: int = Field(type=int, required=True, mutable=False)
    max_extension_length: int = Field(type=int, required=True, mutable=False)


class SystemExternalAuthenticationGetACLListResponse(OCIResponse):
    """
    Response to ``SystemExternalAuthenticationGetACLListRequest()``.

    The table columns are: "Net Address" and "Description".

    Attributes:
        acl_table: aclTable
    """

    _ELEMENTS = (
        E("acl_table", "aclTable", list, is_complex=True, is_required=True, is_table=True),
    )

    acl_table: "list" = Field(type=list, required=True, mutable=False)


class SystemExternalEmergencyRoutingParametersGetResponse13mp13(OCIResponse):
    """
    Response to ``SystemExternalEmergencyRoutingParametersGetRequest13mp13()``.

    Contains a list of system External Emergency Routing parameters.

    Attributes:
        service_uri: serviceURI
        default_emergency_number: defaultEmergencyNumber
        is_active: isActive
        supports_dnssrv: supportsDNSSRV
        connection_timeout_seconds: connectionTimeoutSeconds
    """

    _ELEMENTS = (
        E("service_uri", "serviceURI", str),
        E("default_emergency_number", "defaultEmergencyNumber", str),
        E("is_active", "isActive", bool, is_required=True),
        E("supports_dnssrv", "supportsDNSSRV", bool, is_required=True),
        E("connection_timeout_seconds", "connectionTimeoutSeconds", int, is_required=True),
    )

    service_uri: str = Field(type=str, required=False, mutable=False)
    default_emergency_number: str = Field(type=str, required=False, mutable=False)
    is_active: bool = Field(type=bool, required=True, mutable=False)
    supports_dnssrv: bool = Field(type=bool, required=True, mutable=False)
    connection_timeout_seconds: int = Field(type=int, required=True, mutable=False)


class SystemFileGetContentResponse(OCIResponse):
    """
    Response to a ``SystemFileGetContentRequest()``.

    The fileContent length returned is limited to 128KBytes.

    Attributes:
        file_content: fileContent
    """

    _ELEMENTS = (
        E("file_content", "fileContent", str, is_required=True),
    )

    file_content: str = Field(type=str, required=True, mutable=False)


class SystemFileRepositoryDeviceGetListResponse(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceGetListRequest()``.

    Contains a table with column headings : "Name","Protocol", "Root Directory" in a row
    for each file repository.

    Attributes:
        file_repository_table: fileRepositoryTable
    """

    _ELEMENTS = (
        E(
            "file_repository_table", "fileRepositoryTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    file_repository_table: "list" = Field(type=list, required=True, mutable=False)


class SystemFileRepositoryDeviceUserGetListResponse(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceUserGetListRequest()``.

    Contains a table with column headings : "User Name","Allow Get","Allow Delete","Allow
    Put" in a row for each file repository user.

    Attributes:
        file_repository_user_table: fileRepositoryUserTable
    """

    _ELEMENTS = (
        E(
            "file_repository_user_table", "fileRepositoryUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    file_repository_user_table: "list" = Field(type=list, required=True, mutable=False)


class SystemFileRepositoryDeviceUserGetResponse(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceUserGetRequest()``.


    Attributes:
        allow_put: allowPut
        allow_delete: allowDelete
        allow_get: allowGet
    """

    _ELEMENTS = (
        E("allow_put", "allowPut", bool, is_required=True),
        E("allow_delete", "allowDelete", bool, is_required=True),
        E("allow_get", "allowGet", bool, is_required=True),
    )

    allow_put: bool = Field(type=bool, required=True, mutable=False)
    allow_delete: bool = Field(type=bool, required=True, mutable=False)
    allow_get: bool = Field(type=bool, required=True, mutable=False)


class SystemGeographicRedundancyPeerSipConnectionMonitoringGetResponse(OCIResponse):
    """
    Response to ``SystemGeographicRedundancyPeerSipConnectionMonitoringGetRequest()``.

    Contains a list of Peer SIP Connection Monitoring system parameters.

    Attributes:
        enabled: enabled
        heartbeat_interval: heartbeatInterval
        heartbeat_timeout: heartbeatTimeout
    """

    _ELEMENTS = (
        E("enabled", "enabled", bool, is_required=True),
        E("heartbeat_interval", "heartbeatInterval", int, is_required=True),
        E("heartbeat_timeout", "heartbeatTimeout", int, is_required=True),
    )

    enabled: bool = Field(type=bool, required=True, mutable=False)
    heartbeat_interval: int = Field(type=int, required=True, mutable=False)
    heartbeat_timeout: int = Field(type=int, required=True, mutable=False)


class SystemGeographicRedundancyProxyGetResponse(OCIResponse):
    """
    Response to ``SystemGeographicRedundancyProxyGetRequest()``.

    Contains a list of Geographic Redundancy Proxy system parameters.

    Attributes:
        enabled: enabled
    """

    _ELEMENTS = (
        E("enabled", "enabled", bool, is_required=True),
    )

    enabled: bool = Field(type=bool, required=True, mutable=False)


class SystemGeographicRedundancyUnreachableFromPrimaryGetUserListResponse(OCIResponse):
    """
    Response to ``SystemGeographicRedundancyUnreachableFromPrimaryGetUserListRequest()``.

    The Unreachable From Primary User table column headings are: "User ID", "Lineport".

    Attributes:
        unreachable_from_primary_user_table: unreachableFromPrimaryUserTable
    """

    _ELEMENTS = (
        E(
            "unreachable_from_primary_user_table", "unreachableFromPrimaryUserTable",
            list, is_complex=True, is_required=True, is_table=True,
        ),
    )

    unreachable_from_primary_user_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class SystemGetRegistrationContactListResponse(OCIResponse):
    """
    Response to ``SystemGetRegistrationContactListRequest()``.

    The table columns are: "Service Provider Id", "Group Id", "User Id", "Line/Port",
    "Endpoint Type", "Order", "URI", "Expiration", "Contact", "Device Level", "Device
    Name", "Public Net Address", "Public Port", "Private Net Address", "Private Port",
    "User Agent".

    Attributes:
        registration_table: registrationTable
    """

    _ELEMENTS = (
        E(
            "registration_table", "registrationTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    registration_table: "list" = Field(type=list, required=True, mutable=False)


class SystemGroupNightForwardingGetResponse(OCIResponse):
    """
    Response to ``SystemGroupNightForwardingGetRequest()``.


    Attributes:
        night_forward_inter_group_calls_within_enterprise:
            nightForwardInterGroupCallsWithinEnterprise
    """

    _ELEMENTS = (
        E(
            "night_forward_inter_group_calls_within_enterprise",
            "nightForwardInterGroupCallsWithinEnterprise", bool, is_required=True,
        ),
    )

    night_forward_inter_group_calls_within_enterprise: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemHolidayScheduleGetListResponse(OCIResponse):
    """
    Response to the ``SystemHolidayScheduleGetListRequest()``.

    The response contains all the system holiday schedule names.

    Attributes:
        holiday_schedule_name: holidayScheduleName
    """

    _ELEMENTS = (
        E("holiday_schedule_name", "holidayScheduleName", str, is_array=True),
    )

    holiday_schedule_name: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemHomeNetworkGetListResponse(OCIResponse):
    """
    Response to the ``SystemHomeNetworkGetListRequest()``.


    Attributes:
        msc_address: mscAddress
    """

    _ELEMENTS = (
        E("msc_address", "mscAddress", str, is_array=True),
    )

    msc_address: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemHuntGroupGetResponse(OCIResponse):
    """
    Response to ``SystemHuntGroupGetRequest()``.

    Replaced by: ``SystemHuntGroupGetResponse17()``

    Attributes:
        anonymous_instead_of_private_clid: anonymousInsteadOfPrivateCLID
        remove_hunt_group_name_from_clid: removeHuntGroupNameFromCLID
    """

    _ELEMENTS = (
        E(
            "anonymous_instead_of_private_clid", "anonymousInsteadOfPrivateCLID", bool,
            is_required=True,
        ),
        E(
            "remove_hunt_group_name_from_clid", "removeHuntGroupNameFromCLID", bool,
            is_required=True,
        ),
    )

    anonymous_instead_of_private_clid: bool = Field(type=bool, required=True, mutable=False)
    remove_hunt_group_name_from_clid: bool = Field(type=bool, required=True, mutable=False)


class SystemHuntGroupGetResponse17(OCIResponse):
    """
    Response to ``SystemHuntGroupGetRequest()``.

    Replaced by ``SystemHuntGroupGetResponse21()``.

    Attributes:
        anonymous_instead_of_private_clid: anonymousInsteadOfPrivateCLID
        remove_hunt_group_name_from_clid: removeHuntGroupNameFromCLID
        uniform_call_distribution_policy_scope: uniformCallDistributionPolicyScope
    """

    _ELEMENTS = (
        E(
            "anonymous_instead_of_private_clid", "anonymousInsteadOfPrivateCLID", bool,
            is_required=True,
        ),
        E(
            "remove_hunt_group_name_from_clid", "removeHuntGroupNameFromCLID", bool,
            is_required=True,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope", str, is_required=True,
        ),
    )

    anonymous_instead_of_private_clid: bool = Field(type=bool, required=True, mutable=False)
    remove_hunt_group_name_from_clid: bool = Field(type=bool, required=True, mutable=False)
    uniform_call_distribution_policy_scope: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemHuntGroupGetResponse21(OCIResponse):
    """
    Response to ``SystemHuntGroupGetRequest21()``.


    Attributes:
        remove_hunt_group_name_from_clid: removeHuntGroupNameFromCLID
        uniform_call_distribution_policy_scope: uniformCallDistributionPolicyScope
        allow_agent_device_initiated_forward: allowAgentDeviceInitiatedForward
    """

    _ELEMENTS = (
        E(
            "remove_hunt_group_name_from_clid", "removeHuntGroupNameFromCLID", bool,
            is_required=True,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope", str, is_required=True,
        ),
        E(
            "allow_agent_device_initiated_forward", "allowAgentDeviceInitiatedForward",
            bool, is_required=True,
        ),
    )

    remove_hunt_group_name_from_clid: bool = Field(type=bool, required=True, mutable=False)
    uniform_call_distribution_policy_scope: str = Field(
        type=str, required=True, mutable=False,
    )
    allow_agent_device_initiated_forward: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemInCallServiceActivationGetResponse(OCIResponse):
    """
    Response to ``SystemInCallServiceActivationGetRequest()``.

    Replaced by: ``SystemInCallServiceActivationGetResponse17()``

    Attributes:
        default_activation_digits: defaultActivationDigits
    """

    _ELEMENTS = (
        E("default_activation_digits", "defaultActivationDigits", str, is_required=True),
    )

    default_activation_digits: str = Field(type=str, required=True, mutable=False)


class SystemInCallServiceActivationGetResponse17(OCIResponse):
    """
    Response to ``SystemInCallServiceActivationGetRequest17()``.


    Attributes:
        default_flash_activation_digits: defaultFlashActivationDigits
        default_call_transfer_activation_digits: defaultCallTransferActivationDigits
    """

    _ELEMENTS = (
        E(
            "default_flash_activation_digits", "defaultFlashActivationDigits", str,
            is_required=True,
        ),
        E(
            "default_call_transfer_activation_digits",
            "defaultCallTransferActivationDigits", str, is_required=True,
        ),
    )

    default_flash_activation_digits: str = Field(type=str, required=True, mutable=False)
    default_call_transfer_activation_digits: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemIntegratedIMPGetResponse(OCIResponse):
    """
    Response to the ``SystemIntegratedIMPGetRequest()``.

    The response contains the system Integrated IMP service attributes.  Replaced by
    ``SystemIntegratedIMPGetResponse19()``.

    Attributes:
        service_domain: serviceDomain
        service_port: servicePort
        add_service_provider_in_imp_user_id: addServiceProviderInIMPUserId
    """

    _ELEMENTS = (
        E("service_domain", "serviceDomain", str),
        E("service_port", "servicePort", int),
        E(
            "add_service_provider_in_imp_user_id", "addServiceProviderInIMPUserId", bool,
            is_required=True,
        ),
    )

    service_domain: str = Field(type=str, required=False, mutable=False)
    service_port: int = Field(type=int, required=False, mutable=False)
    add_service_provider_in_imp_user_id: bool = Field(type=bool, required=True, mutable=False)


class SystemIntegratedIMPGetResponse19(OCIResponse):
    """
    Response to the ``SystemIntegratedIMPGetRequest19()``.

    The response contains the system Integrated IMP service attributes.  The following
    elements are only used in AS data mode: boshURL

    Attributes:
        service_domain: serviceDomain
        service_port: servicePort
        add_service_provider_in_imp_user_id: addServiceProviderInIMPUserId
        bosh_url: boshURL
    """

    _ELEMENTS = (
        E("service_domain", "serviceDomain", str),
        E("service_port", "servicePort", int),
        E(
            "add_service_provider_in_imp_user_id", "addServiceProviderInIMPUserId", bool,
            is_required=True,
        ),
        E("bosh_url", "boshURL", str),
    )

    service_domain: str = Field(type=str, required=False, mutable=False)
    service_port: int = Field(type=int, required=False, mutable=False)
    add_service_provider_in_imp_user_id: bool = Field(type=bool, required=True, mutable=False)
    bosh_url: str = Field(type=str, required=False, mutable=False)


class SystemIntegratedIMPGetResponse21(OCIResponse):
    """
    Response to the ``SystemIntegratedIMPGetRequest21()``.

    The response contains the system Integrated IMP service attributes.  The following
    elements are only used in AS data mode: boshURL

    Attributes:
        service_domain: serviceDomain
        service_port: servicePort
        add_service_provider_in_imp_user_id: addServiceProviderInIMPUserId
        bosh_url: boshURL
        allow_imp_password_retrieval: allowImpPasswordRetrieval
    """

    _ELEMENTS = (
        E("service_domain", "serviceDomain", str),
        E("service_port", "servicePort", int),
        E(
            "add_service_provider_in_imp_user_id", "addServiceProviderInIMPUserId", bool,
            is_required=True,
        ),
        E("bosh_url", "boshURL", str),
        E(
            "allow_imp_password_retrieval", "allowImpPasswordRetrieval", bool,
            is_required=True,
        ),
    )

    service_domain: str = Field(type=str, required=False, mutable=False)
    service_port: int = Field(type=int, required=False, mutable=False)
    add_service_provider_in_imp_user_id: bool = Field(type=bool, required=True, mutable=False)
    bosh_url: str = Field(type=str, required=False, mutable=False)
    allow_imp_password_retrieval: bool = Field(type=bool, required=True, mutable=False)


class SystemIntelligentNetworkServiceControlGetResponse14(OCIResponse):
    """
    Response to ``SystemIntelligentNetworkServiceControlGetRequest14()``.


    Attributes:
        pre_answer_action_timeout_seconds: preAnswerActionTimeoutSeconds
        msg_reject_no_voice_mail: msgRejectNoVoiceMail
        msg_reject_voice_mail: msgRejectVoiceMail
        msg_pre_answer_wait: msgPreAnswerWait
        msg_busy: msgBusy
        msg_release: msgRelease
        msg_no_answer: msgNoAnswer
        msg_ocp_reject: msgOCPReject
        msg_forward_loop: msgForwardLoop
        msg_temporarily_unavailable: msgTemporarilyUnavailable
    """

    _ELEMENTS = (
        E(
            "pre_answer_action_timeout_seconds", "preAnswerActionTimeoutSeconds", int,
            is_required=True,
        ),
        E("msg_reject_no_voice_mail", "msgRejectNoVoiceMail", str, is_required=True),
        E("msg_reject_voice_mail", "msgRejectVoiceMail", str, is_required=True),
        E("msg_pre_answer_wait", "msgPreAnswerWait", str, is_required=True),
        E("msg_busy", "msgBusy", str, is_required=True),
        E("msg_release", "msgRelease", str, is_required=True),
        E("msg_no_answer", "msgNoAnswer", str, is_required=True),
        E("msg_ocp_reject", "msgOCPReject", str, is_required=True),
        E("msg_forward_loop", "msgForwardLoop", str, is_required=True),
        E("msg_temporarily_unavailable", "msgTemporarilyUnavailable", str, is_required=True),
    )

    pre_answer_action_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    msg_reject_no_voice_mail: str = Field(type=str, required=True, mutable=False)
    msg_reject_voice_mail: str = Field(type=str, required=True, mutable=False)
    msg_pre_answer_wait: str = Field(type=str, required=True, mutable=False)
    msg_busy: str = Field(type=str, required=True, mutable=False)
    msg_release: str = Field(type=str, required=True, mutable=False)
    msg_no_answer: str = Field(type=str, required=True, mutable=False)
    msg_ocp_reject: str = Field(type=str, required=True, mutable=False)
    msg_forward_loop: str = Field(type=str, required=True, mutable=False)
    msg_temporarily_unavailable: str = Field(type=str, required=True, mutable=False)


class SystemInterceptUserGetResponse(OCIResponse):
    """
    Response to the ``SystemInterceptUserGetRequest()``.


    Attributes:
        emergency_and_repair_intercept: emergencyAndRepairIntercept
    """

    _ELEMENTS = (
        E(
            "emergency_and_repair_intercept", "emergencyAndRepairIntercept", bool,
            is_required=True,
        ),
    )

    emergency_and_repair_intercept: bool = Field(type=bool, required=True, mutable=False)


class SystemInventoryReportGetResponse(OCIResponse):
    """
    Response to ``SystemInventoryReportGetRequest()``.


    Attributes:
        default_from_address: defaultFromAddress
    """

    _ELEMENTS = (
        E("default_from_address", "defaultFromAddress", str, is_required=True),
    )

    default_from_address: str = Field(type=str, required=True, mutable=False)


class SystemLDAPIntegrationGetDirectoryResponse(OCIResponse):
    """
    Response to ``SystemLDAPIntegrationGetDirectoryRequest()``.


    Attributes:
        server_net_address: serverNetAddress
        server_port: serverPort
        search_base: searchBase
        use_ssl: useSSL
        require_authentication: requireAuthentication
        authenticated_dn: authenticatedDN
        authenticated_password: authenticatedPassword
        is_sort_enabled: isSortEnabled
        is_paged_result_enabled: isPagedResultEnabled
        search_filter: searchFilter
        include_search_attribute_in_search_filter: includeSearchAttributeInSearchFilter
        column1_attribute_name: column1AttributeName
        column2_attribute_name: column2AttributeName
        column3_attribute_name: column3AttributeName
        column4_attribute_name: column4AttributeName
        column1_label: column1Label
        column2_label: column2Label
        column3_label: column3Label
        column4_label: column4Label
        search_column: searchColumn
    """

    _ELEMENTS = (
        E("server_net_address", "serverNetAddress", str),
        E("server_port", "serverPort", int),
        E("search_base", "searchBase", str),
        E("use_ssl", "useSSL", bool, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("authenticated_dn", "authenticatedDN", str),
        E("authenticated_password", "authenticatedPassword", str),
        E("is_sort_enabled", "isSortEnabled", bool, is_required=True),
        E("is_paged_result_enabled", "isPagedResultEnabled", bool, is_required=True),
        E("search_filter", "searchFilter", str),
        E(
            "include_search_attribute_in_search_filter",
            "includeSearchAttributeInSearchFilter", bool, is_required=True,
        ),
        E("column1_attribute_name", "column1AttributeName", str, is_required=True),
        E("column2_attribute_name", "column2AttributeName", str),
        E("column3_attribute_name", "column3AttributeName", str),
        E("column4_attribute_name", "column4AttributeName", str),
        E("column1_label", "column1Label", str),
        E("column2_label", "column2Label", str),
        E("column3_label", "column3Label", str),
        E("column4_label", "column4Label", str),
        E("search_column", "searchColumn", int, is_required=True),
    )

    server_net_address: str = Field(type=str, required=False, mutable=False)
    server_port: int = Field(type=int, required=False, mutable=False)
    search_base: str = Field(type=str, required=False, mutable=False)
    use_ssl: bool = Field(type=bool, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    authenticated_dn: str = Field(type=str, required=False, mutable=False)
    authenticated_password: str = Field(type=str, required=False, mutable=False)
    is_sort_enabled: bool = Field(type=bool, required=True, mutable=False)
    is_paged_result_enabled: bool = Field(type=bool, required=True, mutable=False)
    search_filter: str = Field(type=str, required=False, mutable=False)
    include_search_attribute_in_search_filter: bool = Field(
        type=bool, required=True, mutable=False,
    )
    column1_attribute_name: str = Field(type=str, required=True, mutable=False)
    column2_attribute_name: str = Field(type=str, required=False, mutable=False)
    column3_attribute_name: str = Field(type=str, required=False, mutable=False)
    column4_attribute_name: str = Field(type=str, required=False, mutable=False)
    column1_label: str = Field(type=str, required=False, mutable=False)
    column2_label: str = Field(type=str, required=False, mutable=False)
    column3_label: str = Field(type=str, required=False, mutable=False)
    column4_label: str = Field(type=str, required=False, mutable=False)
    search_column: int = Field(type=int, required=True, mutable=False)


class SystemLanguageGetListResponse(OCIResponse):
    """
    Response to ``SystemLanguageGetListRequest()``.

    The language table column headings are: "Language", "Locale" and "Encoding".

    Attributes:
        default_language: defaultLanguage
        language_table: languageTable
    """

    _ELEMENTS = (
        E("default_language", "defaultLanguage", str, is_required=True),
        E(
            "language_table", "languageTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    default_language: str = Field(type=str, required=True, mutable=False)
    language_table: "list" = Field(type=list, required=True, mutable=False)


class SystemLegacyAutomaticCallbackGetLineTypeListResponse(OCIResponse):
    """
    Response to ``SystemLegacyAutomaticCallbackGetLineTypeListRequest()``.

    Returns a 3 column table with column headings: "Line Type", "Match" and "No Match".
    The possible values for the "Match" and "No Match" columns are "Accept" and "Deny".

    Attributes:
        line_type_table: lineTypeTable
    """

    _ELEMENTS = (
        E(
            "line_type_table", "lineTypeTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    line_type_table: "list" = Field(type=list, required=True, mutable=False)


class SystemLegacyAutomaticCallbackGetResponse(OCIResponse):
    """
    Response to ``SystemLegacyAutomaticCallbackGetRequest()``.


    Attributes:
        max_monitors_per_originator: maxMonitorsPerOriginator
        max_monitors_per_terminator: maxMonitorsPerTerminator
        t2_minutes: t2Minutes
        t4_seconds: t4Seconds
        t5_seconds: t5Seconds
        t6_minutes: t6Minutes
        t7_minutes: t7Minutes
        t8_seconds: t8Seconds
        t_ring_seconds: tRingSeconds
        t10_o_minutes: t10OMinutes
        t10_t_minutes: t10TMinutes
    """

    _ELEMENTS = (
        E("max_monitors_per_originator", "maxMonitorsPerOriginator", int, is_required=True),
        E("max_monitors_per_terminator", "maxMonitorsPerTerminator", int, is_required=True),
        E("t2_minutes", "t2Minutes", int, is_required=True),
        E("t4_seconds", "t4Seconds", int, is_required=True),
        E("t5_seconds", "t5Seconds", int, is_required=True),
        E("t6_minutes", "t6Minutes", int, is_required=True),
        E("t7_minutes", "t7Minutes", int, is_required=True),
        E("t8_seconds", "t8Seconds", int, is_required=True),
        E("t_ring_seconds", "tRingSeconds", int, is_required=True),
        E("t10_o_minutes", "t10OMinutes", int, is_required=True),
        E("t10_t_minutes", "t10TMinutes", int, is_required=True),
    )

    max_monitors_per_originator: int = Field(type=int, required=True, mutable=False)
    max_monitors_per_terminator: int = Field(type=int, required=True, mutable=False)
    t2_minutes: int = Field(type=int, required=True, mutable=False)
    t4_seconds: int = Field(type=int, required=True, mutable=False)
    t5_seconds: int = Field(type=int, required=True, mutable=False)
    t6_minutes: int = Field(type=int, required=True, mutable=False)
    t7_minutes: int = Field(type=int, required=True, mutable=False)
    t8_seconds: int = Field(type=int, required=True, mutable=False)
    t_ring_seconds: int = Field(type=int, required=True, mutable=False)
    t10_o_minutes: int = Field(type=int, required=True, mutable=False)
    t10_t_minutes: int = Field(type=int, required=True, mutable=False)


class SystemLicensingGetResponse(OCIResponse):
    """
    Response to ``SystemLicensingGetRequest()``.

    The license table columns are: "Name", "Licensed", "Used", "Available" and "Expiration
    Date".

    Replaced By: ``SystemLicensingGetResponse14sp3()``

    Attributes:
        license_strictness: licenseStrictness
        group_userlimit: groupUserlimit
        expiration_date: expirationDate
        host_id: hostId
        license_name: licenseName
        license_table: licenseTable
    """

    _ELEMENTS = (
        E("license_strictness", "licenseStrictness", str, is_required=True),
        E("group_userlimit", "groupUserlimit", int, is_required=True),
        E("expiration_date", "expirationDate", str),
        E("host_id", "hostId", str, is_array=True),
        E("license_name", "licenseName", str, is_array=True),
        E(
            "license_table", "licenseTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    license_strictness: str = Field(type=str, required=True, mutable=False)
    group_userlimit: int = Field(type=int, required=True, mutable=False)
    expiration_date: str = Field(type=str, required=False, mutable=False)
    host_id: "List[str]" = Field(type=list, required=False, mutable=False)
    license_name: "List[str]" = Field(type=list, required=False, mutable=False)
    license_table: "list" = Field(type=list, required=True, mutable=False)


class SystemLicensingGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemLicensingGetRequest14sp3()``.

    The subscriber license table columns are: "Name", "Licensed", "Used" and "Available".
    The group service license table columns are: "Name", "Licensed", "Used" and
    "Available". The virtual service license table columns are: "Name", "Licensed", "Used"
    and "Available". The user service license table columns are: "Name", "Licensed",
    "Used", "Used By Hosted Users", "Used By Trunk Users", "Available" and "Expiration
    Date". The system param license table columns are: "Name", "Licensed", "Used",
    Available".

    Attributes:
        license_strictness: licenseStrictness
        group_userlimit: groupUserlimit
        expiration_date: expirationDate
        host_id: hostId
        license_name: licenseName
        number_of_trunk_users: numberOfTrunkUsers
        subscriber_license_table: subscriberLicenseTable
        group_service_license_table: groupServiceLicenseTable
        virtual_service_license_table: virtualServiceLicenseTable
        user_service_license_table: userServiceLicenseTable
        system_param_license_table: systemParamLicenseTable
    """

    _ELEMENTS = (
        E("license_strictness", "licenseStrictness", str, is_required=True),
        E("group_userlimit", "groupUserlimit", int, is_required=True),
        E("expiration_date", "expirationDate", str),
        E("host_id", "hostId", str, is_array=True),
        E("license_name", "licenseName", str, is_array=True),
        E("number_of_trunk_users", "numberOfTrunkUsers", int, is_required=True),
        E(
            "subscriber_license_table", "subscriberLicenseTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
        E(
            "group_service_license_table", "groupServiceLicenseTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "virtual_service_license_table", "virtualServiceLicenseTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "user_service_license_table", "userServiceLicenseTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "system_param_license_table", "systemParamLicenseTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    license_strictness: str = Field(type=str, required=True, mutable=False)
    group_userlimit: int = Field(type=int, required=True, mutable=False)
    expiration_date: str = Field(type=str, required=False, mutable=False)
    host_id: "List[str]" = Field(type=list, required=False, mutable=False)
    license_name: "List[str]" = Field(type=list, required=False, mutable=False)
    number_of_trunk_users: int = Field(type=int, required=True, mutable=False)
    subscriber_license_table: "list" = Field(type=list, required=True, mutable=False)
    group_service_license_table: "list" = Field(type=list, required=True, mutable=False)
    virtual_service_license_table: "list" = Field(type=list, required=True, mutable=False)
    user_service_license_table: "list" = Field(type=list, required=True, mutable=False)
    system_param_license_table: "list" = Field(type=list, required=True, mutable=False)


class SystemLicensingGetSystemLicenseListResponse(OCIResponse):
    """
    Response to ``SystemLicensingGetSystemLicenseListRequest()``.

    Replaced by ``SystemLicensingGetSystemLicenseListResponse21()``

    Attributes:
        license: license
    """

    _ELEMENTS = (
        E("license", "license", str, is_array=True),
    )

    license: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemLicensingGetSystemLicenseListResponse21(OCIResponse):
    """
    Response to ``SystemLicensingGetSystemLicenseListRequest21()``.


    Attributes:
        license: license
    """

    _ELEMENTS = (
        E("license", "license", str, is_array=True),
    )

    license: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemLocationBasedCallingRestrictionsGetResponse(OCIResponse):
    """
    Response to ``SystemLocationBasedCallingRestrictionsGetRequest()``.


    Attributes:
        physical_location_indicator: physicalLocationIndicator
        enforce_msc_validation: enforceMscValidation
        enable_office_zone_announcement: enableOfficeZoneAnnouncement
    """

    _ELEMENTS = (
        E("physical_location_indicator", "physicalLocationIndicator", str, is_required=True),
        E("enforce_msc_validation", "enforceMscValidation", bool, is_required=True),
        E(
            "enable_office_zone_announcement", "enableOfficeZoneAnnouncement", bool,
            is_required=True,
        ),
    )

    physical_location_indicator: str = Field(type=str, required=True, mutable=False)
    enforce_msc_validation: bool = Field(type=bool, required=True, mutable=False)
    enable_office_zone_announcement: bool = Field(type=bool, required=True, mutable=False)


class SystemLocationBasedCallingRestrictionsGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemLocationBasedCallingRestrictionsGetRequest17sp3()``.


    Attributes:
        physical_location_indicator: physicalLocationIndicator
        enforce_msc_validation: enforceMscValidation
        enable_office_zone_announcement: enableOfficeZoneAnnouncement
        enhance_office_zone: enhanceOfficeZone
    """

    _ELEMENTS = (
        E("physical_location_indicator", "physicalLocationIndicator", str, is_required=True),
        E("enforce_msc_validation", "enforceMscValidation", bool, is_required=True),
        E(
            "enable_office_zone_announcement", "enableOfficeZoneAnnouncement", bool,
            is_required=True,
        ),
        E("enhance_office_zone", "enhanceOfficeZone", bool, is_required=True),
    )

    physical_location_indicator: str = Field(type=str, required=True, mutable=False)
    enforce_msc_validation: bool = Field(type=bool, required=True, mutable=False)
    enable_office_zone_announcement: bool = Field(type=bool, required=True, mutable=False)
    enhance_office_zone: bool = Field(type=bool, required=True, mutable=False)


class SystemMGCPDeviceTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemMGCPDeviceTypeGetListRequest()``.

    Contains a table of identity/ device profile types configured in the system.  The
    column headings are: "Device Type", "Profile", "Is Obsolete".

    Attributes:
        device_type_table: deviceTypeTable
    """

    _ELEMENTS = (
        E(
            "device_type_table", "deviceTypeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_type_table: "list" = Field(type=list, required=True, mutable=False)


class SystemMailParametersGetResponse(OCIResponse):
    """
    Response to ``SystemMailParametersGetListRequest()``.

    Contains a list of system Mail parameters.

    Attributes:
        primary_server_net_address: primaryServerNetAddress
        secondary_server_net_address: secondaryServerNetAddress
        default_from_address: defaultFromAddress
        default_subject: defaultSubject
        support_dnssrv_for_mail_server_access: supportDNSSRVForMailServerAccess
    """

    _ELEMENTS = (
        E("primary_server_net_address", "primaryServerNetAddress", str),
        E("secondary_server_net_address", "secondaryServerNetAddress", str),
        E("default_from_address", "defaultFromAddress", str, is_required=True),
        E("default_subject", "defaultSubject", str),
        E(
            "support_dnssrv_for_mail_server_access", "supportDNSSRVForMailServerAccess",
            bool, is_required=True,
        ),
    )

    primary_server_net_address: str = Field(type=str, required=False, mutable=False)
    secondary_server_net_address: str = Field(type=str, required=False, mutable=False)
    default_from_address: str = Field(type=str, required=True, mutable=False)
    default_subject: str = Field(type=str, required=False, mutable=False)
    support_dnssrv_for_mail_server_access: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemMaliciousCallTraceGetResponse(OCIResponse):
    """
    Response to the ``SystemMaliciousCallTraceGetRequest()``.

    The response contains the Malicious Call Trace system parameters and the list of users
    that use the Malicious Call Trace feature.  The column headings are "Service Provider
    Id", "Group Id", "User Id", "Last Name", "First Name", "Phone Number", "Trace Type",
    "Status", "Hiragana Last Name" and "Hiragana First Name", "Extension", "Department",
    "Email Address".

    Attributes:
        play_mct_warning_announcement: playMCTWarningAnnouncement
        user_table: userTable
    """

    _ELEMENTS = (
        E(
            "play_mct_warning_announcement", "playMCTWarningAnnouncement", bool,
            is_required=True,
        ),
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    play_mct_warning_announcement: bool = Field(type=bool, required=True, mutable=False)
    user_table: "list" = Field(type=list, required=True, mutable=False)


class SystemMaliciousCallTraceGetUserListResponse(OCIResponse):
    """
    Response to ``SystemMaliciousCallTraceGetUserListRequest()``.

    The column headings are "Service Provider Id", "Group Id", "User Id", "Last Name",
    "First Name", "Phone Number", "Trace Type", "Status", "Hiragana Last Name" and
    "Hiragana First Name".

    Replaced By: ``SystemMaliciousCallTraceGetResponse()``

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class SystemMediaGetListResponse(OCIResponse):
    """
    Response to ``SystemMediaGetListRequest()``.

    The column headings are "Media Name", "Codec", "Media Type", "Bandwidth Enforcement
    Type" and "Bandwidth".

    Attributes:
        media_table: mediaTable
    """

    _ELEMENTS = (
        E(
            "media_table", "mediaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    media_table: "list" = Field(type=list, required=True, mutable=False)


class SystemMediaServerGetListResponse(OCIResponse):
    """
    Response to ``SystemMediaServerGetListRequest()``.

    The Media Server table column headings are: "Net Address", "Port", "Transport",
    "Description".

    Attributes:
        media_server_table: mediaServerTable
    """

    _ELEMENTS = (
        E(
            "media_server_table", "mediaServerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    media_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemMediaServerParametersGetResponse(OCIResponse):
    """
    Response to ``SystemMediaServerParametersGetListRequest()``.

    Contains a list of system Media Server parameters.

    Attributes:
        media_server_response_timer_milliseconds: mediaServerResponseTimerMilliseconds
        media_server_selection_route_timer_milliseconds:
            mediaServerSelectionRouteTimerMilliseconds
        use_static_media_server_device: useStaticMediaServerDevice
    """

    _ELEMENTS = (
        E(
            "media_server_response_timer_milliseconds",
            "mediaServerResponseTimerMilliseconds", int, is_required=True,
        ),
        E(
            "media_server_selection_route_timer_milliseconds",
            "mediaServerSelectionRouteTimerMilliseconds", int, is_required=True,
        ),
        E(
            "use_static_media_server_device", "useStaticMediaServerDevice", bool,
            is_required=True,
        ),
    )

    media_server_response_timer_milliseconds: int = Field(
        type=int, required=True, mutable=False,
    )
    media_server_selection_route_timer_milliseconds: int = Field(
        type=int, required=True, mutable=False,
    )
    use_static_media_server_device: bool = Field(type=bool, required=True, mutable=False)


class SystemMediaSetGetListResponse(OCIResponse):
    """
    Response to ``SystemMediaSetGetRequest()``.


    Attributes:
        media_set_name: mediaSetName
    """

    _ELEMENTS = (
        E("media_set_name", "mediaSetName", str, is_array=True),
    )

    media_set_name: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemMediaSetGetResponse(OCIResponse):
    """
    Response to ``SystemMediaSetGetRequest()``.

    Returns a list of media names in the set.

    Attributes:
        media_name: mediaName
    """

    _ELEMENTS = (
        E("media_name", "mediaName", str, is_required=True),
    )

    media_name: str = Field(type=str, required=True, mutable=False)


class SystemMeetMeConferencingGetResponse(OCIResponse):
    """
    Response to ``SystemMeetMeConferencingGetRequest()``.


    Attributes:
        conference_id_length: conferenceIdLength
        moderator_pin_length: moderatorPinLength
        enable_conference_end_date_restriction: enableConferenceEndDateRestriction
        conference_end_date_restriction_months: conferenceEndDateRestrictionMonths
        delete_expired_conferences_after_hold_period:
            deleteExpiredConferencesAfterHoldPeriod
        expired_conference_hold_period_days: expiredConferenceHoldPeriodDays
        recording_web_app_url: recordingWebAppURL
    """

    _ELEMENTS = (
        E("conference_id_length", "conferenceIdLength", int, is_required=True),
        E("moderator_pin_length", "moderatorPinLength", int, is_required=True),
        E(
            "enable_conference_end_date_restriction",
            "enableConferenceEndDateRestriction", bool, is_required=True,
        ),
        E(
            "conference_end_date_restriction_months",
            "conferenceEndDateRestrictionMonths", int, is_required=True,
        ),
        E(
            "delete_expired_conferences_after_hold_period",
            "deleteExpiredConferencesAfterHoldPeriod", bool, is_required=True,
        ),
        E(
            "expired_conference_hold_period_days", "expiredConferenceHoldPeriodDays", int,
            is_required=True,
        ),
        E("recording_web_app_url", "recordingWebAppURL", str),
    )

    conference_id_length: int = Field(type=int, required=True, mutable=False)
    moderator_pin_length: int = Field(type=int, required=True, mutable=False)
    enable_conference_end_date_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    conference_end_date_restriction_months: int = Field(
        type=int, required=True, mutable=False,
    )
    delete_expired_conferences_after_hold_period: bool = Field(
        type=bool, required=True, mutable=False,
    )
    expired_conference_hold_period_days: int = Field(type=int, required=True, mutable=False)
    recording_web_app_url: str = Field(type=str, required=False, mutable=False)


class SystemMeetMeConferencingGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemMeetMeConferencingGetRequest17sp3()``.


    Attributes:
        conference_id_length: conferenceIdLength
        moderator_pin_length: moderatorPinLength
        enable_conference_end_date_restriction: enableConferenceEndDateRestriction
        conference_end_date_restriction_months: conferenceEndDateRestrictionMonths
        delete_expired_conferences_after_hold_period:
            deleteExpiredConferencesAfterHoldPeriod
        expired_conference_hold_period_days: expiredConferenceHoldPeriodDays
        recording_web_app_url: recordingWebAppURL
        recording_file_format: recordingFileFormat
    """

    _ELEMENTS = (
        E("conference_id_length", "conferenceIdLength", int, is_required=True),
        E("moderator_pin_length", "moderatorPinLength", int, is_required=True),
        E(
            "enable_conference_end_date_restriction",
            "enableConferenceEndDateRestriction", bool, is_required=True,
        ),
        E(
            "conference_end_date_restriction_months",
            "conferenceEndDateRestrictionMonths", int, is_required=True,
        ),
        E(
            "delete_expired_conferences_after_hold_period",
            "deleteExpiredConferencesAfterHoldPeriod", bool, is_required=True,
        ),
        E(
            "expired_conference_hold_period_days", "expiredConferenceHoldPeriodDays", int,
            is_required=True,
        ),
        E("recording_web_app_url", "recordingWebAppURL", str),
        E("recording_file_format", "recordingFileFormat", str, is_required=True),
    )

    conference_id_length: int = Field(type=int, required=True, mutable=False)
    moderator_pin_length: int = Field(type=int, required=True, mutable=False)
    enable_conference_end_date_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    conference_end_date_restriction_months: int = Field(
        type=int, required=True, mutable=False,
    )
    delete_expired_conferences_after_hold_period: bool = Field(
        type=bool, required=True, mutable=False,
    )
    expired_conference_hold_period_days: int = Field(type=int, required=True, mutable=False)
    recording_web_app_url: str = Field(type=str, required=False, mutable=False)
    recording_file_format: str = Field(type=str, required=True, mutable=False)


class SystemMigratedUsersGetListResponse(OCIResponse):
    """
    Response to ``SystemMigratedUsersGetListRequest()``.


    Attributes:
        user_id: userId
    """

    _ELEMENTS = (
        E("user_id", "userId", str, is_array=True),
    )

    user_id: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemMultimediaPolicyGetResponse(OCIResponse):
    """
    Response to ``SystemMultimediaPolicyGetRequest()``

    Attributes:
        restrict_non_audio_video_media_types: restrictNonAudioVideoMediaTypes
    """

    _ELEMENTS = (
        E(
            "restrict_non_audio_video_media_types", "restrictNonAudioVideoMediaTypes",
            bool, is_required=True,
        ),
    )

    restrict_non_audio_video_media_types: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemMusicOnHoldGetResponse(OCIResponse):
    """
    Response to ``SystemMusicOnHoldGetRequest()``.


    Attributes:
        delay_milliseconds: delayMilliseconds
    """

    _ELEMENTS = (
        E("delay_milliseconds", "delayMilliseconds", int, is_required=True),
    )

    delay_milliseconds: int = Field(type=int, required=True, mutable=False)


class SystemNetworkClassOfServiceGetAssignedServiceProviderListResponse(OCIResponse):
    """
    Response to the
    ``SystemNetworkClassOfServiceGetAssignedServiceProviderListRequest()``.

    The response contains a table of all Service Providers that have the given Network
    Class of Service assigned.  The column headings are "Service Provider Id", "Service
    Provider Name" and "Is Enterprise".

    Attributes:
        service_provider_table: serviceProviderTable
    """

    _ELEMENTS = (
        E(
            "service_provider_table", "serviceProviderTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_provider_table: "list" = Field(type=list, required=True, mutable=False)


class SystemNetworkClassOfServiceGetCommunicationBarringProfileUsageListResponse(OCIResponse):
    """
    Response to the
    ``SystemNetworkClassOfServiceGetCommunicationBarringProfileUsageListRequest()``.

    The response contains a table of all Network Classes of Service that contain the
    specific Communication Barring Profile.  The column headings are "Name" and
    "Description"

    Attributes:
        network_class_of_service_table: networkClassOfServiceTable
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table", "networkClassOfServiceTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    network_class_of_service_table: "list" = Field(type=list, required=True, mutable=False)


class SystemNetworkClassOfServiceGetListResponse(OCIResponse):
    """
    Response to the ``SystemNetworkClassOfServiceGetListRequest()``.

    The response contains a table of all Network Classes of Service in the system.  The
    column headings are "Name" and "Description"

    Attributes:
        network_class_of_service_table: networkClassOfServiceTable
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table", "networkClassOfServiceTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    network_class_of_service_table: "list" = Field(type=list, required=True, mutable=False)


class SystemNetworkDeviceMonitorParametersGetResponse(OCIResponse):
    """
    Response to ``SystemNetworkDeviceMonitorParametersGetListRequest()``.

    Contains a list of system Network Device Polling parameters.

    Attributes:
        polling_interval_minutes: pollingIntervalMinutes
        failed_polling_interval_minutes: failedPollingIntervalMinutes
    """

    _ELEMENTS = (
        E("polling_interval_minutes", "pollingIntervalMinutes", int, is_required=True),
        E(
            "failed_polling_interval_minutes", "failedPollingIntervalMinutes", int,
            is_required=True,
        ),
    )

    polling_interval_minutes: int = Field(type=int, required=True, mutable=False)
    failed_polling_interval_minutes: int = Field(type=int, required=True, mutable=False)


class SystemNetworkProgressionGetResponse(OCIResponse):
    """
    Response to ``SystemNetworkProgressionGetRequest()``.


    Attributes:
        is_active: isActive
        wait_period_seconds: waitPeriodSeconds
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("wait_period_seconds", "waitPeriodSeconds", int, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    wait_period_seconds: int = Field(type=int, required=True, mutable=False)


class SystemNetworkRoutingServerGetListResponse(OCIResponse):
    """
    Response to ``SystemNetworkRoutingServerGetListRequest()``.

    The routing Network Server table column headings are: "Net Address", "Port",
    "Transport", "Poll", "OpState", "Description".

    Attributes:
        network_routing_server_table: networkRoutingServerTable
    """

    _ELEMENTS = (
        E(
            "network_routing_server_table", "networkRoutingServerTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    network_routing_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemNetworkServerSyncParametersGetResponse(OCIResponse):
    """
    Response to ``SystemNetworkServerSyncParametersGetListRequest()``.

    Contains a list of system Network Server Sync parameters.

    Attributes:
        enable_sync: enableSync
    """

    _ELEMENTS = (
        E("enable_sync", "enableSync", bool, is_required=True),
    )

    enable_sync: bool = Field(type=bool, required=True, mutable=False)


class SystemNetworkServerSyncParametersGetResponse14sp2(OCIResponse):
    """
    Response to ``SystemNetworkServerSyncParametersGetRequest14sp2()``.

    Contains a list of system Network Server Sync parameters.

    Replaced By: ``SystemNetworkServerSyncParametersGetResponse16()``

    Attributes:
        enable_sync: enableSync
        sync_line_ports: syncLinePorts
    """

    _ELEMENTS = (
        E("enable_sync", "enableSync", bool, is_required=True),
        E("sync_line_ports", "syncLinePorts", bool, is_required=True),
    )

    enable_sync: bool = Field(type=bool, required=True, mutable=False)
    sync_line_ports: bool = Field(type=bool, required=True, mutable=False)


class SystemNetworkServerSyncParametersGetResponse16(OCIResponse):
    """
    Response to ``SystemNetworkServerSyncParametersGetRequest16()``.

    Contains a list of system Network Server Sync parameters.

    Replaced By: ``SystemNetworkServerSyncParametersGetResponse17sp4()``

    Attributes:
        enable_sync: enableSync
        sync_line_ports: syncLinePorts
        sync_device_management_info: syncDeviceManagementInfo
    """

    _ELEMENTS = (
        E("enable_sync", "enableSync", bool, is_required=True),
        E("sync_line_ports", "syncLinePorts", bool, is_required=True),
        E("sync_device_management_info", "syncDeviceManagementInfo", bool, is_required=True),
    )

    enable_sync: bool = Field(type=bool, required=True, mutable=False)
    sync_line_ports: bool = Field(type=bool, required=True, mutable=False)
    sync_device_management_info: bool = Field(type=bool, required=True, mutable=False)


class SystemNetworkServerSyncParametersGetResponse17sp4(OCIResponse):
    """
    Response to ``SystemNetworkServerSyncParametersGetRequest17sp4()``.

    Contains a list of system Network Server Sync parameters.  The following elements are
    only used in AS data mode: syncTrunkGroups

    Attributes:
        enable_sync: enableSync
        sync_line_ports: syncLinePorts
        sync_device_management_info: syncDeviceManagementInfo
        sync_trunk_groups: syncTrunkGroups
    """

    _ELEMENTS = (
        E("enable_sync", "enableSync", bool, is_required=True),
        E("sync_line_ports", "syncLinePorts", bool, is_required=True),
        E("sync_device_management_info", "syncDeviceManagementInfo", bool, is_required=True),
        E("sync_trunk_groups", "syncTrunkGroups", bool, is_required=True),
    )

    enable_sync: bool = Field(type=bool, required=True, mutable=False)
    sync_line_ports: bool = Field(type=bool, required=True, mutable=False)
    sync_device_management_info: bool = Field(type=bool, required=True, mutable=False)
    sync_trunk_groups: bool = Field(type=bool, required=True, mutable=False)


class SystemNetworkSynchingServerGetListResponse(OCIResponse):
    """
    Response to ``SystemNetworkSynchingServerGetListRequest()``.

    The Network Server table column headings are: "Net Address", "Port", "Description".

    Attributes:
        preferred_network_server_net_address: preferredNetworkServerNetAddress
        network_synching_server_table: networkSynchingServerTable
    """

    _ELEMENTS = (
        E("preferred_network_server_net_address", "preferredNetworkServerNetAddress", str),
        E(
            "network_synching_server_table", "networkSynchingServerTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    preferred_network_server_net_address: str = Field(type=str, required=False, mutable=False)
    network_synching_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemNumberActivationGetResponse(OCIResponse):
    """
    Response to ``SystemNumberActivationGetRequest()``.

    Contains the system number activation setting.

    Attributes:
        use_number_activation: useNumberActivation
    """

    _ELEMENTS = (
        E("use_number_activation", "useNumberActivation", bool, is_required=True),
    )

    use_number_activation: bool = Field(type=bool, required=True, mutable=False)


class SystemNumberActivationGetResponse18sp1(OCIResponse):
    """
    Response to ``SystemNumberActivationGetRequest18sp1()``.

    Contains the system number activation setting.

    Attributes:
        number_activation_mode: numberActivationMode
    """

    _ELEMENTS = (
        E("number_activation_mode", "numberActivationMode", str, is_required=True),
    )

    number_activation_mode: str = Field(type=str, required=True, mutable=False)


class SystemNumberActivationGetResponse21(OCIResponse):
    """
    Response to ``SystemNumberActivationGetRequest21()``.

    Contains the system number activation and enterprise trunk number range activation
    setting.

    Attributes:
        number_activation_mode: numberActivationMode
        enable_enterprise_trunk_number_range_activation:
            enableEnterpriseTrunkNumberRangeActivation
    """

    _ELEMENTS = (
        E("number_activation_mode", "numberActivationMode", str, is_required=True),
        E(
            "enable_enterprise_trunk_number_range_activation",
            "enableEnterpriseTrunkNumberRangeActivation", bool, is_required=True,
        ),
    )

    number_activation_mode: str = Field(type=str, required=True, mutable=False)
    enable_enterprise_trunk_number_range_activation: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemNumberPortabilityQueryDigitPatternGetListResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryDigitPatternGetListRequest()``.

    Contains a table with column headings: "Digit Pattern", "Status".

    Attributes:
        status_digit_pattern_table: statusDigitPatternTable
    """

    _ELEMENTS = (
        E(
            "status_digit_pattern_table", "statusDigitPatternTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    status_digit_pattern_table: "list" = Field(type=list, required=True, mutable=False)


class SystemNumberPortabilityQueryDigitPatternGetResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryDigitPatternGetRequest()``.


    Attributes:
        status: status
    """

    _ELEMENTS = (
        E("status", "status", str, is_required=True),
    )

    status: str = Field(type=str, required=True, mutable=False)


class SystemNumberPortabilityQueryGetResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryGetRequest()``.

    Returns system Number Portability Query Parameters.

    Attributes:
        continue_call_as_dialed_on_timeout_or_error: continueCallAsDialedOnTimeoutOrError
        number_portability_name_lookup_timeout_milliseconds:
            numberPortabilityNameLookupTimeoutMilliseconds
    """

    _ELEMENTS = (
        E(
            "continue_call_as_dialed_on_timeout_or_error",
            "continueCallAsDialedOnTimeoutOrError", bool, is_required=True,
        ),
        E(
            "number_portability_name_lookup_timeout_milliseconds",
            "numberPortabilityNameLookupTimeoutMilliseconds", int, is_required=True,
        ),
    )

    continue_call_as_dialed_on_timeout_or_error: bool = Field(
        type=bool, required=True, mutable=False,
    )
    number_portability_name_lookup_timeout_milliseconds: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemNumberPortabilityQueryStatusGetListResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryStatusGetListRequest()``.

    Contains a table with column headings: "Status and Treatment File Name".

    Attributes:
        status_table: statusTable
    """

    _ELEMENTS = (
        E(
            "status_table", "statusTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    status_table: "list" = Field(type=list, required=True, mutable=False)


class SystemNumberPortabilityQueryStatusGetResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryStatusGetRequest()``.


    Attributes:
        treatment_file_name: treatmentFileName
    """

    _ELEMENTS = (
        E("treatment_file_name", "treatmentFileName", str),
    )

    treatment_file_name: str = Field(type=str, required=False, mutable=False)


class SystemOCICallControlApplicationGetACLListResponse(OCIResponse):
    """
    Response to ``SystemOCICallControlApplicationGetACLListRequest()``.

    The table columns are: "Net Address" and "Description".

    Attributes:
        acl_table: aclTable
    """

    _ELEMENTS = (
        E("acl_table", "aclTable", list, is_complex=True, is_required=True, is_table=True),
    )

    acl_table: "list" = Field(type=list, required=True, mutable=False)


class SystemOCICallControlApplicationGetListResponse(OCIResponse):
    """
    Response to ``SystemOCICallControlApplicationGetListRequest()``.

    The table columns are: "Application Id", "Enabled System Wide", "Description"
    "Notification Timeout Seconds" and "Max Event Channels Per Set".

    Attributes:
        app_table: appTable
    """

    _ELEMENTS = (
        E("app_table", "appTable", list, is_complex=True, is_required=True, is_table=True),
    )

    app_table: "list" = Field(type=list, required=True, mutable=False)


class SystemOCICallControlGetACLListResponse(OCIResponse):
    """
    Response to ``SystemOCICallControlGetACLListRequest()``.

    The table columns are: "Net Address" and "Description".

    Attributes:
        acl_table: aclTable
    """

    _ELEMENTS = (
        E("acl_table", "aclTable", list, is_complex=True, is_required=True, is_table=True),
    )

    acl_table: "list" = Field(type=list, required=True, mutable=False)


class SystemOCIGetACLListResponse(OCIResponse):
    """
    Response to ``SystemOCIGetACLListRequest()``.

    Returns a 2 coulmn table with column headings: "Net Address" and "Description".

    Attributes:
        acl_table: aclTable
    """

    _ELEMENTS = (
        E("acl_table", "aclTable", list, is_complex=True, is_required=True, is_table=True),
    )

    acl_table: "list" = Field(type=list, required=True, mutable=False)


class SystemOCIReportingGetACLListResponse(OCIResponse):
    """
    Response to ``SystemOCIReportingACLListGetRequest()``.

    Contains a table with one row per access control list entry.  The table columns are
    "Net Address", "Description" and "Restrict Messages".

    Attributes:
        oci_reporting_acl_table: ociReportingACLTable
    """

    _ELEMENTS = (
        E(
            "oci_reporting_acl_table", "ociReportingACLTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    oci_reporting_acl_table: "list" = Field(type=list, required=True, mutable=False)


class SystemOCIReportingGetMessageNameListResponse(OCIResponse):
    """
    Response to ``SystemOCIReportingGetMessageNameListRequest()``.


    Attributes:
        message_name_starts_with: messageNameStartsWith
    """

    _ELEMENTS = (
        E("message_name_starts_with", "messageNameStartsWith", str, is_array=True),
    )

    message_name_starts_with: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemOCIReportingParametersGetResponse(OCIResponse):
    """
    Response to ``SystemOCIReportingParametersGetListRequest()``.

    Contains a list of system OCI Reporting parameters.

    Attributes:
        server_port: serverPort
        enable_connection_ping: enableConnectionPing
        connection_ping_interval_seconds: connectionPingIntervalSeconds
        alter_passwords: alterPasswords
    """

    _ELEMENTS = (
        E("server_port", "serverPort", int, is_required=True),
        E("enable_connection_ping", "enableConnectionPing", bool, is_required=True),
        E(
            "connection_ping_interval_seconds", "connectionPingIntervalSeconds", int,
            is_required=True,
        ),
        E("alter_passwords", "alterPasswords", bool, is_required=True),
    )

    server_port: int = Field(type=int, required=True, mutable=False)
    enable_connection_ping: bool = Field(type=bool, required=True, mutable=False)
    connection_ping_interval_seconds: int = Field(type=int, required=True, mutable=False)
    alter_passwords: bool = Field(type=bool, required=True, mutable=False)


class SystemOCIReportingParametersGetResponse14sp1(OCIResponse):
    """
    Response to ``SystemOCIReportingParametersGetRequest14sp1()``.

    Contains a list of system OCI Reporting parameters.

    Attributes:
        server_port: serverPort
        enable_connection_ping: enableConnectionPing
        connection_ping_interval_seconds: connectionPingIntervalSeconds
        alter_passwords: alterPasswords
        enable_public_identity_reporting: enablePublicIdentityReporting
    """

    _ELEMENTS = (
        E("server_port", "serverPort", int, is_required=True),
        E("enable_connection_ping", "enableConnectionPing", bool, is_required=True),
        E(
            "connection_ping_interval_seconds", "connectionPingIntervalSeconds", int,
            is_required=True,
        ),
        E("alter_passwords", "alterPasswords", bool, is_required=True),
        E(
            "enable_public_identity_reporting", "enablePublicIdentityReporting", bool,
            is_required=True,
        ),
    )

    server_port: int = Field(type=int, required=True, mutable=False)
    enable_connection_ping: bool = Field(type=bool, required=True, mutable=False)
    connection_ping_interval_seconds: int = Field(type=int, required=True, mutable=False)
    alter_passwords: bool = Field(type=bool, required=True, mutable=False)
    enable_public_identity_reporting: bool = Field(type=bool, required=True, mutable=False)


class SystemOfficeZoneGetAssignedServiceProviderListResponse(OCIResponse):
    """
    Response to the ``SystemOfficeZoneGetAssignedServiceProviderListRequest()``.

    The response contains a table of all Service Providers that have the given Office Zone
    assigned.  The column headings are "Service Provider Id", "Service Provider Name" and
    "Is Enterprise".

    Attributes:
        service_provider_table: serviceProviderTable
    """

    _ELEMENTS = (
        E(
            "service_provider_table", "serviceProviderTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_provider_table: "list" = Field(type=list, required=True, mutable=False)


class SystemOfficeZoneGetListResponse(OCIResponse):
    """
    Response to the ``SystemOfficeZoneGetListRequest()``.

    The response contains a table of all Office Zones in the system.  The column headings
    are "Name" and "Description"

    Attributes:
        office_zone_table: officeZoneTable
    """

    _ELEMENTS = (
        E(
            "office_zone_table", "officeZoneTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    office_zone_table: "list" = Field(type=list, required=True, mutable=False)


class SystemOfficeZoneGetResponse(OCIResponse):
    """
    Response to the ``SystemOfficeZoneGetRequest()``.

    The response contains the Office Zone information.

    Attributes:
        description: description
        zone_name: zoneName
        primary_zone_name: primaryZoneName
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("zone_name", "zoneName", str, is_required=True),
        E("primary_zone_name", "primaryZoneName", str, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    zone_name: str = Field(type=str, required=True, mutable=False)
    primary_zone_name: str = Field(type=str, required=True, mutable=False)


class SystemOfficeZoneGetZoneUsageListResponse(OCIResponse):
    """
    Response to the ``SystemOfficeZoneGetZoneUsageListRequest()``.

    The response contains a table of all Office Zones that contain the specific Zone.  The
    column headings are "Name" and "Description"

    Attributes:
        office_zone_table: officeZoneTable
    """

    _ELEMENTS = (
        E(
            "office_zone_table", "officeZoneTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    office_zone_table: "list" = Field(type=list, required=True, mutable=False)


class SystemOutgoingCallingPlanCallTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemOutgoingCallingPlanCallTypeGetListRequest()``.


    Attributes:
        call_type: callType
    """

    _ELEMENTS = (
        E("call_type", "callType", str, is_required=True),
    )

    call_type: str = Field(type=str, required=True, mutable=False)


class SystemOutgoingCallingPlanCallTypeGetMappingListResponse(OCIResponse):
    """
    Response to ``SystemOutgoingCallingPlanCallTypeGetMappingListRequest()``.

    The table columns are: "Country Code", "Digit Map" and "Call Type".

    Attributes:
        call_type_mapping: callTypeMapping
    """

    _ELEMENTS = (
        E(
            "call_type_mapping", "callTypeMapping", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    call_type_mapping: "list" = Field(type=list, required=True, mutable=False)


class SystemOutgoingCallingPlanGetResponse(OCIResponse):
    """
    Response to ``SystemOutgoingCallingPlanGetRequest()``.


    Attributes:
        direct_transfer_screening: directTransferScreening
    """

    _ELEMENTS = (
        E("direct_transfer_screening", "directTransferScreening", bool, is_required=True),
    )

    direct_transfer_screening: bool = Field(type=bool, required=True, mutable=False)


class SystemOutgoingCallingPlanGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemOutgoingCallingPlanGetRequest17sp3()``.


    Attributes:
        direct_transfer_screening: directTransferScreening
        enable_enhanced_toll_call_typing: enableEnhancedTollCallTyping
    """

    _ELEMENTS = (
        E("direct_transfer_screening", "directTransferScreening", bool, is_required=True),
        E(
            "enable_enhanced_toll_call_typing", "enableEnhancedTollCallTyping", bool,
            is_required=True,
        ),
    )

    direct_transfer_screening: bool = Field(type=bool, required=True, mutable=False)
    enable_enhanced_toll_call_typing: bool = Field(type=bool, required=True, mutable=False)


class SystemPasswordRulesGetResponse13mp2(OCIResponse):
    """
    Response to ``SystemPasswordRulesGetRequest13mp2()``.

    Contains the password rules for System administrator, Provisioning Administrator,
    and/or Service Provider Administrator, Group Administrator, Department Administrator,
    user.

    Replaced By : ``SystemPasswordRulesGetResponse16()``

    Attributes:
        rules_apply_to: rulesApplyTo
        allow_web_add_external_authentication_users:
            allowWebAddExternalAuthenticationUsers
        disallow_user_id: disallowUserId
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        max_failed_login_attempts: maxFailedLoginAttempts
        password_expires_days: passwordExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
        disallow_rules_modification: disallowRulesModification
    """

    _ELEMENTS = (
        E("rules_apply_to", "rulesApplyTo", str, is_required=True),
        E(
            "allow_web_add_external_authentication_users",
            "allowWebAddExternalAuthenticationUsers", bool, is_required=True,
        ),
        E("disallow_user_id", "disallowUserId", bool, is_required=True),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int, is_required=True),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
        E("disallow_rules_modification", "disallowRulesModification", bool, is_required=True),
    )

    rules_apply_to: str = Field(type=str, required=True, mutable=False)
    allow_web_add_external_authentication_users: bool = Field(
        type=bool, required=True, mutable=False,
    )
    disallow_user_id: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    max_failed_login_attempts: int = Field(type=int, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=True, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)
    disallow_rules_modification: bool = Field(type=bool, required=True, mutable=False)


class SystemPasswordRulesGetResponse16(OCIResponse):
    """
    Response to ``SystemPasswordRulesGetRequest16()``.

    Contains the password rules for System administrator, Provisioning Administrator,
    and/or Service Provider Administrator, Group Administrator, Department Administrator,
    user.

    Attributes:
        rules_apply_to: rulesApplyTo
        allow_web_add_external_authentication_users:
            allowWebAddExternalAuthenticationUsers
        disallow_user_id: disallowUserId
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        max_failed_login_attempts: maxFailedLoginAttempts
        password_expires_days: passwordExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
        disallow_rules_modification: disallowRulesModification
        disallow_previous_passwords: disallowPreviousPasswords
        number_of_previous_passwords: numberOfPreviousPasswords
    """

    _ELEMENTS = (
        E("rules_apply_to", "rulesApplyTo", str, is_required=True),
        E(
            "allow_web_add_external_authentication_users",
            "allowWebAddExternalAuthenticationUsers", bool, is_required=True,
        ),
        E("disallow_user_id", "disallowUserId", bool, is_required=True),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int, is_required=True),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
        E("disallow_rules_modification", "disallowRulesModification", bool, is_required=True),
        E("disallow_previous_passwords", "disallowPreviousPasswords", bool, is_required=True),
        E("number_of_previous_passwords", "numberOfPreviousPasswords", int, is_required=True),
    )

    rules_apply_to: str = Field(type=str, required=True, mutable=False)
    allow_web_add_external_authentication_users: bool = Field(
        type=bool, required=True, mutable=False,
    )
    disallow_user_id: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    max_failed_login_attempts: int = Field(type=int, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=True, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)
    disallow_rules_modification: bool = Field(type=bool, required=True, mutable=False)
    disallow_previous_passwords: bool = Field(type=bool, required=True, mutable=False)
    number_of_previous_passwords: int = Field(type=int, required=True, mutable=False)


class SystemPerformanceMeasurementReportingGetFileServerListResponse(OCIResponse):
    """
    Response to ``SystemPerformanceMeasurementReportingGetFileServerListRequest()``.

    The table columns are: "FTP Host Net Address", "FTP User Id", "Passive FTP".

    Attributes:
        file_server_table: fileServerTable
    """

    _ELEMENTS = (
        E(
            "file_server_table", "fileServerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    file_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemPerformanceMeasurementReportingGetResponse(OCIResponse):
    """
    Response to ``SystemPerformanceMeasurementReportingGetRequest()``.


    Attributes:
        is_active: isActive
        reporting_interval: reportingInterval
        reset_measurements_after_each_report: resetMeasurementsAfterEachReport
        report_enterprise: reportEnterprise
        report_service_provider: reportServiceProvider
        report_device: reportDevice
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("reporting_interval", "reportingInterval", int, is_required=True),
        E(
            "reset_measurements_after_each_report", "resetMeasurementsAfterEachReport",
            bool, is_required=True,
        ),
        E("report_enterprise", "reportEnterprise", bool, is_required=True),
        E("report_service_provider", "reportServiceProvider", bool, is_required=True),
        E("report_device", "reportDevice", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    reporting_interval: int = Field(type=int, required=True, mutable=False)
    reset_measurements_after_each_report: bool = Field(
        type=bool, required=True, mutable=False,
    )
    report_enterprise: bool = Field(type=bool, required=True, mutable=False)
    report_service_provider: bool = Field(type=bool, required=True, mutable=False)
    report_device: bool = Field(type=bool, required=True, mutable=False)


class SystemPersonalAssistantGetResponse(OCIResponse):
    """
    Response to the ``SystemPersonalAssistantGetRequest()``.

    Returns system Personal Assistant Parameters.

    Attributes:
        transfer_to_attendant_key: transferToAttendantKey
        transfer_to_voice_messaging_key: transferToVoiceMessagingKey
    """

    _ELEMENTS = (
        E("transfer_to_attendant_key", "transferToAttendantKey", str, is_required=True),
        E(
            "transfer_to_voice_messaging_key", "transferToVoiceMessagingKey", str,
            is_required=True,
        ),
    )

    transfer_to_attendant_key: str = Field(type=str, required=True, mutable=False)
    transfer_to_voice_messaging_key: str = Field(type=str, required=True, mutable=False)


class SystemPhysicalLocationGetResponse(OCIResponse):
    """
    Response to ``SystemPhysicalLocationGetRequest()``.

    Contains a list of system Physical Location parameters.

    Attributes:
        always_allow_emergency_calls: alwaysAllowEmergencyCalls
    """

    _ELEMENTS = (
        E(
            "always_allow_emergency_calls", "alwaysAllowEmergencyCalls", bool,
            is_required=True,
        ),
    )

    always_allow_emergency_calls: bool = Field(type=bool, required=True, mutable=False)


class SystemPolicyGetDefaultResponse14(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest14()``.

    Contains the default policy settings for the system.

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_service_access: groupAdminServiceAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse14sp1(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest14sp1()``.

    Contains the default policy settings for the system.

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse14sp4(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest14sp4()``.

    Contains the default policy settings for the system.

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_user_enhanced_call_logs_access: groupUserEnhancedCallLogsAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E(
            "group_user_enhanced_call_logs_access", "groupUserEnhancedCallLogsAccess",
            str, is_required=True,
        ),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_user_enhanced_call_logs_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse16sp1(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest16sp1()``.

    Contains the default policy settings for the system.

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_user_enhanced_call_logs_access: groupUserEnhancedCallLogsAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        group_admin_session_admission_control_access:
            groupAdminSessionAdmissionControlAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_session_admission_control_access:
            serviceProviderAdminSessionAdmissionControlAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E(
            "group_user_enhanced_call_logs_access", "groupUserEnhancedCallLogsAccess",
            str, is_required=True,
        ),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_user_enhanced_call_logs_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    group_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse16sp2(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest16sp2()``.

    Contains the default policy settings for the system.

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_department_admin_phone_number_extension_access:
            groupDepartmentAdminPhoneNumberExtensionAccess
        group_department_admin_calling_line_id_number_access:
            groupDepartmentAdminCallingLineIdNumberAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_user_enhanced_call_logs_access: groupUserEnhancedCallLogsAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_calling_line_id_number_access: groupAdminCallingLineIdNumberAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        group_admin_session_admission_control_access:
            groupAdminSessionAdmissionControlAccess
        group_admin_dialable_caller_id_access: groupAdminDialableCallerIDAccess
        group_admin_office_zone_access: groupAdminOfficeZoneAccess
        group_admin_number_activation_access: groupAdminNumberActivationAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_calling_line_id_number_access:
            serviceProviderAdminCallingLineIdNumberAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_session_admission_control_access:
            serviceProviderAdminSessionAdmissionControlAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        service_provider_admin_office_zone_access: serviceProviderAdminOfficeZoneAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
        service_provider_admin_dialable_caller_id_access:
            serviceProviderAdminDialableCallerIDAccess
        enterprise_admin_number_activation_access: enterpriseAdminNumberActivationAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E(
            "group_user_enhanced_call_logs_access", "groupUserEnhancedCallLogsAccess",
            str, is_required=True,
        ),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "group_admin_dialable_caller_id_access", "groupAdminDialableCallerIDAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_office_zone_access", "groupAdminOfficeZoneAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_number_activation_access", "groupAdminNumberActivationAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_number_activation_access",
            "enterpriseAdminNumberActivationAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_user_enhanced_call_logs_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    group_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)
    group_admin_office_zone_access: str = Field(type=str, required=True, mutable=False)
    group_admin_number_activation_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_office_zone_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_dialable_caller_id_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_number_activation_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse17(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest17()``.

    Contains the default policy settings for the system.

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_department_admin_phone_number_extension_access:
            groupDepartmentAdminPhoneNumberExtensionAccess
        group_department_admin_calling_line_id_number_access:
            groupDepartmentAdminCallingLineIdNumberAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_user_enhanced_call_logs_access: groupUserEnhancedCallLogsAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_calling_line_id_number_access: groupAdminCallingLineIdNumberAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        group_admin_session_admission_control_access:
            groupAdminSessionAdmissionControlAccess
        group_admin_office_zone_access: groupAdminOfficeZoneAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_calling_line_id_number_access:
            serviceProviderAdminCallingLineIdNumberAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_session_admission_control_access:
            serviceProviderAdminSessionAdmissionControlAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        service_provider_admin_office_zone_access: serviceProviderAdminOfficeZoneAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E(
            "group_user_enhanced_call_logs_access", "groupUserEnhancedCallLogsAccess",
            str, is_required=True,
        ),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "group_admin_office_zone_access", "groupAdminOfficeZoneAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_user_enhanced_call_logs_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    group_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_office_zone_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_office_zone_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse17sp1(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest17sp1()``.

    Contains the default policy settings for the system.  The following elements are only
    used in HSS data mode: serviceProviderAdminCommunicationBarringAccess

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_department_admin_phone_number_extension_access:
            groupDepartmentAdminPhoneNumberExtensionAccess
        group_department_admin_calling_line_id_number_access:
            groupDepartmentAdminCallingLineIdNumberAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_user_enhanced_call_logs_access: groupUserEnhancedCallLogsAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_calling_line_id_number_access: groupAdminCallingLineIdNumberAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        group_admin_session_admission_control_access:
            groupAdminSessionAdmissionControlAccess
        group_admin_office_zone_access: groupAdminOfficeZoneAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_calling_line_id_number_access:
            serviceProviderAdminCallingLineIdNumberAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_session_admission_control_access:
            serviceProviderAdminSessionAdmissionControlAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        service_provider_admin_office_zone_access: serviceProviderAdminOfficeZoneAccess
        service_provider_admin_communication_barring_access:
            serviceProviderAdminCommunicationBarringAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E(
            "group_user_enhanced_call_logs_access", "groupUserEnhancedCallLogsAccess",
            str, is_required=True,
        ),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "group_admin_office_zone_access", "groupAdminOfficeZoneAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_communication_barring_access",
            "serviceProviderAdminCommunicationBarringAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_user_enhanced_call_logs_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    group_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_office_zone_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_office_zone_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_communication_barring_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse17sp3(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest17sp3()``.

    Contains the default policy settings for the system.

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_department_admin_phone_number_extension_access:
            groupDepartmentAdminPhoneNumberExtensionAccess
        group_department_admin_calling_line_id_number_access:
            groupDepartmentAdminCallingLineIdNumberAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_user_enhanced_call_logs_access: groupUserEnhancedCallLogsAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_calling_line_id_number_access: groupAdminCallingLineIdNumberAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        group_admin_session_admission_control_access:
            groupAdminSessionAdmissionControlAccess
        group_admin_office_zone_access: groupAdminOfficeZoneAccess
        group_admin_dialable_caller_id_access: groupAdminDialableCallerIDAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_calling_line_id_number_access:
            serviceProviderAdminCallingLineIdNumberAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_session_admission_control_access:
            serviceProviderAdminSessionAdmissionControlAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        service_provider_admin_office_zone_access: serviceProviderAdminOfficeZoneAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
        service_provider_admin_dialable_caller_id_access:
            serviceProviderAdminDialableCallerIDAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E(
            "group_user_enhanced_call_logs_access", "groupUserEnhancedCallLogsAccess",
            str, is_required=True,
        ),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "group_admin_office_zone_access", "groupAdminOfficeZoneAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_dialable_caller_id_access", "groupAdminDialableCallerIDAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_user_enhanced_call_logs_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    group_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_office_zone_access: str = Field(type=str, required=True, mutable=False)
    group_admin_dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_office_zone_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_dialable_caller_id_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse18(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest18()``.

    Contains the default policy settings for the system.  The following elements are only
    used in AS data mode: GroupAdminDialableCallerIDAccess
    ServiceProviderAdminDialableCallerIDAccess The following elements are only used in HSS
    data mode: serviceProviderAdminCommunicationBarringAccess

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_department_admin_phone_number_extension_access:
            groupDepartmentAdminPhoneNumberExtensionAccess
        group_department_admin_calling_line_id_number_access:
            groupDepartmentAdminCallingLineIdNumberAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_user_enhanced_call_logs_access: groupUserEnhancedCallLogsAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_calling_line_id_number_access: groupAdminCallingLineIdNumberAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        group_admin_session_admission_control_access:
            groupAdminSessionAdmissionControlAccess
        group_admin_office_zone_access: groupAdminOfficeZoneAccess
        group_admin_number_activation_access: groupAdminNumberActivationAccess
        group_admin_dialable_caller_id_access: groupAdminDialableCallerIDAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_calling_line_id_number_access:
            serviceProviderAdminCallingLineIdNumberAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_session_admission_control_access:
            serviceProviderAdminSessionAdmissionControlAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        service_provider_admin_office_zone_access: serviceProviderAdminOfficeZoneAccess
        service_provider_admin_communication_barring_access:
            serviceProviderAdminCommunicationBarringAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
        enterprise_admin_number_activation_access: enterpriseAdminNumberActivationAccess
        service_provider_admin_dialable_caller_id_access:
            serviceProviderAdminDialableCallerIDAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E(
            "group_user_enhanced_call_logs_access", "groupUserEnhancedCallLogsAccess",
            str, is_required=True,
        ),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "group_admin_office_zone_access", "groupAdminOfficeZoneAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_number_activation_access", "groupAdminNumberActivationAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_dialable_caller_id_access", "groupAdminDialableCallerIDAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_communication_barring_access",
            "serviceProviderAdminCommunicationBarringAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_number_activation_access",
            "enterpriseAdminNumberActivationAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_user_enhanced_call_logs_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    group_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_office_zone_access: str = Field(type=str, required=True, mutable=False)
    group_admin_number_activation_access: str = Field(type=str, required=True, mutable=False)
    group_admin_dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_office_zone_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_communication_barring_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_number_activation_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_dialable_caller_id_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse19sp1(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest19sp1()``.

    Contains the default policy settings for the system.  The following elements are only
    used in AS data mode: GroupAdminDialableCallerIDAccess
    ServiceProviderAdminDialableCallerIDAccess
    GroupAdminCommunicationBarringUserProfileAccess (This element is only used for groups
    in an Enterprise) The following elements are only used in HSS data mode:
    serviceProviderAdminCommunicationBarringAccess

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_department_admin_phone_number_extension_access:
            groupDepartmentAdminPhoneNumberExtensionAccess
        group_department_admin_calling_line_id_number_access:
            groupDepartmentAdminCallingLineIdNumberAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_user_enhanced_call_logs_access: groupUserEnhancedCallLogsAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_calling_line_id_number_access: groupAdminCallingLineIdNumberAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        group_admin_session_admission_control_access:
            groupAdminSessionAdmissionControlAccess
        group_admin_office_zone_access: groupAdminOfficeZoneAccess
        group_admin_number_activation_access: groupAdminNumberActivationAccess
        group_admin_dialable_caller_id_access: groupAdminDialableCallerIDAccess
        group_admin_communication_barring_user_profile_access:
            groupAdminCommunicationBarringUserProfileAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_calling_line_id_number_access:
            serviceProviderAdminCallingLineIdNumberAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_session_admission_control_access:
            serviceProviderAdminSessionAdmissionControlAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        service_provider_admin_office_zone_access: serviceProviderAdminOfficeZoneAccess
        service_provider_admin_communication_barring_access:
            serviceProviderAdminCommunicationBarringAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
        enterprise_admin_number_activation_access: enterpriseAdminNumberActivationAccess
        service_provider_admin_dialable_caller_id_access:
            serviceProviderAdminDialableCallerIDAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E(
            "group_user_enhanced_call_logs_access", "groupUserEnhancedCallLogsAccess",
            str, is_required=True,
        ),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "group_admin_office_zone_access", "groupAdminOfficeZoneAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_number_activation_access", "groupAdminNumberActivationAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_dialable_caller_id_access", "groupAdminDialableCallerIDAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_communication_barring_user_profile_access",
            "groupAdminCommunicationBarringUserProfileAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_communication_barring_access",
            "serviceProviderAdminCommunicationBarringAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_number_activation_access",
            "enterpriseAdminNumberActivationAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_user_enhanced_call_logs_access: str = Field(type=str, required=True, mutable=False)
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    group_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_office_zone_access: str = Field(type=str, required=True, mutable=False)
    group_admin_number_activation_access: str = Field(type=str, required=True, mutable=False)
    group_admin_dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)
    group_admin_communication_barring_user_profile_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_office_zone_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_communication_barring_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_number_activation_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_dialable_caller_id_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPolicyGetDefaultResponse20(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest20()``.

    Contains the default policy settings for the system.  The following elements are only
    used in AS data mode: GroupAdminDialableCallerIDAccess
    ServiceProviderAdminDialableCallerIDAccess
    GroupAdminCommunicationBarringUserProfileAccess (This element is only used for groups
    in an Enterprise) GroupAdminVerifyTranslationAndRoutingAccess
    ServiceProviderAdminVerifyTranslationAndRoutingAccess The following elements are only
    used in HSS data mode: serviceProviderAdminCommunicationBarringAccess

    Attributes:
        group_calling_plan_access: groupCallingPlanAccess
        group_extension_access: groupExtensionAccess
        group_ldap_integration_access: groupLDAPIntegrationAccess
        group_voice_messaging_access: groupVoiceMessagingAccess
        group_department_admin_user_access: groupDepartmentAdminUserAccess
        group_department_admin_trunk_group_access: groupDepartmentAdminTrunkGroupAccess
        group_department_admin_phone_number_extension_access:
            groupDepartmentAdminPhoneNumberExtensionAccess
        group_department_admin_calling_line_id_number_access:
            groupDepartmentAdminCallingLineIdNumberAccess
        group_user_authentication_access: groupUserAuthenticationAccess
        group_user_group_directory_access: groupUserGroupDirectoryAccess
        group_user_profile_access: groupUserProfileAccess
        group_user_enhanced_call_logs_access: groupUserEnhancedCallLogsAccess
        group_user_auto_attendant_name_dialing_access:
            groupUserAutoAttendantNameDialingAccess
        group_admin_profile_access: groupAdminProfileAccess
        group_admin_user_access: groupAdminUserAccess
        group_admin_admin_access: groupAdminAdminAccess
        group_admin_department_access: groupAdminDepartmentAccess
        group_admin_access_device_access: groupAdminAccessDeviceAccess
        group_admin_enhanced_service_instance_access:
            groupAdminEnhancedServiceInstanceAccess
        group_admin_feature_access_code_access: groupAdminFeatureAccessCodeAccess
        group_admin_phone_number_extension_access: groupAdminPhoneNumberExtensionAccess
        group_admin_calling_line_id_number_access: groupAdminCallingLineIdNumberAccess
        group_admin_service_access: groupAdminServiceAccess
        group_admin_trunk_group_access: groupAdminTrunkGroupAccess
        group_admin_verify_translation_and_routing_access:
            groupAdminVerifyTranslationAndRoutingAccess
        group_admin_session_admission_control_access:
            groupAdminSessionAdmissionControlAccess
        group_admin_office_zone_access: groupAdminOfficeZoneAccess
        group_admin_number_activation_access: groupAdminNumberActivationAccess
        group_admin_dialable_caller_id_access: groupAdminDialableCallerIDAccess
        group_admin_communication_barring_user_profile_access:
            groupAdminCommunicationBarringUserProfileAccess
        service_provider_admin_profile_access: serviceProviderAdminProfileAccess
        service_provider_admin_group_access: serviceProviderAdminGroupAccess
        service_provider_admin_user_access: serviceProviderAdminUserAccess
        service_provider_admin_admin_access: serviceProviderAdminAdminAccess
        service_provider_admin_department_access: serviceProviderAdminDepartmentAccess
        service_provider_admin_access_device_access:
            serviceProviderAdminAccessDeviceAccess
        service_provider_admin_phone_number_extension_access:
            serviceProviderAdminPhoneNumberExtensionAccess
        service_provider_admin_calling_line_id_number_access:
            serviceProviderAdminCallingLineIdNumberAccess
        service_provider_admin_service_access: serviceProviderAdminServiceAccess
        service_provider_admin_service_pack_access: serviceProviderAdminServicePackAccess
        service_provider_admin_session_admission_control_access:
            serviceProviderAdminSessionAdmissionControlAccess
        service_provider_admin_verify_translation_and_routing_access:
            serviceProviderAdminVerifyTranslationAndRoutingAccess
        service_provider_admin_web_branding_access: serviceProviderAdminWebBrandingAccess
        service_provider_admin_office_zone_access: serviceProviderAdminOfficeZoneAccess
        service_provider_admin_communication_barring_access:
            serviceProviderAdminCommunicationBarringAccess
        enterprise_admin_network_policy_access: enterpriseAdminNetworkPolicyAccess
        enterprise_admin_number_activation_access: enterpriseAdminNumberActivationAccess
        service_provider_admin_dialable_caller_id_access:
            serviceProviderAdminDialableCallerIDAccess
    """

    _ELEMENTS = (
        E("group_calling_plan_access", "groupCallingPlanAccess", str, is_required=True),
        E("group_extension_access", "groupExtensionAccess", str, is_required=True),
        E(
            "group_ldap_integration_access", "groupLDAPIntegrationAccess", str,
            is_required=True,
        ),
        E("group_voice_messaging_access", "groupVoiceMessagingAccess", str, is_required=True),
        E(
            "group_department_admin_user_access", "groupDepartmentAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "group_user_authentication_access", "groupUserAuthenticationAccess", str,
            is_required=True,
        ),
        E(
            "group_user_group_directory_access", "groupUserGroupDirectoryAccess", str,
            is_required=True,
        ),
        E("group_user_profile_access", "groupUserProfileAccess", str, is_required=True),
        E(
            "group_user_enhanced_call_logs_access", "groupUserEnhancedCallLogsAccess",
            str, is_required=True,
        ),
        E(
            "group_user_auto_attendant_name_dialing_access",
            "groupUserAutoAttendantNameDialingAccess", str, is_required=True,
        ),
        E("group_admin_profile_access", "groupAdminProfileAccess", str, is_required=True),
        E("group_admin_user_access", "groupAdminUserAccess", str, is_required=True),
        E("group_admin_admin_access", "groupAdminAdminAccess", str, is_required=True),
        E(
            "group_admin_department_access", "groupAdminDepartmentAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_access_device_access", "groupAdminAccessDeviceAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess", str, is_required=True,
        ),
        E(
            "group_admin_feature_access_code_access", "groupAdminFeatureAccessCodeAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E("group_admin_service_access", "groupAdminServiceAccess", str, is_required=True),
        E(
            "group_admin_trunk_group_access", "groupAdminTrunkGroupAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_verify_translation_and_routing_access",
            "groupAdminVerifyTranslationAndRoutingAccess", str, is_required=True,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "group_admin_office_zone_access", "groupAdminOfficeZoneAccess", str,
            is_required=True,
        ),
        E(
            "group_admin_number_activation_access", "groupAdminNumberActivationAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_dialable_caller_id_access", "groupAdminDialableCallerIDAccess",
            str, is_required=True,
        ),
        E(
            "group_admin_communication_barring_user_profile_access",
            "groupAdminCommunicationBarringUserProfileAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_profile_access", "serviceProviderAdminProfileAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_group_access", "serviceProviderAdminGroupAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_user_access", "serviceProviderAdminUserAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_admin_access", "serviceProviderAdminAdminAccess", str,
            is_required=True,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_service_access", "serviceProviderAdminServiceAccess",
            str, is_required=True,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_verify_translation_and_routing_access",
            "serviceProviderAdminVerifyTranslationAndRoutingAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_communication_barring_access",
            "serviceProviderAdminCommunicationBarringAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess", str, is_required=True,
        ),
        E(
            "enterprise_admin_number_activation_access",
            "enterpriseAdminNumberActivationAccess", str, is_required=True,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess", str, is_required=True,
        ),
    )

    group_calling_plan_access: str = Field(type=str, required=True, mutable=False)
    group_extension_access: str = Field(type=str, required=True, mutable=False)
    group_ldap_integration_access: str = Field(type=str, required=True, mutable=False)
    group_voice_messaging_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_department_admin_trunk_group_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_department_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_user_authentication_access: str = Field(type=str, required=True, mutable=False)
    group_user_group_directory_access: str = Field(type=str, required=True, mutable=False)
    group_user_profile_access: str = Field(type=str, required=True, mutable=False)
    group_user_enhanced_call_logs_access: str = Field(type=str, required=True, mutable=False)
    group_user_auto_attendant_name_dialing_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    group_admin_user_access: str = Field(type=str, required=True, mutable=False)
    group_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    group_admin_department_access: str = Field(type=str, required=True, mutable=False)
    group_admin_access_device_access: str = Field(type=str, required=True, mutable=False)
    group_admin_enhanced_service_instance_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_feature_access_code_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_service_access: str = Field(type=str, required=True, mutable=False)
    group_admin_trunk_group_access: str = Field(type=str, required=True, mutable=False)
    group_admin_verify_translation_and_routing_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    group_admin_office_zone_access: str = Field(type=str, required=True, mutable=False)
    group_admin_number_activation_access: str = Field(type=str, required=True, mutable=False)
    group_admin_dialable_caller_id_access: str = Field(type=str, required=True, mutable=False)
    group_admin_communication_barring_user_profile_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_profile_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_group_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_user_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_admin_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_department_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_access_device_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_phone_number_extension_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_calling_line_id_number_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_service_access: str = Field(type=str, required=True, mutable=False)
    service_provider_admin_service_pack_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_session_admission_control_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_verify_translation_and_routing_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_web_branding_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_office_zone_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_communication_barring_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_network_policy_access: str = Field(
        type=str, required=True, mutable=False,
    )
    enterprise_admin_number_activation_access: str = Field(
        type=str, required=True, mutable=False,
    )
    service_provider_admin_dialable_caller_id_access: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemPortalAPIGetACLListResponse(OCIResponse):
    """
    Response to ``SystemPortalAPIGetACLListRequest()``.

    Returns a table with column headings: "Net Address" and "Description".

    Attributes:
        acl_table: aclTable
    """

    _ELEMENTS = (
        E("acl_table", "aclTable", list, is_complex=True, is_required=True, is_table=True),
    )

    acl_table: "list" = Field(type=list, required=True, mutable=False)


class SystemPortalPasscodeRulesGetResponse(OCIResponse):
    """
    Response to ``SystemPortalPasscodeRulesGetRequest()``.

    Contains the system passcode rules setting.

    Attributes:
        disallow_repeated_digits: disallowRepeatedDigits
        disallow_user_number: disallowUserNumber
        disallow_reversed_user_number: disallowReversedUserNumber
        disallow_old_passcode: disallowOldPasscode
        disallow_reversed_old_passcode: disallowReversedOldPasscode
        min_code_length: minCodeLength
        max_code_length: maxCodeLength
        disable_login_after_max_failed_login_attempts:
            disableLoginAfterMaxFailedLoginAttempts
        max_failed_login_attempts: maxFailedLoginAttempts
        expire_password: expirePassword
        passcode_expires_days: passcodeExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
        default_password: defaultPassword
    """

    _ELEMENTS = (
        E("disallow_repeated_digits", "disallowRepeatedDigits", bool, is_required=True),
        E("disallow_user_number", "disallowUserNumber", bool, is_required=True),
        E(
            "disallow_reversed_user_number", "disallowReversedUserNumber", bool,
            is_required=True,
        ),
        E("disallow_old_passcode", "disallowOldPasscode", bool, is_required=True),
        E(
            "disallow_reversed_old_passcode", "disallowReversedOldPasscode", bool,
            is_required=True,
        ),
        E("min_code_length", "minCodeLength", int, is_required=True),
        E("max_code_length", "maxCodeLength", int, is_required=True),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts", bool, is_required=True,
        ),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int),
        E("expire_password", "expirePassword", bool, is_required=True),
        E("passcode_expires_days", "passcodeExpiresDays", int),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
        E("default_password", "defaultPassword", str, is_required=True),
    )

    disallow_repeated_digits: bool = Field(type=bool, required=True, mutable=False)
    disallow_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    min_code_length: int = Field(type=int, required=True, mutable=False)
    max_code_length: int = Field(type=int, required=True, mutable=False)
    disable_login_after_max_failed_login_attempts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_failed_login_attempts: int = Field(type=int, required=False, mutable=False)
    expire_password: bool = Field(type=bool, required=True, mutable=False)
    passcode_expires_days: int = Field(type=int, required=False, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)
    default_password: str = Field(type=str, required=True, mutable=False)


class SystemPortalPasscodeRulesGetResponse19(OCIResponse):
    """
    Response to ``SystemPortalPasscodeRulesGetRequest()``.

    Contains the system passcode rules setting.  The following elements are only used in
    AS data mode: numberOfRepeatedDigits disallowRepeatedPatterns
    disallowContiguousSequences numberOfAscendingDigits numberOfDescendingDigits
    numberOfPreviousPasscodes

    Attributes:
        disallow_repeated_digits: disallowRepeatedDigits
        number_of_repeated_digits: numberOfRepeatedDigits
        disallow_repeated_patterns: disallowRepeatedPatterns
        disallow_contiguous_sequences: disallowContiguousSequences
        number_of_ascending_digits: numberOfAscendingDigits
        number_of_descending_digits: numberOfDescendingDigits
        disallow_user_number: disallowUserNumber
        disallow_reversed_user_number: disallowReversedUserNumber
        disallow_old_passcode: disallowOldPasscode
        number_of_previous_passcodes: numberOfPreviousPasscodes
        disallow_reversed_old_passcode: disallowReversedOldPasscode
        min_code_length: minCodeLength
        max_code_length: maxCodeLength
        disable_login_after_max_failed_login_attempts:
            disableLoginAfterMaxFailedLoginAttempts
        max_failed_login_attempts: maxFailedLoginAttempts
        expire_password: expirePassword
        passcode_expires_days: passcodeExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
        default_password: defaultPassword
    """

    _ELEMENTS = (
        E("disallow_repeated_digits", "disallowRepeatedDigits", bool, is_required=True),
        E("number_of_repeated_digits", "numberOfRepeatedDigits", int, is_required=True),
        E("disallow_repeated_patterns", "disallowRepeatedPatterns", bool, is_required=True),
        E(
            "disallow_contiguous_sequences", "disallowContiguousSequences", bool,
            is_required=True,
        ),
        E("number_of_ascending_digits", "numberOfAscendingDigits", int, is_required=True),
        E("number_of_descending_digits", "numberOfDescendingDigits", int, is_required=True),
        E("disallow_user_number", "disallowUserNumber", bool, is_required=True),
        E(
            "disallow_reversed_user_number", "disallowReversedUserNumber", bool,
            is_required=True,
        ),
        E("disallow_old_passcode", "disallowOldPasscode", bool, is_required=True),
        E("number_of_previous_passcodes", "numberOfPreviousPasscodes", int, is_required=True),
        E(
            "disallow_reversed_old_passcode", "disallowReversedOldPasscode", bool,
            is_required=True,
        ),
        E("min_code_length", "minCodeLength", int, is_required=True),
        E("max_code_length", "maxCodeLength", int, is_required=True),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts", bool, is_required=True,
        ),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int),
        E("expire_password", "expirePassword", bool, is_required=True),
        E("passcode_expires_days", "passcodeExpiresDays", int),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
        E("default_password", "defaultPassword", str, is_required=True),
    )

    disallow_repeated_digits: bool = Field(type=bool, required=True, mutable=False)
    number_of_repeated_digits: int = Field(type=int, required=True, mutable=False)
    disallow_repeated_patterns: bool = Field(type=bool, required=True, mutable=False)
    disallow_contiguous_sequences: bool = Field(type=bool, required=True, mutable=False)
    number_of_ascending_digits: int = Field(type=int, required=True, mutable=False)
    number_of_descending_digits: int = Field(type=int, required=True, mutable=False)
    disallow_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    number_of_previous_passcodes: int = Field(type=int, required=True, mutable=False)
    disallow_reversed_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    min_code_length: int = Field(type=int, required=True, mutable=False)
    max_code_length: int = Field(type=int, required=True, mutable=False)
    disable_login_after_max_failed_login_attempts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_failed_login_attempts: int = Field(type=int, required=False, mutable=False)
    expire_password: bool = Field(type=bool, required=True, mutable=False)
    passcode_expires_days: int = Field(type=int, required=False, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)
    default_password: str = Field(type=str, required=True, mutable=False)


class SystemPreferredCarrierGetGroupListResponse(OCIResponse):
    """
    Response to a ``SystemPreferredCarrierGetGroupListRequest()``.

    Contains a table with one row per group.  The table columns are: "Group Id", "Group
    Name", "Organization Id", "Organization Type". The "Organization Id" column is
    populated with either a service provider Id or an enterprise Id.  The "Organization
    Type" column is populated with one of the enumerated strings defined in the
    OrganizationType OCI data type.  Please see OCISchemaDataTypes.xsd for details on
    OrganizationType.

    Attributes:
        groups_using_carrier_table: groupsUsingCarrierTable
    """

    _ELEMENTS = (
        E(
            "groups_using_carrier_table", "groupsUsingCarrierTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    groups_using_carrier_table: "list" = Field(type=list, required=True, mutable=False)


class SystemPreferredCarrierGetListResponse(OCIResponse):
    """
    Response to a ``SystemPreferredCarrierGetListRequest()``.

    Contains a table with one row per carrier.  The table columns are: "Carrier", "Country
    Code", "CIC", "Is Intra-Lata", "Is Inter-Lata", "Is International". The value in the
    "Is Intra-Lata", "Is Inter-Lata", and "Is International" columns is one of "true" or
    "false".

    Attributes:
        system_carrier_table: systemCarrierTable
    """

    _ELEMENTS = (
        E(
            "system_carrier_table", "systemCarrierTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    system_carrier_table: "list" = Field(type=list, required=True, mutable=False)


class SystemPreferredCarrierGetResponse(OCIResponse):
    """
    Response to a ``SystemPreferredCarrierGetRequest()``.

    Contains the attributes of a carrier.

    Attributes:
        cic: cic
        country_code: countryCode
        is_intra_lata: isIntraLata
        is_inter_lata: isInterLata
        is_international: isInternational
    """

    _ELEMENTS = (
        E("cic", "cic", str, is_required=True),
        E("country_code", "countryCode", str, is_required=True),
        E("is_intra_lata", "isIntraLata", bool, is_required=True),
        E("is_inter_lata", "isInterLata", bool, is_required=True),
        E("is_international", "isInternational", bool, is_required=True),
    )

    cic: str = Field(type=str, required=True, mutable=False)
    country_code: str = Field(type=str, required=True, mutable=False)
    is_intra_lata: bool = Field(type=bool, required=True, mutable=False)
    is_inter_lata: bool = Field(type=bool, required=True, mutable=False)
    is_international: bool = Field(type=bool, required=True, mutable=False)


class SystemPreferredCarrierGetUserListResponse(OCIResponse):
    """
    Response to a ``SystemPreferredCarrierGetUserListRequest()``.

    Contains a table with one row per user.  The table columns are: "User Id", "Service
    Provider Id", "Group Id", "Last Name", "First Name", "Phone Number", "Email Address",
    "Hiragana Last Name", and "Hiragana First Name", "Extension", "Department".

    Attributes:
        users_using_carrier_table: usersUsingCarrierTable
    """

    _ELEMENTS = (
        E(
            "users_using_carrier_table", "usersUsingCarrierTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    users_using_carrier_table: "list" = Field(type=list, required=True, mutable=False)


class SystemProvisioningValidationGetResponse(OCIResponse):
    """
    Response to the ``SystemProvisioningValidationGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class SystemProvisioningValidationGetResponse14sp2(OCIResponse):
    """
    Response to the ``SystemProvisioningValidationGetRequest14sp2()``.


    Attributes:
        is_active: isActive
        is_network_server_query_active: isNetworkServerQueryActive
        timeout_seconds: timeoutSeconds
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "is_network_server_query_active", "isNetworkServerQueryActive", bool,
            is_required=True,
        ),
        E("timeout_seconds", "timeoutSeconds", int, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    is_network_server_query_active: bool = Field(type=bool, required=True, mutable=False)
    timeout_seconds: int = Field(type=int, required=True, mutable=False)


class SystemRedundancyParametersGetResponse(OCIResponse):
    """
    Replaced By ``SystemRedundancyParametersGetResponse16sp2()`` Response to
    ``SystemRedundancyParametersGetRequest()``.

    Contains a list of system Redundancy parameters.

    Attributes:
        roll_back_timer_minutes: rollBackTimerMinutes
    """

    _ELEMENTS = (
        E("roll_back_timer_minutes", "rollBackTimerMinutes", int, is_required=True),
    )

    roll_back_timer_minutes: int = Field(type=int, required=True, mutable=False)


class SystemRedundancyParametersGetResponse16sp2(OCIResponse):
    """
    Response to ``SystemRedundancyParametersGetRequest16sp2()``.

    Contains a list of system Redundancy parameters.

    Attributes:
        roll_back_timer_minutes: rollBackTimerMinutes
        send_sip_option_message_upon_migration: sendSipOptionMessageUponMigration
    """

    _ELEMENTS = (
        E("roll_back_timer_minutes", "rollBackTimerMinutes", int, is_required=True),
        E(
            "send_sip_option_message_upon_migration", "sendSipOptionMessageUponMigration",
            bool, is_required=True,
        ),
    )

    roll_back_timer_minutes: int = Field(type=int, required=True, mutable=False)
    send_sip_option_message_upon_migration: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemRoamingNetworkGetListResponse(OCIResponse):
    """
    Response to the ``SystemRoamingNetworkGetListRequest()``.

    Contains a table with columns: "MSC Address", "Network Translation Index".

    Attributes:
        roaming_network_table: roamingNetworkTable
    """

    _ELEMENTS = (
        E(
            "roaming_network_table", "roamingNetworkTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    roaming_network_table: "list" = Field(type=list, required=True, mutable=False)


class SystemRouteListEnterpriseTrunkNumberRangeGetSummaryListResponse(OCIResponse):
    """
    Response to ``SystemRouteListEnterpriseTrunkNumberRangeGetSummaryListRequest()``.

    The column headings are "Number Range Start", "Number Range End", "Service Provider
    Id", "Is Enterprise", "User Id", "Enterprise Trunk" and "Is Active".

    Attributes:
        number_range_summary_table: numberRangeSummaryTable
    """

    _ELEMENTS = (
        E(
            "number_range_summary_table", "numberRangeSummaryTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    number_range_summary_table: "list" = Field(type=list, required=True, mutable=False)


class SystemRoutePointExternalSystemApplicationControllerGetResponse(OCIResponse):
    """
    Response to the ``SystemRoutePointExternalSystemApplicationControllerGetRequest()``.


    Attributes:
        application_controller: applicationController
    """

    _ELEMENTS = (
        E("application_controller", "applicationController", str, is_array=True),
    )

    application_controller: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemRoutePointExternalSystemGetListResponse(OCIResponse):
    """
    Response to the ``SystemRoutePointExternalSystemGetListRequest()``.

    Contains a table with column headings: "External System", "Description".

    Attributes:
        external_system_table: externalSystemTable
    """

    _ELEMENTS = (
        E(
            "external_system_table", "externalSystemTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    external_system_table: "list" = Field(type=list, required=True, mutable=False)


class SystemRoutePointExternalSystemGetRoutePointListResponse(OCIResponse):
    """
    Response to the ``SystemRoutePointExternalSystemGetRoutePointListRequest()``.


    Attributes:
        service_user_id: serviceUserId
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_array=True),
    )

    service_user_id: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemRoutingGetResponse(OCIResponse):
    """
    Response to ``SystemRoutingGetRequest()``.


    Attributes:
        is_route_round_robin: isRouteRoundRobin
        route_timer_seconds: routeTimerSeconds
        dns_resolved_address_selection_policy: dnsResolvedAddressSelectionPolicy
        stateful_expiration_minutes: statefulExpirationMinutes
        max_addresses_per_hostname: maxAddressesPerHostname
        max_addresses_during_setup: maxAddressesDuringSetup
    """

    _ELEMENTS = (
        E("is_route_round_robin", "isRouteRoundRobin", bool, is_required=True),
        E("route_timer_seconds", "routeTimerSeconds", int, is_required=True),
        E(
            "dns_resolved_address_selection_policy", "dnsResolvedAddressSelectionPolicy",
            str, is_required=True,
        ),
        E("stateful_expiration_minutes", "statefulExpirationMinutes", int, is_required=True),
        E("max_addresses_per_hostname", "maxAddressesPerHostname", int, is_required=True),
        E("max_addresses_during_setup", "maxAddressesDuringSetup", int, is_required=True),
    )

    is_route_round_robin: bool = Field(type=bool, required=True, mutable=False)
    route_timer_seconds: int = Field(type=int, required=True, mutable=False)
    dns_resolved_address_selection_policy: str = Field(type=str, required=True, mutable=False)
    stateful_expiration_minutes: int = Field(type=int, required=True, mutable=False)
    max_addresses_per_hostname: int = Field(type=int, required=True, mutable=False)
    max_addresses_during_setup: int = Field(type=int, required=True, mutable=False)


class SystemRoutingGetRouteDeviceListResponse(OCIResponse):
    """
    Response to ``SystemRoutingGetRouteDeviceListRequest()``.

    The column headings are "Net Address", "Port", "Transport" and "Description".

    Attributes:
        route_device_table: routeDeviceTable
    """

    _ELEMENTS = (
        E(
            "route_device_table", "routeDeviceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    route_device_table: "list" = Field(type=list, required=True, mutable=False)


class SystemRoutingGetRouteListResponse(OCIResponse):
    """
    Response to ``SystemRoutingGetRouteListRequest()``.


    Attributes:
        route_name: routeName
    """

    _ELEMENTS = (
        E("route_name", "routeName", str, is_array=True),
    )

    route_name: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemRoutingGetTranslationListResponse(OCIResponse):
    """
    Response to ``SystemRoutingGetTranslationListRequest()``.

    The column headings are "Routing Digits" and "Route".

    Attributes:
        routing_table: routingTable
    """

    _ELEMENTS = (
        E(
            "routing_table", "routingTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    routing_table: "list" = Field(type=list, required=True, mutable=False)


class SystemRoutingProfileGetListResponse(OCIResponse):
    """
    Response to ``SystemRoutingProfileGetListRequest()``.

    Returns a list of routing profiles defined in the system.

    Attributes:
        routing_profile: routingProfile
    """

    _ELEMENTS = (
        E("routing_profile", "routingProfile", str, is_required=True),
    )

    routing_profile: str = Field(type=str, required=True, mutable=False)


class SystemSIPAuthenticationEndpointLockoutGetResponse(OCIResponse):
    """
    Response to ``SystemSIPAuthenticationEndpointLockoutGetRequest()``.

    The column headings for the lockoutTable are: "Organization Id", "Organization Type",
    "Group Id", "Line/Port", "User ID", "First Name", "Last Name", "Lockout Started",
    "Lockout Expires", "Lockout Count". Lockout times are shown in the system GMT time.
    When a permanent lockout is shown, the "Lockout Expires" column is empty and the
    "Lockout Count" column contains the word Permanent.

    Attributes:
        lockout_table: lockoutTable
    """

    _ELEMENTS = (
        E(
            "lockout_table", "lockoutTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    lockout_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSIPAuthenticationPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``SystemSIPAuthenticationPasswordRulesGetRequest()``.

    Contains the SIP authentication password rules for the system.

    Attributes:
        disallow_authentication_name: disallowAuthenticationName
        disallow_old_password: disallowOldPassword
        disallow_reversed_old_password: disallowReversedOldPassword
        restrict_min_digits: restrictMinDigits
        min_digits: minDigits
        restrict_min_upper_case_letters: restrictMinUpperCaseLetters
        min_upper_case_letters: minUpperCaseLetters
        restrict_min_lower_case_letters: restrictMinLowerCaseLetters
        min_lower_case_letters: minLowerCaseLetters
        restrict_min_non_alphanumeric_characters: restrictMinNonAlphanumericCharacters
        min_non_alphanumeric_characters: minNonAlphanumericCharacters
        min_length: minLength
        send_permanent_lockout_notification: sendPermanentLockoutNotification
        permanent_lockout_notify_email_address: permanentLockoutNotifyEmailAddress
        endpoint_authentication_lockout_type: endpointAuthenticationLockoutType
        endpoint_temporary_lockout_threshold: endpointTemporaryLockoutThreshold
        endpoint_wait_algorithm: endpointWaitAlgorithm
        endpoint_lockout_fixed_minutes: endpointLockoutFixedMinutes
        endpoint_permanent_lockout_threshold: endpointPermanentLockoutThreshold
        trunk_group_authentication_lockout_type: trunkGroupAuthenticationLockoutType
        trunk_group_temporary_lockout_threshold: trunkGroupTemporaryLockoutThreshold
        trunk_group_wait_algorithm: trunkGroupWaitAlgorithm
        trunk_group_lockout_fixed_minutes: trunkGroupLockoutFixedMinutes
        trunk_group_permanent_lockout_threshold: trunkGroupPermanentLockoutThreshold
    """

    _ELEMENTS = (
        E(
            "disallow_authentication_name", "disallowAuthenticationName", bool,
            is_required=True,
        ),
        E("disallow_old_password", "disallowOldPassword", bool, is_required=True),
        E(
            "disallow_reversed_old_password", "disallowReversedOldPassword", bool,
            is_required=True,
        ),
        E("restrict_min_digits", "restrictMinDigits", bool, is_required=True),
        E("min_digits", "minDigits", int, is_required=True),
        E(
            "restrict_min_upper_case_letters", "restrictMinUpperCaseLetters", bool,
            is_required=True,
        ),
        E("min_upper_case_letters", "minUpperCaseLetters", int, is_required=True),
        E(
            "restrict_min_lower_case_letters", "restrictMinLowerCaseLetters", bool,
            is_required=True,
        ),
        E("min_lower_case_letters", "minLowerCaseLetters", int, is_required=True),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters", bool, is_required=True,
        ),
        E(
            "min_non_alphanumeric_characters", "minNonAlphanumericCharacters", int,
            is_required=True,
        ),
        E("min_length", "minLength", int, is_required=True),
        E(
            "send_permanent_lockout_notification", "sendPermanentLockoutNotification",
            bool, is_required=True,
        ),
        E(
            "permanent_lockout_notify_email_address",
            "permanentLockoutNotifyEmailAddress", str,
        ),
        E(
            "endpoint_authentication_lockout_type", "endpointAuthenticationLockoutType",
            str, is_required=True,
        ),
        E(
            "endpoint_temporary_lockout_threshold", "endpointTemporaryLockoutThreshold",
            int, is_required=True,
        ),
        E("endpoint_wait_algorithm", "endpointWaitAlgorithm", str, is_required=True),
        E(
            "endpoint_lockout_fixed_minutes", "endpointLockoutFixedMinutes", str,
            is_required=True,
        ),
        E(
            "endpoint_permanent_lockout_threshold", "endpointPermanentLockoutThreshold",
            int, is_required=True,
        ),
        E(
            "trunk_group_authentication_lockout_type",
            "trunkGroupAuthenticationLockoutType", str, is_required=True,
        ),
        E(
            "trunk_group_temporary_lockout_threshold",
            "trunkGroupTemporaryLockoutThreshold", int, is_required=True,
        ),
        E("trunk_group_wait_algorithm", "trunkGroupWaitAlgorithm", str, is_required=True),
        E(
            "trunk_group_lockout_fixed_minutes", "trunkGroupLockoutFixedMinutes", str,
            is_required=True,
        ),
        E(
            "trunk_group_permanent_lockout_threshold",
            "trunkGroupPermanentLockoutThreshold", int, is_required=True,
        ),
    )

    disallow_authentication_name: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_password: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_password: bool = Field(type=bool, required=True, mutable=False)
    restrict_min_digits: bool = Field(type=bool, required=True, mutable=False)
    min_digits: int = Field(type=int, required=True, mutable=False)
    restrict_min_upper_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_upper_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_lower_case_letters: bool = Field(type=bool, required=True, mutable=False)
    min_lower_case_letters: int = Field(type=int, required=True, mutable=False)
    restrict_min_non_alphanumeric_characters: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_non_alphanumeric_characters: int = Field(type=int, required=True, mutable=False)
    min_length: int = Field(type=int, required=True, mutable=False)
    send_permanent_lockout_notification: bool = Field(type=bool, required=True, mutable=False)
    permanent_lockout_notify_email_address: str = Field(
        type=str, required=False, mutable=False,
    )
    endpoint_authentication_lockout_type: str = Field(type=str, required=True, mutable=False)
    endpoint_temporary_lockout_threshold: int = Field(type=int, required=True, mutable=False)
    endpoint_wait_algorithm: str = Field(type=str, required=True, mutable=False)
    endpoint_lockout_fixed_minutes: str = Field(type=str, required=True, mutable=False)
    endpoint_permanent_lockout_threshold: int = Field(type=int, required=True, mutable=False)
    trunk_group_authentication_lockout_type: str = Field(
        type=str, required=True, mutable=False,
    )
    trunk_group_temporary_lockout_threshold: int = Field(
        type=int, required=True, mutable=False,
    )
    trunk_group_wait_algorithm: str = Field(type=str, required=True, mutable=False)
    trunk_group_lockout_fixed_minutes: str = Field(type=str, required=True, mutable=False)
    trunk_group_permanent_lockout_threshold: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemSIPAuthenticationTrunkGroupLockoutGetResponse(OCIResponse):
    """
    Response to ``SystemSIPAuthenticationTrunkGroupLockoutGetRequest()``.

    The column headings for the lockoutTable are: "Organization Id", "Organization Type",
    "Group Id", "Trunk Group Name", "Lockout Started", "Lockout Expires", "Lockout Count".
    Lockout times are shown in the system GMT time.  When a permanent lockout is shown,
    the "Lockout Expires" column is empty and the "Lockout Count" column contains the word
    Permanent.

    Attributes:
        lockout_table: lockoutTable
    """

    _ELEMENTS = (
        E(
            "lockout_table", "lockoutTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    lockout_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSIPDeviceTypeFileGetListResponse(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeFileGetListRequest()``.

    Contains a table of device files managed by the Device Management System on a per-
    device type basis.  The column headings are: "File Type", "File Format", "Is
    Authenticated".

    Replaced By: ``SystemSIPDeviceTypeFileGetListResponse14sp8()``

    Attributes:
        device_type_files_table: deviceTypeFilesTable
    """

    _ELEMENTS = (
        E(
            "device_type_files_table", "deviceTypeFilesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_type_files_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSIPDeviceTypeFileGetListResponse14sp8(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeFileGetListRequest14sp8()``.

    Contains a table of device files managed by the Device Management System on a per-
    device type basis.  The column headings are: "File Format", "Is Authenticated",
    "Access URL", "Repository URL", "Template URL".

    Attributes:
        device_type_files_table: deviceTypeFilesTable
    """

    _ELEMENTS = (
        E(
            "device_type_files_table", "deviceTypeFilesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_type_files_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSIPDeviceTypeFileGetResponse(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeFileGetRequest()``.

    Replaced By: ``SystemSIPDeviceTypeFileGetResponse14sp8()``

    Attributes:
        file_format: fileFormat
        remote_file_format: remoteFileFormat
        file_category: fileCategory
        allow_file_customization: allowFileCustomization
        file_source: fileSource
        configuration_file_name: configurationFileName
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
    """

    _ELEMENTS = (
        E("file_format", "fileFormat", str, is_required=True),
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("file_category", "fileCategory", str, is_required=True),
        E("allow_file_customization", "allowFileCustomization", bool, is_required=True),
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E(
            "use_http_digest_authentication", "useHttpDigestAuthentication", bool,
            is_required=True,
        ),
        E(
            "mac_based_file_authentication", "macBasedFileAuthentication", bool,
            is_required=True,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool, is_required=True,
        ),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool, is_required=True),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
    )

    file_format: str = Field(type=str, required=True, mutable=False)
    remote_file_format: str = Field(type=str, required=True, mutable=False)
    file_category: str = Field(type=str, required=True, mutable=False)
    allow_file_customization: bool = Field(type=bool, required=True, mutable=False)
    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=True, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=True, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=True, mutable=False,
    )
    mac_in_non_request_uri: bool = Field(type=bool, required=True, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)


class SystemSIPDeviceTypeFileGetResponse14sp8(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeFileGetRequest14sp8()``.


    Attributes:
        remote_file_format: remoteFileFormat
        file_category: fileCategory
        allow_file_customization: allowFileCustomization
        file_source: fileSource
        configuration_file_name: configurationFileName
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
    """

    _ELEMENTS = (
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("file_category", "fileCategory", str, is_required=True),
        E("allow_file_customization", "allowFileCustomization", bool, is_required=True),
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E(
            "use_http_digest_authentication", "useHttpDigestAuthentication", bool,
            is_required=True,
        ),
        E(
            "mac_based_file_authentication", "macBasedFileAuthentication", bool,
            is_required=True,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool, is_required=True,
        ),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool, is_required=True),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
    )

    remote_file_format: str = Field(type=str, required=True, mutable=False)
    file_category: str = Field(type=str, required=True, mutable=False)
    allow_file_customization: bool = Field(type=bool, required=True, mutable=False)
    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=True, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=True, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=True, mutable=False,
    )
    mac_in_non_request_uri: bool = Field(type=bool, required=True, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)


class SystemSIPDeviceTypeFileGetResponse16sp1(OCIResponse):
    """
    Replaced By ``SystemSIPDeviceTypeFileGetResponse18()``.

    Response to ``SystemSIPDeviceTypeFileGetRequest16sp1()``.

    Attributes:
        remote_file_format: remoteFileFormat
        file_category: fileCategory
        file_customization: fileCustomization
        file_source: fileSource
        configuration_file_name: configurationFileName
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
    """

    _ELEMENTS = (
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("file_category", "fileCategory", str, is_required=True),
        E("file_customization", "fileCustomization", str, is_required=True),
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E(
            "use_http_digest_authentication", "useHttpDigestAuthentication", bool,
            is_required=True,
        ),
        E(
            "mac_based_file_authentication", "macBasedFileAuthentication", bool,
            is_required=True,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool, is_required=True,
        ),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool, is_required=True),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
    )

    remote_file_format: str = Field(type=str, required=True, mutable=False)
    file_category: str = Field(type=str, required=True, mutable=False)
    file_customization: str = Field(type=str, required=True, mutable=False)
    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=True, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=True, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=True, mutable=False,
    )
    mac_in_non_request_uri: bool = Field(type=bool, required=True, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)


class SystemSIPDeviceTypeFileGetResponse18(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeFileGetRequest18()``.

    Take note: 1. accessUrl may have undefined content.  When it is the case, undefined
    content is put between []. It may also be set to "Error Access FQDN Not Provisioned"
    when the access FQDN is not set, or "Error Access Context Name Not Provisioned" when
    the context name is not set.  2. repositoryUrl may be set to
    "DEVICE_CONFIGURATION_FILE_REPOSITORY_MISSING", if there is no file repository
    defined.

    Attributes:
        remote_file_format: remoteFileFormat
        file_category: fileCategory
        file_customization: fileCustomization
        file_source: fileSource
        configuration_file_name: configurationFileName
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
        allow_http: allowHttp
        allow_https: allowHttps
        allow_tftp: allowTftp
        enable_caching: enableCaching
    """

    _ELEMENTS = (
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("file_category", "fileCategory", str, is_required=True),
        E("file_customization", "fileCustomization", str, is_required=True),
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E(
            "use_http_digest_authentication", "useHttpDigestAuthentication", bool,
            is_required=True,
        ),
        E(
            "mac_based_file_authentication", "macBasedFileAuthentication", bool,
            is_required=True,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool, is_required=True,
        ),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool, is_required=True),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
        E("allow_http", "allowHttp", bool, is_required=True),
        E("allow_https", "allowHttps", bool, is_required=True),
        E("allow_tftp", "allowTftp", bool, is_required=True),
        E("enable_caching", "enableCaching", bool, is_required=True),
    )

    remote_file_format: str = Field(type=str, required=True, mutable=False)
    file_category: str = Field(type=str, required=True, mutable=False)
    file_customization: str = Field(type=str, required=True, mutable=False)
    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=True, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=True, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=True, mutable=False,
    )
    mac_in_non_request_uri: bool = Field(type=bool, required=True, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)
    allow_http: bool = Field(type=bool, required=True, mutable=False)
    allow_https: bool = Field(type=bool, required=True, mutable=False)
    allow_tftp: bool = Field(type=bool, required=True, mutable=False)
    enable_caching: bool = Field(type=bool, required=True, mutable=False)


class SystemSIPDeviceTypeFileGetResponse19(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeFileGetRequest19()``.

    Take note: 1. accessUrl may have undefined content.  When it is the case, undefined
    content is put between []. It may also be set to "Error Access FQDN Not Provisioned"
    when the access FQDN is not set, or "Error Access Context Name Not Provisioned" when
    the context name is not set.  2. repositoryUrl may be set to
    "DEVICE_CONFIGURATION_FILE_REPOSITORY_MISSING", if there is no file repository
    defined.

    Attributes:
        remote_file_format: remoteFileFormat
        file_category: fileCategory
        file_customization: fileCustomization
        file_source: fileSource
        configuration_file_name: configurationFileName
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
        allow_http: allowHttp
        allow_https: allowHttps
        allow_tftp: allowTftp
        enable_caching: enableCaching
        allow_upload_from_device: allowUploadFromDevice
    """

    _ELEMENTS = (
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("file_category", "fileCategory", str, is_required=True),
        E("file_customization", "fileCustomization", str, is_required=True),
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E(
            "use_http_digest_authentication", "useHttpDigestAuthentication", bool,
            is_required=True,
        ),
        E(
            "mac_based_file_authentication", "macBasedFileAuthentication", bool,
            is_required=True,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool, is_required=True,
        ),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool, is_required=True),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
        E("allow_http", "allowHttp", bool, is_required=True),
        E("allow_https", "allowHttps", bool, is_required=True),
        E("allow_tftp", "allowTftp", bool, is_required=True),
        E("enable_caching", "enableCaching", bool, is_required=True),
        E("allow_upload_from_device", "allowUploadFromDevice", bool, is_required=True),
    )

    remote_file_format: str = Field(type=str, required=True, mutable=False)
    file_category: str = Field(type=str, required=True, mutable=False)
    file_customization: str = Field(type=str, required=True, mutable=False)
    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=True, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=True, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=True, mutable=False,
    )
    mac_in_non_request_uri: bool = Field(type=bool, required=True, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)
    allow_http: bool = Field(type=bool, required=True, mutable=False)
    allow_https: bool = Field(type=bool, required=True, mutable=False)
    allow_tftp: bool = Field(type=bool, required=True, mutable=False)
    enable_caching: bool = Field(type=bool, required=True, mutable=False)
    allow_upload_from_device: bool = Field(type=bool, required=True, mutable=False)


class SystemSIPDeviceTypeFileGetResponse20(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeFileGetRequest20()``.

    Take note: 1. accessUrl may have undefined content.  When it is the case, undefined
    content is put between []. It may also be set to "Error Access FQDN Not Provisioned"
    when the access FQDN is not set, or "Error Access Context Name Not Provisioned" when
    the context name is not set.  2. repositoryUrl may be set to
    "DEVICE_CONFIGURATION_FILE_REPOSITORY_MISSING", if there is no file repository
    defined.

    Attributes:
        remote_file_format: remoteFileFormat
        file_category: fileCategory
        file_customization: fileCustomization
        file_source: fileSource
        configuration_file_name: configurationFileName
        use_http_digest_authentication: useHttpDigestAuthentication
        mac_based_file_authentication: macBasedFileAuthentication
        user_name_password_file_authentication: userNamePasswordFileAuthentication
        mac_in_non_request_uri: macInNonRequestURI
        mac_format_in_non_request_uri: macFormatInNonRequestURI
        access_url: accessUrl
        repository_url: repositoryUrl
        template_url: templateUrl
        allow_http: allowHttp
        allow_https: allowHttps
        allow_tftp: allowTftp
        enable_caching: enableCaching
        allow_upload_from_device: allowUploadFromDevice
        default_extended_file_capture_mode: defaultExtendedFileCaptureMode
    """

    _ELEMENTS = (
        E("remote_file_format", "remoteFileFormat", str, is_required=True),
        E("file_category", "fileCategory", str, is_required=True),
        E("file_customization", "fileCustomization", str, is_required=True),
        E("file_source", "fileSource", str, is_required=True),
        E("configuration_file_name", "configurationFileName", str),
        E(
            "use_http_digest_authentication", "useHttpDigestAuthentication", bool,
            is_required=True,
        ),
        E(
            "mac_based_file_authentication", "macBasedFileAuthentication", bool,
            is_required=True,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication", bool, is_required=True,
        ),
        E("mac_in_non_request_uri", "macInNonRequestURI", bool, is_required=True),
        E("mac_format_in_non_request_uri", "macFormatInNonRequestURI", str),
        E("access_url", "accessUrl", str, is_required=True),
        E("repository_url", "repositoryUrl", str),
        E("template_url", "templateUrl", str),
        E("allow_http", "allowHttp", bool, is_required=True),
        E("allow_https", "allowHttps", bool, is_required=True),
        E("allow_tftp", "allowTftp", bool, is_required=True),
        E("enable_caching", "enableCaching", bool, is_required=True),
        E("allow_upload_from_device", "allowUploadFromDevice", bool, is_required=True),
        E("default_extended_file_capture_mode", "defaultExtendedFileCaptureMode", bool),
    )

    remote_file_format: str = Field(type=str, required=True, mutable=False)
    file_category: str = Field(type=str, required=True, mutable=False)
    file_customization: str = Field(type=str, required=True, mutable=False)
    file_source: str = Field(type=str, required=True, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    use_http_digest_authentication: bool = Field(type=bool, required=True, mutable=False)
    mac_based_file_authentication: bool = Field(type=bool, required=True, mutable=False)
    user_name_password_file_authentication: bool = Field(
        type=bool, required=True, mutable=False,
    )
    mac_in_non_request_uri: bool = Field(type=bool, required=True, mutable=False)
    mac_format_in_non_request_uri: str = Field(type=str, required=False, mutable=False)
    access_url: str = Field(type=str, required=True, mutable=False)
    repository_url: str = Field(type=str, required=False, mutable=False)
    template_url: str = Field(type=str, required=False, mutable=False)
    allow_http: bool = Field(type=bool, required=True, mutable=False)
    allow_https: bool = Field(type=bool, required=True, mutable=False)
    allow_tftp: bool = Field(type=bool, required=True, mutable=False)
    enable_caching: bool = Field(type=bool, required=True, mutable=False)
    allow_upload_from_device: bool = Field(type=bool, required=True, mutable=False)
    default_extended_file_capture_mode: bool = Field(type=bool, required=False, mutable=False)


class SystemSIPDeviceTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetListRequest()``.

    Contains a table of identity/ device profile types configured in the system.  The
    column headings are: "Device Type", "Profile", "Is Obsolete".

    Attributes:
        device_type_table: deviceTypeTable
    """

    _ELEMENTS = (
        E(
            "device_type_table", "deviceTypeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_type_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSIPDeviceTypeLanguageMappingGetListResponse(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeLanguageMappingGetListRequest()``.

    Contains a table of device type languages mapped to equivalent BroadWorks languages.
    The column headings are: "BroadWorks Language", "Device Language".

    Attributes:
        device_type_languages_table: deviceTypeLanguagesTable
    """

    _ELEMENTS = (
        E(
            "device_type_languages_table", "deviceTypeLanguagesTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    device_type_languages_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSIPDeviceTypeServiceGetResponse(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeServiceGetRequest()``.

    Contains the list of device type services integrated to BroadWorks.

    Attributes:
        supports_polycom_phone_services: supportsPolycomPhoneServices
    """

    _ELEMENTS = (
        E(
            "supports_polycom_phone_services", "supportsPolycomPhoneServices", bool,
            is_required=True,
        ),
    )

    supports_polycom_phone_services: bool = Field(type=bool, required=True, mutable=False)


class SystemSIPDiversionReasonGetResponse(OCIResponse):
    """
    Response to ``SystemSIPDiversionReasonGetRequest()``.

    Contains a table containing a list of diversion reasons and associated cause values.
    The column headings are: "Diversion Reaon", "Cause Value".

    Attributes:
        diversion_reason_table: diversionReasonTable
    """

    _ELEMENTS = (
        E(
            "diversion_reason_table", "diversionReasonTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    diversion_reason_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSIPGetACLListResponse(OCIResponse):
    """
    Response to ``SystemSIPGetACLListRequest()``.

    The table columns are: "Net Address", "Transport" and "Description".

    Attributes:
        acl_table: aclTable
    """

    _ELEMENTS = (
        E("acl_table", "aclTable", list, is_complex=True, is_required=True, is_table=True),
    )

    acl_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSIPGetContentTypeListResponse(OCIResponse):
    """
    Response to ``SystemSIPGetContentTypeListRequest()``.

    Returns a 2 column table with column headings: "Content Type" and "Supported
    Interface".

    Attributes:
        content_type_table: contentTypeTable
    """

    _ELEMENTS = (
        E(
            "content_type_table", "contentTypeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    content_type_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSMDIGetACLListResponse(OCIResponse):
    """
    Response to ``SystemSMDIGetACLListRequest()``.

    The table columns are: "Net Address" and "Description".

    Attributes:
        acl_table: aclTable
    """

    _ELEMENTS = (
        E("acl_table", "aclTable", list, is_complex=True, is_required=True, is_table=True),
    )

    acl_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSMDIMessageDeskGetServerListResponse(OCIResponse):
    """
    Response to ``SystemMediaServerGetListRequest()``.

    The SMDI Server table column headings are: "Device Name", "Net Address", "Port" and
    "Description".

    Attributes:
        smdi_server_table: smdiServerTable
    """

    _ELEMENTS = (
        E(
            "smdi_server_table", "smdiServerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    smdi_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSMDIMessageDeskGetServerRouteListResponse(OCIResponse):
    """
    Response to ``SystemSMDIMessageDeskGetServerRouteListRequest()``.

    The SMDI Server route table column headings are: "Destination" and "SMDI Servers".

    Attributes:
        smdi_server_route_table: smdiServerRouteTable
    """

    _ELEMENTS = (
        E(
            "smdi_server_route_table", "smdiServerRouteTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    smdi_server_route_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSMDIParametersGetResponse(OCIResponse):
    """
    Response to ``SystemSMDIParametersGetListRequest()``.

    Contains a list of system SMDI parameters.

    Attributes:
        enable_smdi: enableSMDI
        listening_port: listeningPort
        max_connections: maxConnections
    """

    _ELEMENTS = (
        E("enable_smdi", "enableSMDI", bool, is_required=True),
        E("listening_port", "listeningPort", int, is_required=True),
        E("max_connections", "maxConnections", int, is_required=True),
    )

    enable_smdi: bool = Field(type=bool, required=True, mutable=False)
    listening_port: int = Field(type=int, required=True, mutable=False)
    max_connections: int = Field(type=int, required=True, mutable=False)


class SystemSMPPGetResponse(OCIResponse):
    """
    Response to ``SystemSMPPGetRequest()``.


    Attributes:
        primary_smpp_server_net_address: primarySMPPServerNetAddress
        primary_smpp_port: primarySMPPPort
        secondary_smpp_server_net_address: secondarySMPPServerNetAddress
        secondary_smpp_port: secondarySMPPPort
        system_id: systemId
        password: password
        version: version
    """

    _ELEMENTS = (
        E("primary_smpp_server_net_address", "primarySMPPServerNetAddress", str),
        E("primary_smpp_port", "primarySMPPPort", int, is_required=True),
        E("secondary_smpp_server_net_address", "secondarySMPPServerNetAddress", str),
        E("secondary_smpp_port", "secondarySMPPPort", int, is_required=True),
        E("system_id", "systemId", str),
        E("password", "password", str),
        E("version", "version", str, is_required=True),
    )

    primary_smpp_server_net_address: str = Field(type=str, required=False, mutable=False)
    primary_smpp_port: int = Field(type=int, required=True, mutable=False)
    secondary_smpp_server_net_address: str = Field(type=str, required=False, mutable=False)
    secondary_smpp_port: int = Field(type=int, required=True, mutable=False)
    system_id: str = Field(type=str, required=False, mutable=False)
    password: str = Field(type=str, required=False, mutable=False)
    version: str = Field(type=str, required=True, mutable=False)


class SystemSMPPGetResponse14sp5(OCIResponse):
    """
    Response to ``SystemSMPPGetRequest14sp5()``.

    Replaced by: ``SystemSMPPGetResponse21()``

    Attributes:
        primary_smpp_server_net_address: primarySMPPServerNetAddress
        primary_smpp_port: primarySMPPPort
        secondary_smpp_server_net_address: secondarySMPPServerNetAddress
        secondary_smpp_port: secondarySMPPPort
        system_id: systemId
        password: password
        version: version
        system_type: systemType
    """

    _ELEMENTS = (
        E("primary_smpp_server_net_address", "primarySMPPServerNetAddress", str),
        E("primary_smpp_port", "primarySMPPPort", int, is_required=True),
        E("secondary_smpp_server_net_address", "secondarySMPPServerNetAddress", str),
        E("secondary_smpp_port", "secondarySMPPPort", int, is_required=True),
        E("system_id", "systemId", str),
        E("password", "password", str),
        E("version", "version", str, is_required=True),
        E("system_type", "systemType", str),
    )

    primary_smpp_server_net_address: str = Field(type=str, required=False, mutable=False)
    primary_smpp_port: int = Field(type=int, required=True, mutable=False)
    secondary_smpp_server_net_address: str = Field(type=str, required=False, mutable=False)
    secondary_smpp_port: int = Field(type=int, required=True, mutable=False)
    system_id: str = Field(type=str, required=False, mutable=False)
    password: str = Field(type=str, required=False, mutable=False)
    version: str = Field(type=str, required=True, mutable=False)
    system_type: str = Field(type=str, required=False, mutable=False)


class SystemSMPPGetResponse21(OCIResponse):
    """
    Response to ``SystemSMPPGetRequest21()``.


    Attributes:
        primary_smpp_server_net_address: primarySMPPServerNetAddress
        primary_smpp_port: primarySMPPPort
        secondary_smpp_server_net_address: secondarySMPPServerNetAddress
        secondary_smpp_port: secondarySMPPPort
        system_id: systemId
        password: password
        version: version
        system_type: systemType
        enable_mwi_customized_message: enableMWICustomizedMessage
        support_message_payload: supportMessagePayload
        max_short_message_length: maxShortMessageLength
        use_gsm_mwi_ucs2_encoding: useGsmMwiUcs2Encoding
    """

    _ELEMENTS = (
        E("primary_smpp_server_net_address", "primarySMPPServerNetAddress", str),
        E("primary_smpp_port", "primarySMPPPort", int, is_required=True),
        E("secondary_smpp_server_net_address", "secondarySMPPServerNetAddress", str),
        E("secondary_smpp_port", "secondarySMPPPort", int, is_required=True),
        E("system_id", "systemId", str),
        E("password", "password", str),
        E("version", "version", str, is_required=True),
        E("system_type", "systemType", str),
        E(
            "enable_mwi_customized_message", "enableMWICustomizedMessage", bool,
            is_required=True,
        ),
        E("support_message_payload", "supportMessagePayload", bool, is_required=True),
        E("max_short_message_length", "maxShortMessageLength", int, is_required=True),
        E("use_gsm_mwi_ucs2_encoding", "useGsmMwiUcs2Encoding", bool, is_required=True),
    )

    primary_smpp_server_net_address: str = Field(type=str, required=False, mutable=False)
    primary_smpp_port: int = Field(type=int, required=True, mutable=False)
    secondary_smpp_server_net_address: str = Field(type=str, required=False, mutable=False)
    secondary_smpp_port: int = Field(type=int, required=True, mutable=False)
    system_id: str = Field(type=str, required=False, mutable=False)
    password: str = Field(type=str, required=False, mutable=False)
    version: str = Field(type=str, required=True, mutable=False)
    system_type: str = Field(type=str, required=False, mutable=False)
    enable_mwi_customized_message: bool = Field(type=bool, required=True, mutable=False)
    support_message_payload: bool = Field(type=bool, required=True, mutable=False)
    max_short_message_length: int = Field(type=int, required=True, mutable=False)
    use_gsm_mwi_ucs2_encoding: bool = Field(type=bool, required=True, mutable=False)


class SystemScheduleGetEventListResponse(OCIResponse):
    """
    Response to ``SystemScheduleGetEventListRequest()``.

    The response contains a list of events.

    Attributes:
        event_name: eventName
    """

    _ELEMENTS = (
        E("event_name", "eventName", str, is_array=True),
    )

    event_name: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemScheduleGetListResponse(OCIResponse):
    """
    Response to ``SystemScheduleGetListRequest()``.

    The response contains a list of system schedules.

    Attributes:
        schedule_name: scheduleName
        schedule_type: scheduleType
    """

    _ELEMENTS = (
        E("schedule_name", "scheduleName", str, is_array=True),
        E("schedule_type", "scheduleType", str, is_array=True),
    )

    schedule_name: "List[str]" = Field(type=list, required=False, mutable=False)
    schedule_type: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemSecurityClassificationGetClassificationResponse(OCIResponse):
    """
    Response to the ``SystemSecurityClassificationGetClassificationRequest()``.


    Attributes:
        audio_announcement_file_description: audioAnnouncementFileDescription
        audio_announcement_file_type: audioAnnouncementFileType
    """

    _ELEMENTS = (
        E(
            "audio_announcement_file_description", "audioAnnouncementFileDescription",
            str, is_required=True,
        ),
        E("audio_announcement_file_type", "audioAnnouncementFileType", str, is_required=True),
    )

    audio_announcement_file_description: str = Field(type=str, required=True, mutable=False)
    audio_announcement_file_type: str = Field(type=str, required=True, mutable=False)


class SystemSecurityClassificationGetClassificationTrunkGroupUsageListResponse(OCIResponse):
    """
    Response to the
    ``SystemSecurityClassificationGetClassificationTrunkGroupUsageListRequest()``.

    Contains a table with column headings: "Trunk Group Name","Group ID","Organization ID"
    and "Organization Type"

    Attributes:
        usage_table: usageTable
    """

    _ELEMENTS = (
        E(
            "usage_table", "usageTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    usage_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSecurityClassificationGetClassificationUserUsageListResponse(OCIResponse):
    """
    Response to the
    ``SystemSecurityClassificationGetClassificationUserUsageListRequest()``.

    Contains a table with column headings: "User ID", "Last Name", "First Name", "Phone
    Number", "Extension", "Service Provider Id", "Group Id".

    Attributes:
        usage_table: usageTable
    """

    _ELEMENTS = (
        E(
            "usage_table", "usageTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    usage_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSecurityClassificationGetResponse(OCIResponse):
    """
    Response to the ``SystemSecurityClassificationGetRequest()``.

    Contains a table with column headings: "Name", "Priority".

    Attributes:
        meet_me_annc_threshold: meetMeAnncThreshold
        security_classification_table: SecurityClassificationTable
    """

    _ELEMENTS = (
        E("meet_me_annc_threshold", "meetMeAnncThreshold", int, is_required=True),
        E(
            "security_classification_table", "SecurityClassificationTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    meet_me_annc_threshold: int = Field(type=int, required=True, mutable=False)
    security_classification_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSecurityClassificationGetResponse21(OCIResponse):
    """
    Response to the ``SystemSecurityClassificationGetRequest21()``.

    Contains a table with column headings: "Name", "Priority".

    Attributes:
        meet_me_annc_threshold: meetMeAnncThreshold
        play_trunk_user_security_classification_announcement:
            playTrunkUserSecurityClassificationAnnouncement
        security_classification_table: SecurityClassificationTable
    """

    _ELEMENTS = (
        E("meet_me_annc_threshold", "meetMeAnncThreshold", int, is_required=True),
        E(
            "play_trunk_user_security_classification_announcement",
            "playTrunkUserSecurityClassificationAnnouncement", bool, is_required=True,
        ),
        E(
            "security_classification_table", "SecurityClassificationTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    meet_me_annc_threshold: int = Field(type=int, required=True, mutable=False)
    play_trunk_user_security_classification_announcement: bool = Field(
        type=bool, required=True, mutable=False,
    )
    security_classification_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSelectiveServicesGetResponse(OCIResponse):
    """
    Response to ``SystemSelectiveServicesGetRequest()``.


    Attributes:
        schedule_combination: scheduleCombination
    """

    _ELEMENTS = (
        E("schedule_combination", "scheduleCombination", str, is_required=True),
    )

    schedule_combination: str = Field(type=str, required=True, mutable=False)


class SystemSelectiveServicesGetResponse18sp1(OCIResponse):
    """
    Response to ``SystemSelectiveServicesGetRequest18sp1()``.


    Attributes:
        schedule_combination: scheduleCombination
        screen_private_number: screenPrivateNumber
    """

    _ELEMENTS = (
        E("schedule_combination", "scheduleCombination", str, is_required=True),
        E("screen_private_number", "screenPrivateNumber", bool, is_required=True),
    )

    schedule_combination: str = Field(type=str, required=True, mutable=False)
    screen_private_number: bool = Field(type=bool, required=True, mutable=False)


class SystemServerAddressesGetResponse(OCIResponse):
    """
    Response to ``SystemServerAddressesGetRequest()``.

    Contains a list of system Server Addresses.  See also: ``PrimaryInfoGetResponse()``
    ``PublicClusterGetFullyQualifiedDomainNameResponse()`` ``ServingInfoGetResponse()``

    Attributes:
        web_server_cluster_public_fqdn: webServerClusterPublicFQDN
        application_server_cluster_primary_public_fqdn:
            applicationServerClusterPrimaryPublicFQDN
        application_server_cluster_secondary_public_fqdn:
            applicationServerClusterSecondaryPublicFQDN
        application_server_cluster_primary_private_fqdn:
            applicationServerClusterPrimaryPrivateFQDN
        application_server_cluster_secondary_private_fqdn:
            applicationServerClusterSecondaryPrivateFQDN
    """

    _ELEMENTS = (
        E("web_server_cluster_public_fqdn", "webServerClusterPublicFQDN", str),
        E(
            "application_server_cluster_primary_public_fqdn",
            "applicationServerClusterPrimaryPublicFQDN", str,
        ),
        E(
            "application_server_cluster_secondary_public_fqdn",
            "applicationServerClusterSecondaryPublicFQDN", str,
        ),
        E(
            "application_server_cluster_primary_private_fqdn",
            "applicationServerClusterPrimaryPrivateFQDN", str,
        ),
        E(
            "application_server_cluster_secondary_private_fqdn",
            "applicationServerClusterSecondaryPrivateFQDN", str,
        ),
    )

    web_server_cluster_public_fqdn: str = Field(type=str, required=False, mutable=False)
    application_server_cluster_primary_public_fqdn: str = Field(
        type=str, required=False, mutable=False,
    )
    application_server_cluster_secondary_public_fqdn: str = Field(
        type=str, required=False, mutable=False,
    )
    application_server_cluster_primary_private_fqdn: str = Field(
        type=str, required=False, mutable=False,
    )
    application_server_cluster_secondary_private_fqdn: str = Field(
        type=str, required=False, mutable=False,
    )


class SystemServiceActivationAccessCodeGetResponse(OCIResponse):
    """
    Response to ``SystemServiceActivationAccessCodeGetRequest()``.

    Contains Service Activation Access Code system parameters.

    Attributes:
        is_active: isActive
        terminating_access_code: terminatingAccessCode
        redirecting_access_code: redirectingAccessCode
        click_to_dial_access_code: clickToDialAccessCode
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("terminating_access_code", "terminatingAccessCode", str),
        E("redirecting_access_code", "redirectingAccessCode", str),
        E("click_to_dial_access_code", "clickToDialAccessCode", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    terminating_access_code: str = Field(type=str, required=False, mutable=False)
    redirecting_access_code: str = Field(type=str, required=False, mutable=False)
    click_to_dial_access_code: str = Field(type=str, required=False, mutable=False)


class SystemServiceCodeGetListResponse(OCIResponse):
    """
    Response to ``SystemServiceCodeGetListRequest()``.

    Contains a table of defined service codes The column headings are: "Service Code", and
    "Description".

    Attributes:
        service_code_table: serviceCodeTable
    """

    _ELEMENTS = (
        E(
            "service_code_table", "serviceCodeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_code_table: "list" = Field(type=list, required=True, mutable=False)


class SystemServiceControlParametersGetResponse(OCIResponse):
    """
    Response to ``SystemServiceControlParametersGetListRequest()``.

    Contains a list of system Service Control parameters.

    Attributes:
        server_port: serverPort
        max_client_connections: maxClientConnections
    """

    _ELEMENTS = (
        E("server_port", "serverPort", int, is_required=True),
        E("max_client_connections", "maxClientConnections", int, is_required=True),
    )

    server_port: int = Field(type=int, required=True, mutable=False)
    max_client_connections: int = Field(type=int, required=True, mutable=False)


class SystemServicePackMigrationGetResponse(OCIResponse):
    """
    Response to the ``SystemServicePackMigrationGetRequest()``.

    The response contains the Service Pack Migration system level settings.

    Attributes:
        max_simultaneous_migration_tasks: maxSimultaneousMigrationTasks
    """

    _ELEMENTS = (
        E(
            "max_simultaneous_migration_tasks", "maxSimultaneousMigrationTasks", int,
            is_required=True,
        ),
    )

    max_simultaneous_migration_tasks: int = Field(type=int, required=True, mutable=False)


class SystemServicePhoneNumberLookupResponse(OCIResponse):
    """
    Response to the ``SystemServicePhoneNumberLookupRequest()``.

    The column headings for the userTable are: "Service Provider Id", "Is Enterprise",
    "Group Id", "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Phone Number" and "Extension".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSessionAdmissionControlGetResponse(OCIResponse):
    """
    Response to the ``SystemSessionAdmissionControlGetRequest()``.

    The response contains the session admission control settings for the system.

    Attributes:
        count_long_connections_to_media_server: countLongConnectionsToMediaServer
        sac_handling_for_mo_h: sacHandlingForMoH
        block_vm_deposit_due_to_sac_limits: blockVMDepositDueToSACLimits
    """

    _ELEMENTS = (
        E(
            "count_long_connections_to_media_server", "countLongConnectionsToMediaServer",
            bool, is_required=True,
        ),
        E("sac_handling_for_mo_h", "sacHandlingForMoH", str, is_required=True),
        E(
            "block_vm_deposit_due_to_sac_limits", "blockVMDepositDueToSACLimits", bool,
            is_required=True,
        ),
    )

    count_long_connections_to_media_server: bool = Field(
        type=bool, required=True, mutable=False,
    )
    sac_handling_for_mo_h: str = Field(type=str, required=True, mutable=False)
    block_vm_deposit_due_to_sac_limits: bool = Field(type=bool, required=True, mutable=False)


class SystemSessionAuditGetResponse(OCIResponse):
    """
    Response to ``SystemSessionAuditGetRequest()``.

    Replaced By: ``SystemSessionAuditGetResponse14sp3()``

    Attributes:
        is_active: isActive
        interval_seconds: intervalSeconds
        timeout_period_seconds: timeoutPeriodSeconds
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("interval_seconds", "intervalSeconds", int, is_required=True),
        E("timeout_period_seconds", "timeoutPeriodSeconds", int, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    interval_seconds: int = Field(type=int, required=True, mutable=False)
    timeout_period_seconds: int = Field(type=int, required=True, mutable=False)


class SystemSessionAuditGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemSessionAuditGetRequest14sp3()``.


    Attributes:
        is_audit_active: isAuditActive
        audit_interval_seconds: auditIntervalSeconds
        audit_timeout_seconds: auditTimeoutSeconds
        release_call_on_audit_failure: releaseCallOnAuditFailure
        is_sip_refresh_allowed_on_audit: isSIPRefreshAllowedOnAudit
        allow_update_for_sip_refresh: allowUpdateForSIPRefresh
        is_sip_session_timer_active: isSIPSessionTimerActive
        sip_session_expires_minimum_seconds: sipSessionExpiresMinimumSeconds
        enforce_sip_session_expires_maximum: enforceSIPSessionExpiresMaximum
        sip_session_expires_maximum_seconds: sipSessionExpiresMaximumSeconds
        sip_session_expires_timer_seconds: sipSessionExpiresTimerSeconds
        always_use_session_timer_when_supported: alwaysUseSessionTimerWhenSupported
        preferred_session_timer_refresher: preferredSessionTimerRefresher
    """

    _ELEMENTS = (
        E("is_audit_active", "isAuditActive", bool, is_required=True),
        E("audit_interval_seconds", "auditIntervalSeconds", int, is_required=True),
        E("audit_timeout_seconds", "auditTimeoutSeconds", int, is_required=True),
        E(
            "release_call_on_audit_failure", "releaseCallOnAuditFailure", bool,
            is_required=True,
        ),
        E(
            "is_sip_refresh_allowed_on_audit", "isSIPRefreshAllowedOnAudit", bool,
            is_required=True,
        ),
        E("allow_update_for_sip_refresh", "allowUpdateForSIPRefresh", bool, is_required=True),
        E("is_sip_session_timer_active", "isSIPSessionTimerActive", bool, is_required=True),
        E(
            "sip_session_expires_minimum_seconds", "sipSessionExpiresMinimumSeconds", int,
            is_required=True,
        ),
        E(
            "enforce_sip_session_expires_maximum", "enforceSIPSessionExpiresMaximum",
            bool, is_required=True,
        ),
        E(
            "sip_session_expires_maximum_seconds", "sipSessionExpiresMaximumSeconds", int,
            is_required=True,
        ),
        E(
            "sip_session_expires_timer_seconds", "sipSessionExpiresTimerSeconds", int,
            is_required=True,
        ),
        E(
            "always_use_session_timer_when_supported",
            "alwaysUseSessionTimerWhenSupported", bool, is_required=True,
        ),
        E(
            "preferred_session_timer_refresher", "preferredSessionTimerRefresher", str,
            is_required=True,
        ),
    )

    is_audit_active: bool = Field(type=bool, required=True, mutable=False)
    audit_interval_seconds: int = Field(type=int, required=True, mutable=False)
    audit_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    release_call_on_audit_failure: bool = Field(type=bool, required=True, mutable=False)
    is_sip_refresh_allowed_on_audit: bool = Field(type=bool, required=True, mutable=False)
    allow_update_for_sip_refresh: bool = Field(type=bool, required=True, mutable=False)
    is_sip_session_timer_active: bool = Field(type=bool, required=True, mutable=False)
    sip_session_expires_minimum_seconds: int = Field(type=int, required=True, mutable=False)
    enforce_sip_session_expires_maximum: bool = Field(type=bool, required=True, mutable=False)
    sip_session_expires_maximum_seconds: int = Field(type=int, required=True, mutable=False)
    sip_session_expires_timer_seconds: int = Field(type=int, required=True, mutable=False)
    always_use_session_timer_when_supported: bool = Field(
        type=bool, required=True, mutable=False,
    )
    preferred_session_timer_refresher: str = Field(type=str, required=True, mutable=False)


class SystemSessionAuditGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemSessionAuditGetRequest17sp3()``.


    Attributes:
        is_audit_active: isAuditActive
        audit_interval_seconds: auditIntervalSeconds
        audit_timeout_seconds: auditTimeoutSeconds
        release_call_on_audit_failure: releaseCallOnAuditFailure
        is_sip_refresh_allowed_on_audit: isSIPRefreshAllowedOnAudit
        allow_update_for_sip_refresh: allowUpdateForSIPRefresh
        is_sip_session_timer_active: isSIPSessionTimerActive
        sip_session_expires_minimum_seconds: sipSessionExpiresMinimumSeconds
        enforce_sip_session_expires_maximum: enforceSIPSessionExpiresMaximum
        sip_session_expires_maximum_seconds: sipSessionExpiresMaximumSeconds
        sip_session_expires_timer_seconds: sipSessionExpiresTimerSeconds
        always_use_session_timer_when_supported: alwaysUseSessionTimerWhenSupported
        preferred_session_timer_refresher: preferredSessionTimerRefresher
        enable_emergency_call_alarm_timer: enableEmergencyCallAlarmTimer
        emergency_call_alarm_minutes: emergencyCallAlarmMinutes
        enable_emergency_call_cleanup_timer: enableEmergencyCallCleanupTimer
        emergency_call_cleanup_minutes: emergencyCallCleanupMinutes
    """

    _ELEMENTS = (
        E("is_audit_active", "isAuditActive", bool, is_required=True),
        E("audit_interval_seconds", "auditIntervalSeconds", int, is_required=True),
        E("audit_timeout_seconds", "auditTimeoutSeconds", int, is_required=True),
        E(
            "release_call_on_audit_failure", "releaseCallOnAuditFailure", bool,
            is_required=True,
        ),
        E(
            "is_sip_refresh_allowed_on_audit", "isSIPRefreshAllowedOnAudit", bool,
            is_required=True,
        ),
        E("allow_update_for_sip_refresh", "allowUpdateForSIPRefresh", bool, is_required=True),
        E("is_sip_session_timer_active", "isSIPSessionTimerActive", bool, is_required=True),
        E(
            "sip_session_expires_minimum_seconds", "sipSessionExpiresMinimumSeconds", int,
            is_required=True,
        ),
        E(
            "enforce_sip_session_expires_maximum", "enforceSIPSessionExpiresMaximum",
            bool, is_required=True,
        ),
        E(
            "sip_session_expires_maximum_seconds", "sipSessionExpiresMaximumSeconds", int,
            is_required=True,
        ),
        E(
            "sip_session_expires_timer_seconds", "sipSessionExpiresTimerSeconds", int,
            is_required=True,
        ),
        E(
            "always_use_session_timer_when_supported",
            "alwaysUseSessionTimerWhenSupported", bool, is_required=True,
        ),
        E(
            "preferred_session_timer_refresher", "preferredSessionTimerRefresher", str,
            is_required=True,
        ),
        E(
            "enable_emergency_call_alarm_timer", "enableEmergencyCallAlarmTimer", bool,
            is_required=True,
        ),
        E("emergency_call_alarm_minutes", "emergencyCallAlarmMinutes", int, is_required=True),
        E(
            "enable_emergency_call_cleanup_timer", "enableEmergencyCallCleanupTimer",
            bool, is_required=True,
        ),
        E(
            "emergency_call_cleanup_minutes", "emergencyCallCleanupMinutes", int,
            is_required=True,
        ),
    )

    is_audit_active: bool = Field(type=bool, required=True, mutable=False)
    audit_interval_seconds: int = Field(type=int, required=True, mutable=False)
    audit_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    release_call_on_audit_failure: bool = Field(type=bool, required=True, mutable=False)
    is_sip_refresh_allowed_on_audit: bool = Field(type=bool, required=True, mutable=False)
    allow_update_for_sip_refresh: bool = Field(type=bool, required=True, mutable=False)
    is_sip_session_timer_active: bool = Field(type=bool, required=True, mutable=False)
    sip_session_expires_minimum_seconds: int = Field(type=int, required=True, mutable=False)
    enforce_sip_session_expires_maximum: bool = Field(type=bool, required=True, mutable=False)
    sip_session_expires_maximum_seconds: int = Field(type=int, required=True, mutable=False)
    sip_session_expires_timer_seconds: int = Field(type=int, required=True, mutable=False)
    always_use_session_timer_when_supported: bool = Field(
        type=bool, required=True, mutable=False,
    )
    preferred_session_timer_refresher: str = Field(type=str, required=True, mutable=False)
    enable_emergency_call_alarm_timer: bool = Field(type=bool, required=True, mutable=False)
    emergency_call_alarm_minutes: int = Field(type=int, required=True, mutable=False)
    enable_emergency_call_cleanup_timer: bool = Field(type=bool, required=True, mutable=False)
    emergency_call_cleanup_minutes: int = Field(type=int, required=True, mutable=False)


class SystemShInterfaceParametersGetResponse(OCIResponse):
    """
    Response to ``SystemShInterfaceParametersGetRequest()``.

    Contains the Sh Interface system parameters.

    Attributes:
        hss_realm: hssRealm
        request_timeout_seconds: requestTimeoutSeconds
        public_identity_refresh_delay_seconds: publicIdentityRefreshDelaySeconds
    """

    _ELEMENTS = (
        E("hss_realm", "hssRealm", str),
        E("request_timeout_seconds", "requestTimeoutSeconds", int, is_required=True),
        E(
            "public_identity_refresh_delay_seconds", "publicIdentityRefreshDelaySeconds",
            int, is_required=True,
        ),
    )

    hss_realm: str = Field(type=str, required=False, mutable=False)
    request_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    public_identity_refresh_delay_seconds: int = Field(type=int, required=True, mutable=False)


class SystemShInterfaceParametersGetResponse17(OCIResponse):
    """
    Response to ``SystemShInterfaceParametersGetRequest()``.

    Contains the Sh Interface system parameters.

    Attributes:
        hss_realm: hssRealm
        public_identity_refresh_delay_seconds: publicIdentityRefreshDelaySeconds
    """

    _ELEMENTS = (
        E("hss_realm", "hssRealm", str),
        E(
            "public_identity_refresh_delay_seconds", "publicIdentityRefreshDelaySeconds",
            int, is_required=True,
        ),
    )

    hss_realm: str = Field(type=str, required=False, mutable=False)
    public_identity_refresh_delay_seconds: int = Field(type=int, required=True, mutable=False)


class SystemShInterfaceRefreshTaskGetResponse(OCIResponse):
    """
    Response to ``SystemShInterfaceRefreshTaskGetRequest()``.

    Provides the status of the system refresh task.  If isRunning is false,
    numberPublicIdentityRefreshStarted and numberPublicIdentities are omitted.  If
    isRunning is true, numberPublicIdentities indicates the total number of public
    identities in the system that will be refreshed by the system refresh task;
    numberPublicIdentityRefreshesStarted indicates the total number of public identities
    for which a refresh has been started.

    Attributes:
        is_running: isRunning
        number_public_identity_refreshes_started: numberPublicIdentityRefreshesStarted
        number_public_identities: numberPublicIdentities
    """

    _ELEMENTS = (
        E("is_running", "isRunning", bool, is_required=True),
        E(
            "number_public_identity_refreshes_started",
            "numberPublicIdentityRefreshesStarted", int,
        ),
        E("number_public_identities", "numberPublicIdentities", int),
    )

    is_running: bool = Field(type=bool, required=True, mutable=False)
    number_public_identity_refreshes_started: int = Field(
        type=int, required=False, mutable=False,
    )
    number_public_identities: int = Field(type=int, required=False, mutable=False)


class SystemSoftwareVersionGetResponse(OCIResponse):
    """
    Response to the ``SystemSoftwareVersionGetRequest()``.


    Attributes:
        version: version
    """

    _ELEMENTS = (
        E("version", "version", str, is_required=True),
    )

    version: str = Field(type=str, required=True, mutable=False)


class SystemSpeedDial100GetResponse(OCIResponse):
    """
    Response to the ``SystemSpeedDial100GetRequest()``.


    Attributes:
        prefix: prefix
    """

    _ELEMENTS = (
        E("prefix", "prefix", str, is_required=True),
    )

    prefix: str = Field(type=str, required=True, mutable=False)


class SystemSpeedDial100GetResponse17sp1(OCIResponse):
    """
    Response to the ``SystemSpeedDial100GetRequest17sp1()``.


    Attributes:
        prefix: prefix
    """

    _ELEMENTS = (
        E("prefix", "prefix", str),
    )

    prefix: str = Field(type=str, required=False, mutable=False)


class SystemStateOrProvinceGetListResponse(OCIResponse):
    """
    Contains a 2 column table with column headings 'Key' and 'Display Name' and a row for
    each state or province.


    Attributes:
        state_or_province_table: stateOrProvinceTable
    """

    _ELEMENTS = (
        E(
            "state_or_province_table", "stateOrProvinceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    state_or_province_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSubscriberGetCallProcessingParametersResponse(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest()``.

    Replaced By: ``SystemSubscriberGetCallProcessingParametersResponse14sp3()``

    Attributes:
        user_calling_line_id_selection: userCallingLineIdSelection
        is_extended_calling_line_id_active: isExtendedCallingLineIdActive
        is_ring_time_out_active: isRingTimeOutActive
        ring_timeout_seconds: ringTimeoutSeconds
    """

    _ELEMENTS = (
        E(
            "user_calling_line_id_selection", "userCallingLineIdSelection", str,
            is_required=True,
        ),
        E(
            "is_extended_calling_line_id_active", "isExtendedCallingLineIdActive", bool,
            is_required=True,
        ),
        E("is_ring_time_out_active", "isRingTimeOutActive", bool, is_required=True),
        E("ring_timeout_seconds", "ringTimeoutSeconds", int, is_required=True),
    )

    user_calling_line_id_selection: str = Field(type=str, required=True, mutable=False)
    is_extended_calling_line_id_active: bool = Field(type=bool, required=True, mutable=False)
    is_ring_time_out_active: bool = Field(type=bool, required=True, mutable=False)
    ring_timeout_seconds: int = Field(type=int, required=True, mutable=False)


class SystemSubscriberGetCallProcessingParametersResponse14sp3(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest14sp3()``.


    Attributes:
        user_calling_line_id_selection: userCallingLineIdSelection
        is_extended_calling_line_id_active: isExtendedCallingLineIdActive
        is_ring_time_out_active: isRingTimeOutActive
        ring_timeout_seconds: ringTimeoutSeconds
        allow_emergency_remote_office_originations: allowEmergencyRemoteOfficeOriginations
    """

    _ELEMENTS = (
        E(
            "user_calling_line_id_selection", "userCallingLineIdSelection", str,
            is_required=True,
        ),
        E(
            "is_extended_calling_line_id_active", "isExtendedCallingLineIdActive", bool,
            is_required=True,
        ),
        E("is_ring_time_out_active", "isRingTimeOutActive", bool, is_required=True),
        E("ring_timeout_seconds", "ringTimeoutSeconds", int, is_required=True),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations", bool, is_required=True,
        ),
    )

    user_calling_line_id_selection: str = Field(type=str, required=True, mutable=False)
    is_extended_calling_line_id_active: bool = Field(type=bool, required=True, mutable=False)
    is_ring_time_out_active: bool = Field(type=bool, required=True, mutable=False)
    ring_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    allow_emergency_remote_office_originations: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemSubscriberGetCallProcessingParametersResponse14sp7(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest14sp7()``.


    Attributes:
        is_extended_calling_line_id_active: isExtendedCallingLineIdActive
        is_ring_time_out_active: isRingTimeOutActive
        ring_timeout_seconds: ringTimeoutSeconds
        allow_emergency_remote_office_originations: allowEmergencyRemoteOfficeOriginations
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active", "isExtendedCallingLineIdActive", bool,
            is_required=True,
        ),
        E("is_ring_time_out_active", "isRingTimeOutActive", bool, is_required=True),
        E("ring_timeout_seconds", "ringTimeoutSeconds", int, is_required=True),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations", bool, is_required=True,
        ),
    )

    is_extended_calling_line_id_active: bool = Field(type=bool, required=True, mutable=False)
    is_ring_time_out_active: bool = Field(type=bool, required=True, mutable=False)
    ring_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    allow_emergency_remote_office_originations: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemSubscriberGetCallProcessingParametersResponse15(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest15()``.


    Attributes:
        user_calling_line_id_selection: userCallingLineIdSelection
        is_extended_calling_line_id_active: isExtendedCallingLineIdActive
        is_ring_time_out_active: isRingTimeOutActive
        ring_timeout_seconds: ringTimeoutSeconds
        allow_emergency_remote_office_originations: allowEmergencyRemoteOfficeOriginations
        max_no_answer_number_of_rings: maxNoAnswerNumberOfRings
    """

    _ELEMENTS = (
        E(
            "user_calling_line_id_selection", "userCallingLineIdSelection", str,
            is_required=True,
        ),
        E(
            "is_extended_calling_line_id_active", "isExtendedCallingLineIdActive", bool,
            is_required=True,
        ),
        E("is_ring_time_out_active", "isRingTimeOutActive", bool, is_required=True),
        E("ring_timeout_seconds", "ringTimeoutSeconds", int, is_required=True),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations", bool, is_required=True,
        ),
        E("max_no_answer_number_of_rings", "maxNoAnswerNumberOfRings", int, is_required=True),
    )

    user_calling_line_id_selection: str = Field(type=str, required=True, mutable=False)
    is_extended_calling_line_id_active: bool = Field(type=bool, required=True, mutable=False)
    is_ring_time_out_active: bool = Field(type=bool, required=True, mutable=False)
    ring_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    allow_emergency_remote_office_originations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)


class SystemSubscriberGetCallProcessingParametersResponse15sp2(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest15sp2()``.

    Replaced by: ``SystemSubscriberGetCallProcessingParametersResponse17()``

    Attributes:
        is_extended_calling_line_id_active: isExtendedCallingLineIdActive
        is_ring_time_out_active: isRingTimeOutActive
        ring_timeout_seconds: ringTimeoutSeconds
        allow_emergency_remote_office_originations: allowEmergencyRemoteOfficeOriginations
        max_no_answer_number_of_rings: maxNoAnswerNumberOfRings
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active", "isExtendedCallingLineIdActive", bool,
            is_required=True,
        ),
        E("is_ring_time_out_active", "isRingTimeOutActive", bool, is_required=True),
        E("ring_timeout_seconds", "ringTimeoutSeconds", int, is_required=True),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations", bool, is_required=True,
        ),
        E("max_no_answer_number_of_rings", "maxNoAnswerNumberOfRings", int, is_required=True),
    )

    is_extended_calling_line_id_active: bool = Field(type=bool, required=True, mutable=False)
    is_ring_time_out_active: bool = Field(type=bool, required=True, mutable=False)
    ring_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    allow_emergency_remote_office_originations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)


class SystemSubscriberGetCallProcessingParametersResponse17(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest17()``.


    Attributes:
        is_extended_calling_line_id_active: isExtendedCallingLineIdActive
        is_ring_time_out_active: isRingTimeOutActive
        ring_timeout_seconds: ringTimeoutSeconds
        allow_emergency_remote_office_originations: allowEmergencyRemoteOfficeOriginations
        max_no_answer_number_of_rings: maxNoAnswerNumberOfRings
        incoming_call_to_user_alias_mode: incomingCallToUserAliasMode
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active", "isExtendedCallingLineIdActive", bool,
            is_required=True,
        ),
        E("is_ring_time_out_active", "isRingTimeOutActive", bool, is_required=True),
        E("ring_timeout_seconds", "ringTimeoutSeconds", int, is_required=True),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations", bool, is_required=True,
        ),
        E("max_no_answer_number_of_rings", "maxNoAnswerNumberOfRings", int, is_required=True),
        E(
            "incoming_call_to_user_alias_mode", "incomingCallToUserAliasMode", str,
            is_required=True,
        ),
    )

    is_extended_calling_line_id_active: bool = Field(type=bool, required=True, mutable=False)
    is_ring_time_out_active: bool = Field(type=bool, required=True, mutable=False)
    ring_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    allow_emergency_remote_office_originations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    incoming_call_to_user_alias_mode: str = Field(type=str, required=True, mutable=False)


class SystemSubscriberGetCallProcessingParametersResponse17sp3(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest17sp3()``.


    Attributes:
        is_extended_calling_line_id_active: isExtendedCallingLineIdActive
        is_ring_time_out_active: isRingTimeOutActive
        ring_timeout_seconds: ringTimeoutSeconds
        allow_emergency_remote_office_originations: allowEmergencyRemoteOfficeOriginations
        max_no_answer_number_of_rings: maxNoAnswerNumberOfRings
        incoming_call_to_user_alias_mode: incomingCallToUserAliasMode
        bypass_termination_loop_detection: bypassTerminationLoopDetection
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active", "isExtendedCallingLineIdActive", bool,
            is_required=True,
        ),
        E("is_ring_time_out_active", "isRingTimeOutActive", bool, is_required=True),
        E("ring_timeout_seconds", "ringTimeoutSeconds", int, is_required=True),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations", bool, is_required=True,
        ),
        E("max_no_answer_number_of_rings", "maxNoAnswerNumberOfRings", int, is_required=True),
        E(
            "incoming_call_to_user_alias_mode", "incomingCallToUserAliasMode", str,
            is_required=True,
        ),
        E(
            "bypass_termination_loop_detection", "bypassTerminationLoopDetection", bool,
            is_required=True,
        ),
    )

    is_extended_calling_line_id_active: bool = Field(type=bool, required=True, mutable=False)
    is_ring_time_out_active: bool = Field(type=bool, required=True, mutable=False)
    ring_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    allow_emergency_remote_office_originations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    incoming_call_to_user_alias_mode: str = Field(type=str, required=True, mutable=False)
    bypass_termination_loop_detection: bool = Field(type=bool, required=True, mutable=False)


class SystemSubscriberGetCallProcessingParametersResponse17sp4(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest17sp4()``.


    Attributes:
        is_extended_calling_line_id_active: isExtendedCallingLineIdActive
        is_ring_time_out_active: isRingTimeOutActive
        ring_timeout_seconds: ringTimeoutSeconds
        allow_emergency_remote_office_originations: allowEmergencyRemoteOfficeOriginations
        max_no_answer_number_of_rings: maxNoAnswerNumberOfRings
        incoming_call_to_user_alias_mode: incomingCallToUserAliasMode
        bypass_termination_loop_detection: bypassTerminationLoopDetection
        honor_clid_blocking_for_emergency_calls: honorCLIDBlockingForEmergencyCalls
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active", "isExtendedCallingLineIdActive", bool,
            is_required=True,
        ),
        E("is_ring_time_out_active", "isRingTimeOutActive", bool, is_required=True),
        E("ring_timeout_seconds", "ringTimeoutSeconds", int, is_required=True),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations", bool, is_required=True,
        ),
        E("max_no_answer_number_of_rings", "maxNoAnswerNumberOfRings", int, is_required=True),
        E(
            "incoming_call_to_user_alias_mode", "incomingCallToUserAliasMode", str,
            is_required=True,
        ),
        E(
            "bypass_termination_loop_detection", "bypassTerminationLoopDetection", bool,
            is_required=True,
        ),
        E(
            "honor_clid_blocking_for_emergency_calls",
            "honorCLIDBlockingForEmergencyCalls", bool, is_required=True,
        ),
    )

    is_extended_calling_line_id_active: bool = Field(type=bool, required=True, mutable=False)
    is_ring_time_out_active: bool = Field(type=bool, required=True, mutable=False)
    ring_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    allow_emergency_remote_office_originations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    incoming_call_to_user_alias_mode: str = Field(type=str, required=True, mutable=False)
    bypass_termination_loop_detection: bool = Field(type=bool, required=True, mutable=False)
    honor_clid_blocking_for_emergency_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemSubscriberGetCallProcessingParametersResponse18sp1(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest18sp1()``.


    Attributes:
        is_extended_calling_line_id_active: isExtendedCallingLineIdActive
        is_ring_time_out_active: isRingTimeOutActive
        ring_timeout_seconds: ringTimeoutSeconds
        allow_emergency_remote_office_originations: allowEmergencyRemoteOfficeOriginations
        max_no_answer_number_of_rings: maxNoAnswerNumberOfRings
        incoming_call_to_user_alias_mode: incomingCallToUserAliasMode
        bypass_termination_loop_detection: bypassTerminationLoopDetection
        honor_clid_blocking_for_emergency_calls: honorCLIDBlockingForEmergencyCalls
        use_unicode_identity_name: useUnicodeIdentityName
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active", "isExtendedCallingLineIdActive", bool,
            is_required=True,
        ),
        E("is_ring_time_out_active", "isRingTimeOutActive", bool, is_required=True),
        E("ring_timeout_seconds", "ringTimeoutSeconds", int, is_required=True),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations", bool, is_required=True,
        ),
        E("max_no_answer_number_of_rings", "maxNoAnswerNumberOfRings", int, is_required=True),
        E(
            "incoming_call_to_user_alias_mode", "incomingCallToUserAliasMode", str,
            is_required=True,
        ),
        E(
            "bypass_termination_loop_detection", "bypassTerminationLoopDetection", bool,
            is_required=True,
        ),
        E(
            "honor_clid_blocking_for_emergency_calls",
            "honorCLIDBlockingForEmergencyCalls", bool, is_required=True,
        ),
        E("use_unicode_identity_name", "useUnicodeIdentityName", bool, is_required=True),
    )

    is_extended_calling_line_id_active: bool = Field(type=bool, required=True, mutable=False)
    is_ring_time_out_active: bool = Field(type=bool, required=True, mutable=False)
    ring_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    allow_emergency_remote_office_originations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    incoming_call_to_user_alias_mode: str = Field(type=str, required=True, mutable=False)
    bypass_termination_loop_detection: bool = Field(type=bool, required=True, mutable=False)
    honor_clid_blocking_for_emergency_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_unicode_identity_name: bool = Field(type=bool, required=True, mutable=False)


class SystemSubscriberGetLoginParametersResponse(OCIResponse):
    """
    Response to the ``SystemSubscriberGetLoginParametersRequest()``.


    Attributes:
        max_failed_login_attempts: maxFailedLoginAttempts
        min_login_id_length: minLoginIdLength
    """

    _ELEMENTS = (
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int, is_required=True),
        E("min_login_id_length", "minLoginIdLength", int, is_required=True),
    )

    max_failed_login_attempts: int = Field(type=int, required=True, mutable=False)
    min_login_id_length: int = Field(type=int, required=True, mutable=False)


class SystemSubscriberGetProvisioningParametersResponse(OCIResponse):
    """
    Response to the ``SystemSubscriberGetProvisioningParametersRequest()``.


    Attributes:
        configurable_clid_normalization: configurableCLIDNormalization
    """

    _ELEMENTS = (
        E(
            "configurable_clid_normalization", "configurableCLIDNormalization", bool,
            is_required=True,
        ),
    )

    configurable_clid_normalization: bool = Field(type=bool, required=True, mutable=False)


class SystemSystemServiceCallProcessingPoliciesGetResponse(OCIResponse):
    """
    Response to ``SystemSystemServiceCallProcessingPoliciesGetRequest()``.


    Attributes:
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
    """

    _ELEMENTS = (
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
    )

    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemSystemServiceDnGetAvailableListResponse(OCIResponse):
    """
    Response to ``SystemSystemServiceDnGetAvailableListRequest()``.

    Contains a list of available DNs not yet assigned to any instance of system service.

    Attributes:
        available_dn: availableDn
    """

    _ELEMENTS = (
        E("available_dn", "availableDn", str, is_array=True),
    )

    available_dn: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemSystemServiceDnGetSummaryListResponse(OCIResponse):
    """
    Response to ``SystemSystemServiceDnGetSummaryListRequest()``.

    The column headings are "Phone Numbers" and "Assigned". The possible values for
    "Assigned" are true, false.

    Attributes:
        dn_summary_table: dnSummaryTable
    """

    _ELEMENTS = (
        E(
            "dn_summary_table", "dnSummaryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    dn_summary_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSystemServiceDnGetUsageListResponse(OCIResponse):
    """
    Response to ``SystemSystemServiceDnGetUsageListRequest()``.

    The table columns are: "Phone Number", "Id", "Name", and "System Service". The
    possible values for "System Service" is "System Voice Portal".

    Attributes:
        dn_utilization_table: dnUtilizationTable
    """

    _ELEMENTS = (
        E(
            "dn_utilization_table", "dnUtilizationTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    dn_utilization_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSystemVoicePortalGetListResponse(OCIResponse):
    """
    Response to ``SystemSystemVoicePortalGetListRequest()``.

    The column headings are "Default", "System Voice Portal Id", "Name", "Network Voice
    Portal Number", "System Voice Portal Number" and "Language". The possible values for
    "Default" are true, false.

    Attributes:
        system_voice_portals_table: systemVoicePortalsTable
    """

    _ELEMENTS = (
        E(
            "system_voice_portals_table", "systemVoicePortalsTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    system_voice_portals_table: "list" = Field(type=list, required=True, mutable=False)


class SystemSystemVoicePortalGetResponse(OCIResponse):
    """
    Response to ``SystemSystemVoicePortalGetRequest()``.


    Attributes:
        name: name
        calling_line_id_name: callingLineIdName
        language: language
        time_zone: timeZone
        phone_number: phoneNumber
        public_user_identity: publicUserIdentity
        network_voice_portal_number: networkVoicePortalNumber
        allow_identification_by_phone_number_or_voice_mail_aliases_on_login:
            allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
        use_voice_portal_wizard: useVoicePortalWizard
        is_default: isDefault
        use_voice_portal_default_greeting: useVoicePortalDefaultGreeting
        voice_portal_greeting_file_description: voicePortalGreetingFileDescription
        voice_portal_greeting_media_file_type: voicePortalGreetingMediaFileType
        use_voice_messaging_default_greeting: useVoiceMessagingDefaultGreeting
        voice_messaging_greeting_file_description: voiceMessagingGreetingFileDescription
        voice_messaging_greeting_media_file_type: voiceMessagingGreetingMediaFileType
    """

    _ELEMENTS = (
        E("name", "name", str, is_required=True),
        E("calling_line_id_name", "callingLineIdName", str, is_required=True),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("phone_number", "phoneNumber", str),
        E("public_user_identity", "publicUserIdentity", str),
        E("network_voice_portal_number", "networkVoicePortalNumber", str),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin", bool,
            is_required=True,
        ),
        E("use_voice_portal_wizard", "useVoicePortalWizard", bool, is_required=True),
        E("is_default", "isDefault", bool, is_required=True),
        E(
            "use_voice_portal_default_greeting", "useVoicePortalDefaultGreeting", bool,
            is_required=True,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription", str,
        ),
        E("voice_portal_greeting_media_file_type", "voicePortalGreetingMediaFileType", str),
        E(
            "use_voice_messaging_default_greeting", "useVoiceMessagingDefaultGreeting",
            bool, is_required=True,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription", str,
        ),
        E(
            "voice_messaging_greeting_media_file_type",
            "voiceMessagingGreetingMediaFileType", str,
        ),
    )

    name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_name: str = Field(type=str, required=True, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    public_user_identity: str = Field(type=str, required=False, mutable=False)
    network_voice_portal_number: str = Field(type=str, required=False, mutable=False)
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_voice_portal_wizard: bool = Field(type=bool, required=True, mutable=False)
    is_default: bool = Field(type=bool, required=True, mutable=False)
    use_voice_portal_default_greeting: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    voice_portal_greeting_media_file_type: str = Field(
        type=str, required=False, mutable=False,
    )
    use_voice_messaging_default_greeting: bool = Field(
        type=bool, required=True, mutable=False,
    )
    voice_messaging_greeting_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    voice_messaging_greeting_media_file_type: str = Field(
        type=str, required=False, mutable=False,
    )


class SystemThirdPartyIMPGetResponse(OCIResponse):
    """
    Response to the ``SystemThirdPartyIMPGetRequest()``.

    The response contains the system Third-Party IMP service attributes.  Replaced by
    ``SystemThirdPartyIMPGetResponse()``.

    Attributes:
        service_net_address: serviceNetAddress
        service_port: servicePort
    """

    _ELEMENTS = (
        E("service_net_address", "serviceNetAddress", str),
        E("service_port", "servicePort", int),
    )

    service_net_address: str = Field(type=str, required=False, mutable=False)
    service_port: int = Field(type=int, required=False, mutable=False)


class SystemThirdPartyIMPGetResponse19(OCIResponse):
    """
    Response to the ``SystemThirdPartyIMPGetRequest19()``.

    The response contains the system Third-Party IMP service attributes.  The following
    elements are only used in AS data mode: boshURL

    Attributes:
        service_net_address: serviceNetAddress
        service_port: servicePort
        bosh_url: boshURL
    """

    _ELEMENTS = (
        E("service_net_address", "serviceNetAddress", str),
        E("service_port", "servicePort", int),
        E("bosh_url", "boshURL", str),
    )

    service_net_address: str = Field(type=str, required=False, mutable=False)
    service_port: int = Field(type=int, required=False, mutable=False)
    bosh_url: str = Field(type=str, required=False, mutable=False)


class SystemThirdPartyVoiceMailSupportGetDnListResponse(OCIResponse):
    """
    Response to ``SystemThirdPartyVoiceMailSupportGetDnListRequest()``.

    Contains a table with a row for each ThirdPartyVoiceMailSupport User DN and column
    headings: "Phone Number", "Description"

    Attributes:
        third_party_voice_mail_support_table: thirdPartyVoiceMailSupportTable
    """

    _ELEMENTS = (
        E(
            "third_party_voice_mail_support_table", "thirdPartyVoiceMailSupportTable",
            list, is_complex=True, is_required=True, is_table=True,
        ),
    )

    third_party_voice_mail_support_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class SystemThirdPartyVoiceMailSupportGetResponse(OCIResponse):
    """
    Response to ``SystemThirdPartyVoiceMailSupportGetRequest()``.


    Attributes:
        override_alt_caller_id_for_vm_retrieval: overrideAltCallerIdForVMRetrieval
    """

    _ELEMENTS = (
        E(
            "override_alt_caller_id_for_vm_retrieval",
            "overrideAltCallerIdForVMRetrieval", bool, is_required=True,
        ),
    )

    override_alt_caller_id_for_vm_retrieval: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemThirdPartyVoiceMailSupportGetResponse17sp4(OCIResponse):
    """
    Response to ``SystemThirdPartyVoiceMailSupportGetRequest17sp4()``.


    Attributes:
        override_alt_caller_id_for_vm_retrieval: overrideAltCallerIdForVMRetrieval
        strip_diversion_on_vm_destination_retrieval:
            stripDiversionOnVMDestinationRetrieval
    """

    _ELEMENTS = (
        E(
            "override_alt_caller_id_for_vm_retrieval",
            "overrideAltCallerIdForVMRetrieval", bool, is_required=True,
        ),
        E(
            "strip_diversion_on_vm_destination_retrieval",
            "stripDiversionOnVMDestinationRetrieval", bool, is_required=True,
        ),
    )

    override_alt_caller_id_for_vm_retrieval: bool = Field(
        type=bool, required=True, mutable=False,
    )
    strip_diversion_on_vm_destination_retrieval: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemTimeScheduleGetListResponse(OCIResponse):
    """
    Response to the ``SystemTimeScheduleGetListRequest()``.

    The response contains all the system time schedule names.

    Attributes:
        time_schedule: timeSchedule
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", str, is_array=True),
    )

    time_schedule: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemTimeZoneGetListResponse(OCIResponse):
    """
    Response to ``SystemTimeZoneGetListRequest()``.

    Contains a 2 column table with column headings 'Key' and 'Display Name' and a row for
    each time zone.  Replaced by ``SystemTimeZoneGetListResponse20()``

    Attributes:
        time_zone_table: timeZoneTable
    """

    _ELEMENTS = (
        E(
            "time_zone_table", "timeZoneTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    time_zone_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTimeZoneGetListResponse20(OCIResponse):
    """
    Response to ``SystemTimeZoneGetListRequest20()``.

    Contains the configured time zone of the server processing the request and contains a
    2 column table with column headings 'Key' and 'Display Name' and a row for each time
    zone.

    Attributes:
        server_time_zone: serverTimeZone
        time_zone_table: timeZoneTable
    """

    _ELEMENTS = (
        E("server_time_zone", "serverTimeZone", str, is_required=True),
        E(
            "time_zone_table", "timeZoneTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    server_time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTreatmentMappingAccessSIPStatusGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingAccessSIPStatusGetListRequest()``.

    Contains a table with one row per mapping.  The table columns are: "SIP Status Code",
    "Treatment Id".

    Attributes:
        treatment_mapping_table: treatmentMappingTable
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table", "treatmentMappingTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    treatment_mapping_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTreatmentMappingCallBlockingServiceGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingCallBlockingServiceGetListRequest()``.

    Contains a table with one row per mapping.  The table columns are: "Service",
    "Treatment Id".

    Attributes:
        treatment_mapping_table: treatmentMappingTable
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table", "treatmentMappingTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    treatment_mapping_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTreatmentMappingCallBlockingServiceGetListResponse19sp1(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingCallBlockingServiceGetListRequest19sp1()``.

    Contains a table with one row per mapping.  The table columns are: "Service",
    "Treatment Id".

    Attributes:
        treatment_mapping_table: treatmentMappingTable
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table", "treatmentMappingTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    treatment_mapping_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTreatmentMappingInternalReleaseCauseGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingInternalReleaseCauseGetListRequest()``.

    Contains a table with one row per mapping.  The table columns are: "Internal Release
    Cause", "Treatment Id".

    Attributes:
        treatment_mapping_table: treatmentMappingTable
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table", "treatmentMappingTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    treatment_mapping_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTreatmentMappingNetworkSIPStatusGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingNetworkSIPStatusGetListRequest()``.

    Contains a table with one row per mapping.  The table columns are: "SIP Status Code",
    "Treatment Id".

    Attributes:
        treatment_mapping_table: treatmentMappingTable
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table", "treatmentMappingTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    treatment_mapping_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTreatmentMappingNetworkServerTreatmentGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingNetworkServerTreatmentGetListRequest()``.

    Contains a table with one row per mapping.  The table columns are: "NS Treatment",
    "Treatment Id".

    Attributes:
        treatment_mapping_table: treatmentMappingTable
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table", "treatmentMappingTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    treatment_mapping_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTreatmentMappingQ850CauseGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingQ850CauseGetListRequest()``.

    Contains a table with one row per mapping.  The table columns are: "Q850 Cause Value",
    "Treatment Id".

    Attributes:
        treatment_mapping_table: treatmentMappingTable
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table", "treatmentMappingTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    treatment_mapping_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTrunkGroupGetResponse(OCIResponse):
    """
    Response to ``SystemTrunkGroupGetRequest()``.

    Replaced by ``SystemTrunkGroupGetResponse19sp1()``.

    Attributes:
        enforce_clid_service_assignment_for_pilot_user:
            enforceCLIDServiceAssignmentForPilotUser
        terminate_unreachable_trigger_detection_on_receipt_of18x:
            terminateUnreachableTriggerDetectionOnReceiptOf18x
        pilot_user_calling_line_asserted_identity_policy:
            pilotUserCallingLineAssertedIdentityPolicy
        enforce_out_of_dialog_pbx_redirection_policies:
            enforceOutOfDialogPBXRedirectionPolicies
        unscreened_redirection_handling: unscreenedRedirectionHandling
        enable_holdover_of_highwater_call_counts: enableHoldoverOfHighwaterCallCounts
        holdover_period: holdoverPeriod
        time_zone_offset_minutes: timeZoneOffsetMinutes
    """

    _ELEMENTS = (
        E(
            "enforce_clid_service_assignment_for_pilot_user",
            "enforceCLIDServiceAssignmentForPilotUser", bool, is_required=True,
        ),
        E(
            "terminate_unreachable_trigger_detection_on_receipt_of18x",
            "terminateUnreachableTriggerDetectionOnReceiptOf18x", bool, is_required=True,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy", str, is_required=True,
        ),
        E(
            "enforce_out_of_dialog_pbx_redirection_policies",
            "enforceOutOfDialogPBXRedirectionPolicies", bool, is_required=True,
        ),
        E(
            "unscreened_redirection_handling", "unscreenedRedirectionHandling", str,
            is_required=True,
        ),
        E(
            "enable_holdover_of_highwater_call_counts",
            "enableHoldoverOfHighwaterCallCounts", bool, is_required=True,
        ),
        E("holdover_period", "holdoverPeriod", int, is_required=True),
        E("time_zone_offset_minutes", "timeZoneOffsetMinutes", int, is_required=True),
    )

    enforce_clid_service_assignment_for_pilot_user: bool = Field(
        type=bool, required=True, mutable=False,
    )
    terminate_unreachable_trigger_detection_on_receipt_of18x: bool = Field(
        type=bool, required=True, mutable=False,
    )
    pilot_user_calling_line_asserted_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    enforce_out_of_dialog_pbx_redirection_policies: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_redirection_handling: str = Field(type=str, required=True, mutable=False)
    enable_holdover_of_highwater_call_counts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    holdover_period: int = Field(type=int, required=True, mutable=False)
    time_zone_offset_minutes: int = Field(type=int, required=True, mutable=False)


class SystemTrunkGroupGetResponse19sp1(OCIResponse):
    """
    Response to ``SystemTrunkGroupGetRequest19sp1()``.


    Attributes:
        enforce_clid_service_assignment_for_pilot_user:
            enforceCLIDServiceAssignmentForPilotUser
        terminate_unreachable_trigger_detection_on_receipt_of18x:
            terminateUnreachableTriggerDetectionOnReceiptOf18x
        pilot_user_calling_line_asserted_identity_policy:
            pilotUserCallingLineAssertedIdentityPolicy
        enforce_out_of_dialog_pbx_redirection_policies:
            enforceOutOfDialogPBXRedirectionPolicies
        unscreened_redirection_handling: unscreenedRedirectionHandling
        enable_holdover_of_highwater_call_counts: enableHoldoverOfHighwaterCallCounts
        holdover_period: holdoverPeriod
        time_zone_offset_minutes: timeZoneOffsetMinutes
        clid_source_for_screened_calls_policy: clidSourceForScreenedCallsPolicy
        user_lookup_policy: userLookupPolicy
    """

    _ELEMENTS = (
        E(
            "enforce_clid_service_assignment_for_pilot_user",
            "enforceCLIDServiceAssignmentForPilotUser", bool, is_required=True,
        ),
        E(
            "terminate_unreachable_trigger_detection_on_receipt_of18x",
            "terminateUnreachableTriggerDetectionOnReceiptOf18x", bool, is_required=True,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy", str, is_required=True,
        ),
        E(
            "enforce_out_of_dialog_pbx_redirection_policies",
            "enforceOutOfDialogPBXRedirectionPolicies", bool, is_required=True,
        ),
        E(
            "unscreened_redirection_handling", "unscreenedRedirectionHandling", str,
            is_required=True,
        ),
        E(
            "enable_holdover_of_highwater_call_counts",
            "enableHoldoverOfHighwaterCallCounts", bool, is_required=True,
        ),
        E("holdover_period", "holdoverPeriod", int, is_required=True),
        E("time_zone_offset_minutes", "timeZoneOffsetMinutes", int, is_required=True),
        E(
            "clid_source_for_screened_calls_policy", "clidSourceForScreenedCallsPolicy",
            str, is_required=True,
        ),
        E("user_lookup_policy", "userLookupPolicy", str, is_required=True),
    )

    enforce_clid_service_assignment_for_pilot_user: bool = Field(
        type=bool, required=True, mutable=False,
    )
    terminate_unreachable_trigger_detection_on_receipt_of18x: bool = Field(
        type=bool, required=True, mutable=False,
    )
    pilot_user_calling_line_asserted_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    enforce_out_of_dialog_pbx_redirection_policies: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_redirection_handling: str = Field(type=str, required=True, mutable=False)
    enable_holdover_of_highwater_call_counts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    holdover_period: int = Field(type=int, required=True, mutable=False)
    time_zone_offset_minutes: int = Field(type=int, required=True, mutable=False)
    clid_source_for_screened_calls_policy: str = Field(type=str, required=True, mutable=False)
    user_lookup_policy: str = Field(type=str, required=True, mutable=False)


class SystemTrunkGroupGetResponse21(OCIResponse):
    """
    Response to ``SystemTrunkGroupGetRequest21()``.

    Following attributes are only used in IMS mode: implicitRegistrationSetSupportPolicy
    sipIdentityForPilotAndProxyTrunkModesPolicy

    Attributes:
        enforce_clid_service_assignment_for_pilot_user:
            enforceCLIDServiceAssignmentForPilotUser
        terminate_unreachable_trigger_detection_on_receipt_of18x:
            terminateUnreachableTriggerDetectionOnReceiptOf18x
        pilot_user_calling_line_asserted_identity_policy:
            pilotUserCallingLineAssertedIdentityPolicy
        enforce_out_of_dialog_pbx_redirection_policies:
            enforceOutOfDialogPBXRedirectionPolicies
        unscreened_redirection_handling: unscreenedRedirectionHandling
        enable_holdover_of_highwater_call_counts: enableHoldoverOfHighwaterCallCounts
        holdover_period: holdoverPeriod
        time_zone_offset_minutes: timeZoneOffsetMinutes
        clid_source_for_screened_calls_policy: clidSourceForScreenedCallsPolicy
        user_lookup_policy: userLookupPolicy
        out_of_dialog_pbx_redirection_clid_mapping: outOfDialogPBXRedirectionCLIDMapping
        enforce_out_of_dialog_pbx_redirection_trunk_group_capacity:
            enforceOutOfDialogPBXRedirectionTrunkGroupCapacity
        implicit_registration_set_support_policy: implicitRegistrationSetSupportPolicy
        sip_identity_for_pilot_and_proxy_trunk_modes_policy:
            sipIdentityForPilotAndProxyTrunkModesPolicy
        support_connected_identity_policy: supportConnectedIdentityPolicy
    """

    _ELEMENTS = (
        E(
            "enforce_clid_service_assignment_for_pilot_user",
            "enforceCLIDServiceAssignmentForPilotUser", bool, is_required=True,
        ),
        E(
            "terminate_unreachable_trigger_detection_on_receipt_of18x",
            "terminateUnreachableTriggerDetectionOnReceiptOf18x", bool, is_required=True,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy", str, is_required=True,
        ),
        E(
            "enforce_out_of_dialog_pbx_redirection_policies",
            "enforceOutOfDialogPBXRedirectionPolicies", bool, is_required=True,
        ),
        E(
            "unscreened_redirection_handling", "unscreenedRedirectionHandling", str,
            is_required=True,
        ),
        E(
            "enable_holdover_of_highwater_call_counts",
            "enableHoldoverOfHighwaterCallCounts", bool, is_required=True,
        ),
        E("holdover_period", "holdoverPeriod", int, is_required=True),
        E("time_zone_offset_minutes", "timeZoneOffsetMinutes", int, is_required=True),
        E(
            "clid_source_for_screened_calls_policy", "clidSourceForScreenedCallsPolicy",
            str, is_required=True,
        ),
        E("user_lookup_policy", "userLookupPolicy", str, is_required=True),
        E(
            "out_of_dialog_pbx_redirection_clid_mapping",
            "outOfDialogPBXRedirectionCLIDMapping", str, is_required=True,
        ),
        E(
            "enforce_out_of_dialog_pbx_redirection_trunk_group_capacity",
            "enforceOutOfDialogPBXRedirectionTrunkGroupCapacity", bool, is_required=True,
        ),
        E(
            "implicit_registration_set_support_policy",
            "implicitRegistrationSetSupportPolicy", str, is_required=True,
        ),
        E(
            "sip_identity_for_pilot_and_proxy_trunk_modes_policy",
            "sipIdentityForPilotAndProxyTrunkModesPolicy", str, is_required=True,
        ),
        E(
            "support_connected_identity_policy", "supportConnectedIdentityPolicy", str,
            is_required=True,
        ),
    )

    enforce_clid_service_assignment_for_pilot_user: bool = Field(
        type=bool, required=True, mutable=False,
    )
    terminate_unreachable_trigger_detection_on_receipt_of18x: bool = Field(
        type=bool, required=True, mutable=False,
    )
    pilot_user_calling_line_asserted_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    enforce_out_of_dialog_pbx_redirection_policies: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_redirection_handling: str = Field(type=str, required=True, mutable=False)
    enable_holdover_of_highwater_call_counts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    holdover_period: int = Field(type=int, required=True, mutable=False)
    time_zone_offset_minutes: int = Field(type=int, required=True, mutable=False)
    clid_source_for_screened_calls_policy: str = Field(type=str, required=True, mutable=False)
    user_lookup_policy: str = Field(type=str, required=True, mutable=False)
    out_of_dialog_pbx_redirection_clid_mapping: str = Field(
        type=str, required=True, mutable=False,
    )
    enforce_out_of_dialog_pbx_redirection_trunk_group_capacity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    implicit_registration_set_support_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    sip_identity_for_pilot_and_proxy_trunk_modes_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    support_connected_identity_policy: str = Field(type=str, required=True, mutable=False)


class SystemTrunkGroupOptionsMessageResponseStatusCodeGetListResponse(OCIResponse):
    """
    Response to the ``SystemTrunkGroupOptionsMessageResponseStatusCodeGetListRequest()``.

    The response contains of the list of system level successful SIP OPTIONS message
    respoonse status codes.

    Attributes:
        status_code: statusCode
    """

    _ELEMENTS = (
        E("status_code", "statusCode", str, is_array=True),
    )

    status_code: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemTrunkGroupUserCreationTaskGetListResponse(OCIResponse):
    """
    Response to ``SystemTrunkGroupUserCreationTaskGetListRequest()``.

    Contains a table with a row for each user creation task and column headings : "Service
    User Id", "Group Id", "Organization Id", "Organization Type", "Name", "Status", "Users
    Created", "Total Users To Create", "Error Count". The "Organization Id" column is
    populated with either a service provider Id or an enterprise Id.  The "Organization
    Type" column is populated with one of the enumerated strings defined in the
    OrganizationType OCI data type.  Please see OCISchemaDataTypes.xsd for details on
    OrganizationType.

    Attributes:
        task_table: taskTable
    """

    _ELEMENTS = (
        E("task_table", "taskTable", list, is_complex=True, is_required=True, is_table=True),
    )

    task_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTrunkGroupUserCreationTaskGetListResponse14sp4(OCIResponse):
    """
    Response to ``SystemTrunkGroupUserCreationTaskGetListRequest14sp4()``.

    Contains a table with a row for each user creation task and column headings : "Trunk
    Group Name", "Group Id", "Organization Id", "Organization Type", "Name", "Status",
    "Users Created", "Total Users To Create", "Error Count". The "Organization Id" column
    is populated with either a service provider Id or an enterprise Id.  The "Organization
    Type" column is populated with one of the enumerated strings defined in the
    OrganizationType OCI data type.  Please see OCISchemaDataTypes.xsd for details on
    OrganizationType.

    Attributes:
        task_table: taskTable
    """

    _ELEMENTS = (
        E("task_table", "taskTable", list, is_complex=True, is_required=True, is_table=True),
    )

    task_table: "list" = Field(type=list, required=True, mutable=False)


class SystemTwoStageDialingGetDnListResponse(OCIResponse):
    """
    Response to ``SystemTwoStageDialingGetDnListRequest()``.

    The Two Stage Dialing DN List table column headings are: "Phone Number",
    "Description".

    Attributes:
        phone_number_table: phoneNumberTable
    """

    _ELEMENTS = (
        E(
            "phone_number_table", "phoneNumberTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    phone_number_table: "list" = Field(type=list, required=True, mutable=False)


class SystemVerifyTranslationAndRoutingResponse(OCIResponse):
    """
    Represents a Verify Translation and Routing Test Call Result.


    Attributes:
        result: Result
    """

    _ELEMENTS = (
        E("result", "Result", str, is_required=True),
    )

    result: str = Field(type=str, required=True, mutable=False)


class SystemVideoServerGetListResponse(OCIResponse):
    """
    Response to ``SystemVideoServerGetListRequest()``.

    The Video Server table column headings are: "Net Address", "Port", "Transport",
    "Description". Transport types: udp, tcp, unspecified

    Attributes:
        video_server_table: videoServerTable
    """

    _ELEMENTS = (
        E(
            "video_server_table", "videoServerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    video_server_table: "list" = Field(type=list, required=True, mutable=False)


class SystemVideoServerParametersGetResponse(OCIResponse):
    """
    Response to ``SystemVideoServerParametersGetRequest()``.

    Contains a list of system video server parameters.

    Attributes:
        video_server_response_timer_milliseconds: videoServerResponseTimerMilliseconds
        video_server_selection_route_timer_milliseconds:
            videoServerSelectionRouteTimerMilliseconds
        use_static_video_server_device: useStaticVideoServerDevice
    """

    _ELEMENTS = (
        E(
            "video_server_response_timer_milliseconds",
            "videoServerResponseTimerMilliseconds", int, is_required=True,
        ),
        E(
            "video_server_selection_route_timer_milliseconds",
            "videoServerSelectionRouteTimerMilliseconds", int, is_required=True,
        ),
        E(
            "use_static_video_server_device", "useStaticVideoServerDevice", bool,
            is_required=True,
        ),
    )

    video_server_response_timer_milliseconds: int = Field(
        type=int, required=True, mutable=False,
    )
    video_server_selection_route_timer_milliseconds: int = Field(
        type=int, required=True, mutable=False,
    )
    use_static_video_server_device: bool = Field(type=bool, required=True, mutable=False)


class SystemVirtualOnNetCallTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemVirtualOnNetCallTypeGetListRequest()``.

    Contains a table with column headings: "Virtual On-Net Call Type Name", "Virtual On-
    Net Call Type CDR Value" in a row for each Virtual On-Net Call Type.

    Attributes:
        virtual_on_net_call_type_table: virtualOnNetCallTypeTable
    """

    _ELEMENTS = (
        E(
            "virtual_on_net_call_type_table", "virtualOnNetCallTypeTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    virtual_on_net_call_type_table: "list" = Field(type=list, required=True, mutable=False)


class SystemVoiceMessageSummaryUpdateGetResponse(OCIResponse):
    """
    Response to ``SystemVoiceMessageSummaryUpdateGetRequest()``.


    Attributes:
        send_saved_and_urgent_mwi_on_notification: sendSavedAndUrgentMWIOnNotification
        send_message_summary_update_on_register: sendMessageSummaryUpdateOnRegister
        min_time_between_mwi_on_register: minTimeBetweenMWIOnRegister
    """

    _ELEMENTS = (
        E(
            "send_saved_and_urgent_mwi_on_notification",
            "sendSavedAndUrgentMWIOnNotification", bool, is_required=True,
        ),
        E(
            "send_message_summary_update_on_register",
            "sendMessageSummaryUpdateOnRegister", bool, is_required=True,
        ),
        E(
            "min_time_between_mwi_on_register", "minTimeBetweenMWIOnRegister", int,
            is_required=True,
        ),
    )

    send_saved_and_urgent_mwi_on_notification: bool = Field(
        type=bool, required=True, mutable=False,
    )
    send_message_summary_update_on_register: bool = Field(
        type=bool, required=True, mutable=False,
    )
    min_time_between_mwi_on_register: int = Field(type=int, required=True, mutable=False)


class SystemVoiceMessagingGroupGetPasscodeRulesResponse14(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetPasscodeRulesRequest14()``.

    Contains the system voice portal passcode rules setting.

    Replaced By: ``SystemPortalPasscodeRulesGetResponse()``

    Attributes:
        disallow_repeated_digits: disallowRepeatedDigits
        disallow_user_number: disallowUserNumber
        disallow_reversed_user_number: disallowReversedUserNumber
        disallow_old_passcode: disallowOldPasscode
        disallow_reversed_old_passcode: disallowReversedOldPasscode
        min_code_length: minCodeLength
        max_code_length: maxCodeLength
        disable_login_after_max_failed_login_attempts:
            disableLoginAfterMaxFailedLoginAttempts
        max_failed_login_attempts: maxFailedLoginAttempts
        expire_password: expirePassword
        passcode_expires_days: passcodeExpiresDays
        send_login_disabled_notify_email: sendLoginDisabledNotifyEmail
        login_disabled_notify_email_address: loginDisabledNotifyEmailAddress
        default_password: defaultPassword
    """

    _ELEMENTS = (
        E("disallow_repeated_digits", "disallowRepeatedDigits", bool, is_required=True),
        E("disallow_user_number", "disallowUserNumber", bool, is_required=True),
        E(
            "disallow_reversed_user_number", "disallowReversedUserNumber", bool,
            is_required=True,
        ),
        E("disallow_old_passcode", "disallowOldPasscode", bool, is_required=True),
        E(
            "disallow_reversed_old_passcode", "disallowReversedOldPasscode", bool,
            is_required=True,
        ),
        E("min_code_length", "minCodeLength", int, is_required=True),
        E("max_code_length", "maxCodeLength", int, is_required=True),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts", bool, is_required=True,
        ),
        E("max_failed_login_attempts", "maxFailedLoginAttempts", int),
        E("expire_password", "expirePassword", bool, is_required=True),
        E("passcode_expires_days", "passcodeExpiresDays", int),
        E(
            "send_login_disabled_notify_email", "sendLoginDisabledNotifyEmail", bool,
            is_required=True,
        ),
        E("login_disabled_notify_email_address", "loginDisabledNotifyEmailAddress", str),
        E("default_password", "defaultPassword", str, is_required=True),
    )

    disallow_repeated_digits: bool = Field(type=bool, required=True, mutable=False)
    disallow_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_user_number: bool = Field(type=bool, required=True, mutable=False)
    disallow_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    disallow_reversed_old_passcode: bool = Field(type=bool, required=True, mutable=False)
    min_code_length: int = Field(type=int, required=True, mutable=False)
    max_code_length: int = Field(type=int, required=True, mutable=False)
    disable_login_after_max_failed_login_attempts: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_failed_login_attempts: int = Field(type=int, required=False, mutable=False)
    expire_password: bool = Field(type=bool, required=True, mutable=False)
    passcode_expires_days: int = Field(type=int, required=False, mutable=False)
    send_login_disabled_notify_email: bool = Field(type=bool, required=True, mutable=False)
    login_disabled_notify_email_address: str = Field(type=str, required=False, mutable=False)
    default_password: str = Field(type=str, required=True, mutable=False)


class SystemVoiceMessagingGroupGetResponse14(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetRequest14()``.


    Attributes:
        real_delete_for_imap: realDeleteForImap
        use_dn_in_mail_body: useDnInMailBody
        use_short_subject_line: useShortSubjectLine
        max_greeting_length_minutes: maxGreetingLengthMinutes
        max_message_length_minutes: maxMessageLengthMinutes
        max_mailbox_length_minutes: maxMailboxLengthMinutes
        does_message_age: doesMessageAge
        hold_period_days: holdPeriodDays
        mail_server_net_address: mailServerNetAddress
        mail_server_protocol: mailServerProtocol
        default_delivery_from_address: defaultDeliveryFromAddress
        default_notification_from_address: defaultNotificationFromAddress
        default_voice_portal_lockout_from_address: defaultVoicePortalLockoutFromAddress
        use_outgoing_mwi_on_smdi: useOutgoingMWIOnSMDI
        mwi_delay_in_seconds: mwiDelayInSeconds
        voice_portal_scope: voicePortalScope
        enterprise_voice_portal_licensed: enterpriseVoicePortalLicensed
        network_wide_messaging: networkWideMessaging
        use_external_routing: useExternalRouting
        default_external_routing_address: defaultExternalRoutingAddress
    """

    _ELEMENTS = (
        E("real_delete_for_imap", "realDeleteForImap", bool, is_required=True),
        E("use_dn_in_mail_body", "useDnInMailBody", bool, is_required=True),
        E("use_short_subject_line", "useShortSubjectLine", bool, is_required=True),
        E("max_greeting_length_minutes", "maxGreetingLengthMinutes", int, is_required=True),
        E("max_message_length_minutes", "maxMessageLengthMinutes", int, is_required=True),
        E("max_mailbox_length_minutes", "maxMailboxLengthMinutes", int, is_required=True),
        E("does_message_age", "doesMessageAge", bool, is_required=True),
        E("hold_period_days", "holdPeriodDays", int, is_required=True),
        E("mail_server_net_address", "mailServerNetAddress", str),
        E("mail_server_protocol", "mailServerProtocol", str, is_required=True),
        E(
            "default_delivery_from_address", "defaultDeliveryFromAddress", str,
            is_required=True,
        ),
        E(
            "default_notification_from_address", "defaultNotificationFromAddress", str,
            is_required=True,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress", str, is_required=True,
        ),
        E("use_outgoing_mwi_on_smdi", "useOutgoingMWIOnSMDI", bool, is_required=True),
        E("mwi_delay_in_seconds", "mwiDelayInSeconds", int, is_required=True),
        E("voice_portal_scope", "voicePortalScope", str, is_required=True),
        E(
            "enterprise_voice_portal_licensed", "enterpriseVoicePortalLicensed", bool,
            is_required=True,
        ),
        E("network_wide_messaging", "networkWideMessaging", bool, is_required=True),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("default_external_routing_address", "defaultExternalRoutingAddress", str),
    )

    real_delete_for_imap: bool = Field(type=bool, required=True, mutable=False)
    use_dn_in_mail_body: bool = Field(type=bool, required=True, mutable=False)
    use_short_subject_line: bool = Field(type=bool, required=True, mutable=False)
    max_greeting_length_minutes: int = Field(type=int, required=True, mutable=False)
    max_message_length_minutes: int = Field(type=int, required=True, mutable=False)
    max_mailbox_length_minutes: int = Field(type=int, required=True, mutable=False)
    does_message_age: bool = Field(type=bool, required=True, mutable=False)
    hold_period_days: int = Field(type=int, required=True, mutable=False)
    mail_server_net_address: str = Field(type=str, required=False, mutable=False)
    mail_server_protocol: str = Field(type=str, required=True, mutable=False)
    default_delivery_from_address: str = Field(type=str, required=True, mutable=False)
    default_notification_from_address: str = Field(type=str, required=True, mutable=False)
    default_voice_portal_lockout_from_address: str = Field(
        type=str, required=True, mutable=False,
    )
    use_outgoing_mwi_on_smdi: bool = Field(type=bool, required=True, mutable=False)
    mwi_delay_in_seconds: int = Field(type=int, required=True, mutable=False)
    voice_portal_scope: str = Field(type=str, required=True, mutable=False)
    enterprise_voice_portal_licensed: bool = Field(type=bool, required=True, mutable=False)
    network_wide_messaging: bool = Field(type=bool, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    default_external_routing_address: str = Field(type=str, required=False, mutable=False)


class SystemVoiceMessagingGroupGetResponse16(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetRequest16()``.


    Attributes:
        real_delete_for_imap: realDeleteForImap
        use_dn_in_mail_body: useDnInMailBody
        use_short_subject_line: useShortSubjectLine
        max_message_length_minutes: maxMessageLengthMinutes
        max_mailbox_length_minutes: maxMailboxLengthMinutes
        does_message_age: doesMessageAge
        hold_period_days: holdPeriodDays
        mail_server_net_address: mailServerNetAddress
        mail_server_protocol: mailServerProtocol
        default_delivery_from_address: defaultDeliveryFromAddress
        default_notification_from_address: defaultNotificationFromAddress
        default_voice_portal_lockout_from_address: defaultVoicePortalLockoutFromAddress
        use_outgoing_mwi_on_smdi: useOutgoingMWIOnSMDI
        mwi_delay_in_seconds: mwiDelayInSeconds
        voice_portal_scope: voicePortalScope
        enterprise_voice_portal_licensed: enterpriseVoicePortalLicensed
        network_wide_messaging: networkWideMessaging
        use_external_routing: useExternalRouting
        default_external_routing_address: defaultExternalRoutingAddress
    """

    _ELEMENTS = (
        E("real_delete_for_imap", "realDeleteForImap", bool, is_required=True),
        E("use_dn_in_mail_body", "useDnInMailBody", bool, is_required=True),
        E("use_short_subject_line", "useShortSubjectLine", bool, is_required=True),
        E("max_message_length_minutes", "maxMessageLengthMinutes", int, is_required=True),
        E("max_mailbox_length_minutes", "maxMailboxLengthMinutes", int, is_required=True),
        E("does_message_age", "doesMessageAge", bool, is_required=True),
        E("hold_period_days", "holdPeriodDays", int, is_required=True),
        E("mail_server_net_address", "mailServerNetAddress", str),
        E("mail_server_protocol", "mailServerProtocol", str, is_required=True),
        E(
            "default_delivery_from_address", "defaultDeliveryFromAddress", str,
            is_required=True,
        ),
        E(
            "default_notification_from_address", "defaultNotificationFromAddress", str,
            is_required=True,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress", str, is_required=True,
        ),
        E("use_outgoing_mwi_on_smdi", "useOutgoingMWIOnSMDI", bool, is_required=True),
        E("mwi_delay_in_seconds", "mwiDelayInSeconds", int, is_required=True),
        E("voice_portal_scope", "voicePortalScope", str, is_required=True),
        E(
            "enterprise_voice_portal_licensed", "enterpriseVoicePortalLicensed", bool,
            is_required=True,
        ),
        E("network_wide_messaging", "networkWideMessaging", bool, is_required=True),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("default_external_routing_address", "defaultExternalRoutingAddress", str),
    )

    real_delete_for_imap: bool = Field(type=bool, required=True, mutable=False)
    use_dn_in_mail_body: bool = Field(type=bool, required=True, mutable=False)
    use_short_subject_line: bool = Field(type=bool, required=True, mutable=False)
    max_message_length_minutes: int = Field(type=int, required=True, mutable=False)
    max_mailbox_length_minutes: int = Field(type=int, required=True, mutable=False)
    does_message_age: bool = Field(type=bool, required=True, mutable=False)
    hold_period_days: int = Field(type=int, required=True, mutable=False)
    mail_server_net_address: str = Field(type=str, required=False, mutable=False)
    mail_server_protocol: str = Field(type=str, required=True, mutable=False)
    default_delivery_from_address: str = Field(type=str, required=True, mutable=False)
    default_notification_from_address: str = Field(type=str, required=True, mutable=False)
    default_voice_portal_lockout_from_address: str = Field(
        type=str, required=True, mutable=False,
    )
    use_outgoing_mwi_on_smdi: bool = Field(type=bool, required=True, mutable=False)
    mwi_delay_in_seconds: int = Field(type=int, required=True, mutable=False)
    voice_portal_scope: str = Field(type=str, required=True, mutable=False)
    enterprise_voice_portal_licensed: bool = Field(type=bool, required=True, mutable=False)
    network_wide_messaging: bool = Field(type=bool, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    default_external_routing_address: str = Field(type=str, required=False, mutable=False)


class SystemVoiceMessagingGroupGetResponse16sp2(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetRequest16sp2()``.

    The following elements are only used in AS data mode: realDeleteForImap
    useDnInMailBody useShortSubjectLine maxMessageLengthMinutes maxMailboxLengthMinutes
    doesMessageAge holdPeriodDays mailServerNetAddress mailServerProtocol
    defaultDeliveryFromAddress defaultNotificationFromAddress useOutgoingMWIOnSMDI
    mwiDelayInSeconds voicePortalScope enterpriseVoicePortalLicensed networkWideMessaging
    useExternalRouting defaultExternalRoutingAddress vmOnlySystem

    Attributes:
        real_delete_for_imap: realDeleteForImap
        use_dn_in_mail_body: useDnInMailBody
        use_short_subject_line: useShortSubjectLine
        max_message_length_minutes: maxMessageLengthMinutes
        max_mailbox_length_minutes: maxMailboxLengthMinutes
        does_message_age: doesMessageAge
        hold_period_days: holdPeriodDays
        mail_server_net_address: mailServerNetAddress
        mail_server_protocol: mailServerProtocol
        default_delivery_from_address: defaultDeliveryFromAddress
        default_notification_from_address: defaultNotificationFromAddress
        default_voice_portal_lockout_from_address: defaultVoicePortalLockoutFromAddress
        use_outgoing_mwi_on_smdi: useOutgoingMWIOnSMDI
        mwi_delay_in_seconds: mwiDelayInSeconds
        voice_portal_scope: voicePortalScope
        enterprise_voice_portal_licensed: enterpriseVoicePortalLicensed
        network_wide_messaging: networkWideMessaging
        use_external_routing: useExternalRouting
        default_external_routing_address: defaultExternalRoutingAddress
        vm_only_system: vmOnlySystem
    """

    _ELEMENTS = (
        E("real_delete_for_imap", "realDeleteForImap", bool, is_required=True),
        E("use_dn_in_mail_body", "useDnInMailBody", bool, is_required=True),
        E("use_short_subject_line", "useShortSubjectLine", bool, is_required=True),
        E("max_message_length_minutes", "maxMessageLengthMinutes", int, is_required=True),
        E("max_mailbox_length_minutes", "maxMailboxLengthMinutes", int, is_required=True),
        E("does_message_age", "doesMessageAge", bool, is_required=True),
        E("hold_period_days", "holdPeriodDays", int, is_required=True),
        E("mail_server_net_address", "mailServerNetAddress", str),
        E("mail_server_protocol", "mailServerProtocol", str, is_required=True),
        E(
            "default_delivery_from_address", "defaultDeliveryFromAddress", str,
            is_required=True,
        ),
        E(
            "default_notification_from_address", "defaultNotificationFromAddress", str,
            is_required=True,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress", str, is_required=True,
        ),
        E("use_outgoing_mwi_on_smdi", "useOutgoingMWIOnSMDI", bool, is_required=True),
        E("mwi_delay_in_seconds", "mwiDelayInSeconds", int, is_required=True),
        E("voice_portal_scope", "voicePortalScope", str, is_required=True),
        E(
            "enterprise_voice_portal_licensed", "enterpriseVoicePortalLicensed", bool,
            is_required=True,
        ),
        E("network_wide_messaging", "networkWideMessaging", bool, is_required=True),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("default_external_routing_address", "defaultExternalRoutingAddress", str),
        E("vm_only_system", "vmOnlySystem", bool, is_required=True),
    )

    real_delete_for_imap: bool = Field(type=bool, required=True, mutable=False)
    use_dn_in_mail_body: bool = Field(type=bool, required=True, mutable=False)
    use_short_subject_line: bool = Field(type=bool, required=True, mutable=False)
    max_message_length_minutes: int = Field(type=int, required=True, mutable=False)
    max_mailbox_length_minutes: int = Field(type=int, required=True, mutable=False)
    does_message_age: bool = Field(type=bool, required=True, mutable=False)
    hold_period_days: int = Field(type=int, required=True, mutable=False)
    mail_server_net_address: str = Field(type=str, required=False, mutable=False)
    mail_server_protocol: str = Field(type=str, required=True, mutable=False)
    default_delivery_from_address: str = Field(type=str, required=True, mutable=False)
    default_notification_from_address: str = Field(type=str, required=True, mutable=False)
    default_voice_portal_lockout_from_address: str = Field(
        type=str, required=True, mutable=False,
    )
    use_outgoing_mwi_on_smdi: bool = Field(type=bool, required=True, mutable=False)
    mwi_delay_in_seconds: int = Field(type=int, required=True, mutable=False)
    voice_portal_scope: str = Field(type=str, required=True, mutable=False)
    enterprise_voice_portal_licensed: bool = Field(type=bool, required=True, mutable=False)
    network_wide_messaging: bool = Field(type=bool, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    default_external_routing_address: str = Field(type=str, required=False, mutable=False)
    vm_only_system: bool = Field(type=bool, required=True, mutable=False)


class SystemVoiceMessagingGroupGetResponse20(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetRequest20()``.

    The following elements are only used in AS data mode: realDeleteForImap
    useDnInMailBody useShortSubjectLine maxMessageLengthMinutes maxMailboxLengthMinutes
    doesMessageAge holdPeriodDays mailServerNetAddress mailServerProtocol
    defaultDeliveryFromAddress defaultNotificationFromAddress useOutgoingMWIOnSMDI
    mwiDelayInSeconds voicePortalScope enterpriseVoicePortalLicensed networkWideMessaging
    useExternalRouting defaultExternalRoutingAddress vmOnlySystem
    clientInitiatedMailServerSessionTimeoutMinutes Replaced by:
    ``SystemVoiceMessagingGroupGetResponse21()``

    Attributes:
        real_delete_for_imap: realDeleteForImap
        use_dn_in_mail_body: useDnInMailBody
        use_short_subject_line: useShortSubjectLine
        max_message_length_minutes: maxMessageLengthMinutes
        max_mailbox_length_minutes: maxMailboxLengthMinutes
        does_message_age: doesMessageAge
        hold_period_days: holdPeriodDays
        mail_server_net_address: mailServerNetAddress
        mail_server_protocol: mailServerProtocol
        default_delivery_from_address: defaultDeliveryFromAddress
        default_notification_from_address: defaultNotificationFromAddress
        default_voice_portal_lockout_from_address: defaultVoicePortalLockoutFromAddress
        use_outgoing_mwi_on_smdi: useOutgoingMWIOnSMDI
        mwi_delay_in_seconds: mwiDelayInSeconds
        voice_portal_scope: voicePortalScope
        enterprise_voice_portal_licensed: enterpriseVoicePortalLicensed
        network_wide_messaging: networkWideMessaging
        use_external_routing: useExternalRouting
        default_external_routing_address: defaultExternalRoutingAddress
        vm_only_system: vmOnlySystem
        client_initiated_mail_server_session_timeout_minutes:
            clientInitiatedMailServerSessionTimeoutMinutes
    """

    _ELEMENTS = (
        E("real_delete_for_imap", "realDeleteForImap", bool, is_required=True),
        E("use_dn_in_mail_body", "useDnInMailBody", bool, is_required=True),
        E("use_short_subject_line", "useShortSubjectLine", bool, is_required=True),
        E("max_message_length_minutes", "maxMessageLengthMinutes", int, is_required=True),
        E("max_mailbox_length_minutes", "maxMailboxLengthMinutes", int, is_required=True),
        E("does_message_age", "doesMessageAge", bool, is_required=True),
        E("hold_period_days", "holdPeriodDays", int, is_required=True),
        E("mail_server_net_address", "mailServerNetAddress", str),
        E("mail_server_protocol", "mailServerProtocol", str, is_required=True),
        E(
            "default_delivery_from_address", "defaultDeliveryFromAddress", str,
            is_required=True,
        ),
        E(
            "default_notification_from_address", "defaultNotificationFromAddress", str,
            is_required=True,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress", str, is_required=True,
        ),
        E("use_outgoing_mwi_on_smdi", "useOutgoingMWIOnSMDI", bool, is_required=True),
        E("mwi_delay_in_seconds", "mwiDelayInSeconds", int, is_required=True),
        E("voice_portal_scope", "voicePortalScope", str, is_required=True),
        E(
            "enterprise_voice_portal_licensed", "enterpriseVoicePortalLicensed", bool,
            is_required=True,
        ),
        E("network_wide_messaging", "networkWideMessaging", bool, is_required=True),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("default_external_routing_address", "defaultExternalRoutingAddress", str),
        E("vm_only_system", "vmOnlySystem", bool, is_required=True),
        E(
            "client_initiated_mail_server_session_timeout_minutes",
            "clientInitiatedMailServerSessionTimeoutMinutes", int, is_required=True,
        ),
    )

    real_delete_for_imap: bool = Field(type=bool, required=True, mutable=False)
    use_dn_in_mail_body: bool = Field(type=bool, required=True, mutable=False)
    use_short_subject_line: bool = Field(type=bool, required=True, mutable=False)
    max_message_length_minutes: int = Field(type=int, required=True, mutable=False)
    max_mailbox_length_minutes: int = Field(type=int, required=True, mutable=False)
    does_message_age: bool = Field(type=bool, required=True, mutable=False)
    hold_period_days: int = Field(type=int, required=True, mutable=False)
    mail_server_net_address: str = Field(type=str, required=False, mutable=False)
    mail_server_protocol: str = Field(type=str, required=True, mutable=False)
    default_delivery_from_address: str = Field(type=str, required=True, mutable=False)
    default_notification_from_address: str = Field(type=str, required=True, mutable=False)
    default_voice_portal_lockout_from_address: str = Field(
        type=str, required=True, mutable=False,
    )
    use_outgoing_mwi_on_smdi: bool = Field(type=bool, required=True, mutable=False)
    mwi_delay_in_seconds: int = Field(type=int, required=True, mutable=False)
    voice_portal_scope: str = Field(type=str, required=True, mutable=False)
    enterprise_voice_portal_licensed: bool = Field(type=bool, required=True, mutable=False)
    network_wide_messaging: bool = Field(type=bool, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    default_external_routing_address: str = Field(type=str, required=False, mutable=False)
    vm_only_system: bool = Field(type=bool, required=True, mutable=False)
    client_initiated_mail_server_session_timeout_minutes: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemVoiceMessagingGroupGetResponse21(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetRequest21()``.

    The following elements are only used in AS data mode: realDeleteForImap
    useDnInMailBody useShortSubjectLine maxMessageLengthMinutes maxMailboxLengthMinutes
    doesMessageAge holdPeriodDays mailServerNetAddress mailServerProtocol
    defaultDeliveryFromAddress defaultNotificationFromAddress useOutgoingMWIOnSMDI
    mwiDelayInSeconds voicePortalScope enterpriseVoicePortalLicensed networkWideMessaging
    useExternalRouting defaultExternalRoutingAddress vmOnlySystem
    clientInitiatedMailServerSessionTimeoutMinutes recordingAudioFileFormat

    Attributes:
        real_delete_for_imap: realDeleteForImap
        use_dn_in_mail_body: useDnInMailBody
        use_short_subject_line: useShortSubjectLine
        max_message_length_minutes: maxMessageLengthMinutes
        max_mailbox_length_minutes: maxMailboxLengthMinutes
        does_message_age: doesMessageAge
        hold_period_days: holdPeriodDays
        mail_server_net_address: mailServerNetAddress
        mail_server_protocol: mailServerProtocol
        default_delivery_from_address: defaultDeliveryFromAddress
        default_notification_from_address: defaultNotificationFromAddress
        default_voice_portal_lockout_from_address: defaultVoicePortalLockoutFromAddress
        use_outgoing_mwi_on_smdi: useOutgoingMWIOnSMDI
        mwi_delay_in_seconds: mwiDelayInSeconds
        voice_portal_scope: voicePortalScope
        enterprise_voice_portal_licensed: enterpriseVoicePortalLicensed
        network_wide_messaging: networkWideMessaging
        use_external_routing: useExternalRouting
        default_external_routing_address: defaultExternalRoutingAddress
        vm_only_system: vmOnlySystem
        client_initiated_mail_server_session_timeout_minutes:
            clientInitiatedMailServerSessionTimeoutMinutes
        recording_audio_file_format: recordingAudioFileFormat
    """

    _ELEMENTS = (
        E("real_delete_for_imap", "realDeleteForImap", bool, is_required=True),
        E("use_dn_in_mail_body", "useDnInMailBody", bool, is_required=True),
        E("use_short_subject_line", "useShortSubjectLine", bool, is_required=True),
        E("max_message_length_minutes", "maxMessageLengthMinutes", int, is_required=True),
        E("max_mailbox_length_minutes", "maxMailboxLengthMinutes", int, is_required=True),
        E("does_message_age", "doesMessageAge", bool, is_required=True),
        E("hold_period_days", "holdPeriodDays", int, is_required=True),
        E("mail_server_net_address", "mailServerNetAddress", str),
        E("mail_server_protocol", "mailServerProtocol", str, is_required=True),
        E(
            "default_delivery_from_address", "defaultDeliveryFromAddress", str,
            is_required=True,
        ),
        E(
            "default_notification_from_address", "defaultNotificationFromAddress", str,
            is_required=True,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress", str, is_required=True,
        ),
        E("use_outgoing_mwi_on_smdi", "useOutgoingMWIOnSMDI", bool, is_required=True),
        E("mwi_delay_in_seconds", "mwiDelayInSeconds", int, is_required=True),
        E("voice_portal_scope", "voicePortalScope", str, is_required=True),
        E(
            "enterprise_voice_portal_licensed", "enterpriseVoicePortalLicensed", bool,
            is_required=True,
        ),
        E("network_wide_messaging", "networkWideMessaging", bool, is_required=True),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("default_external_routing_address", "defaultExternalRoutingAddress", str),
        E("vm_only_system", "vmOnlySystem", bool, is_required=True),
        E(
            "client_initiated_mail_server_session_timeout_minutes",
            "clientInitiatedMailServerSessionTimeoutMinutes", int, is_required=True,
        ),
        E("recording_audio_file_format", "recordingAudioFileFormat", str, is_required=True),
    )

    real_delete_for_imap: bool = Field(type=bool, required=True, mutable=False)
    use_dn_in_mail_body: bool = Field(type=bool, required=True, mutable=False)
    use_short_subject_line: bool = Field(type=bool, required=True, mutable=False)
    max_message_length_minutes: int = Field(type=int, required=True, mutable=False)
    max_mailbox_length_minutes: int = Field(type=int, required=True, mutable=False)
    does_message_age: bool = Field(type=bool, required=True, mutable=False)
    hold_period_days: int = Field(type=int, required=True, mutable=False)
    mail_server_net_address: str = Field(type=str, required=False, mutable=False)
    mail_server_protocol: str = Field(type=str, required=True, mutable=False)
    default_delivery_from_address: str = Field(type=str, required=True, mutable=False)
    default_notification_from_address: str = Field(type=str, required=True, mutable=False)
    default_voice_portal_lockout_from_address: str = Field(
        type=str, required=True, mutable=False,
    )
    use_outgoing_mwi_on_smdi: bool = Field(type=bool, required=True, mutable=False)
    mwi_delay_in_seconds: int = Field(type=int, required=True, mutable=False)
    voice_portal_scope: str = Field(type=str, required=True, mutable=False)
    enterprise_voice_portal_licensed: bool = Field(type=bool, required=True, mutable=False)
    network_wide_messaging: bool = Field(type=bool, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    default_external_routing_address: str = Field(type=str, required=False, mutable=False)
    vm_only_system: bool = Field(type=bool, required=True, mutable=False)
    client_initiated_mail_server_session_timeout_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    recording_audio_file_format: str = Field(type=str, required=True, mutable=False)


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse14(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest14()``.


    Attributes:
        use_voice_portal_customization: useVoicePortalCustomization
        voice_portal_main_menu_keys: voicePortalMainMenuKeys
        voice_messaging_menu_keys: voiceMessagingMenuKeys
        change_busy_or_no_answer_greeting_menu_keys: changeBusyOrNoAnswerGreetingMenuKeys
        record_new_greeting_or_personalized_name_menu_keys:
            recordNewGreetingOrPersonalizedNameMenuKeys
        delete_all_messages_menu_keys: deleteAllMessagesMenuKeys
        comm_pilot_express_profile_menu_keys: commPilotExpressProfileMenuKeys
        personalized_name_menu_keys: personalizedNameMenuKeys
        call_forwarding_options_menu_keys: callForwardingOptionsMenuKeys
        change_call_forwarding_destination_menu_keys:
            changeCallForwardingDestinationMenuKeys
        voice_portal_calling_menu_keys: voicePortalCallingMenuKeys
        hoteling_menu_keys: hotelingMenuKeys
        passcode_menu_keys: passcodeMenuKeys
        play_messages_menu_keys: playMessagesMenuKeys
        play_message_menu_keys: playMessageMenuKeys
        additional_message_options_menu_keys: additionalMessageOptionsMenuKeys
        forward_or_compose_message_menu_keys: forwardOrComposeMessageMenuKeys
        reply_message_menu_keys: replyMessageMenuKeys
        send_to_distribution_list_menu_keys: sendToDistributionListMenuKeys
        select_distribution_list_menu_keys: selectDistributionListMenuKeys
        review_selected_distribution_list_menu_keys:
            reviewSelectedDistributionListMenuKeys
        send_message_to_selected_distribution_list_menu_keys:
            sendMessageToSelectedDistributionListMenuKeys
        send_to_all_group_members_menu_keys: sendToAllGroupMembersMenuKeys
        send_to_person_menu_keys: sendToPersonMenuKeys
        change_current_introduction_or_message_or_reply_menu_keys:
            changeCurrentIntroductionOrMessageOrReplyMenuKeys
        voice_portal_login_menu_keys: voicePortalLoginMenuKeys
        fax_messaging_menu_keys: faxMessagingMenuKeys
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization", "useVoicePortalCustomization", bool,
            is_required=True,
        ),
        E(
            "voice_portal_main_menu_keys", "voicePortalMainMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "voice_messaging_menu_keys", "voiceMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys", "deleteAllMessagesMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys", "commPilotExpressProfileMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "personalized_name_menu_keys", "personalizedNameMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys", "callForwardingOptionsMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys", "voicePortalCallingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "hoteling_menu_keys", "hotelingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "passcode_menu_keys", "passcodeMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_messages_menu_keys", "playMessagesMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_message_menu_keys", "playMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "additional_message_options_menu_keys", "additionalMessageOptionsMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys", "forwardOrComposeMessageMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "reply_message_menu_keys", "replyMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys", "sendToDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys", "selectDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys", "sendToAllGroupMembersMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "send_to_person_menu_keys", "sendToPersonMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys", "voicePortalLoginMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "fax_messaging_menu_keys", "faxMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
    )

    use_voice_portal_customization: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_main_menu_keys: str = Field(type=str, required=True, mutable=False)
    voice_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_busy_or_no_answer_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    record_new_greeting_or_personalized_name_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    delete_all_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    comm_pilot_express_profile_menu_keys: str = Field(type=str, required=True, mutable=False)
    personalized_name_menu_keys: str = Field(type=str, required=True, mutable=False)
    call_forwarding_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_call_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_calling_menu_keys: str = Field(type=str, required=True, mutable=False)
    hoteling_menu_keys: str = Field(type=str, required=True, mutable=False)
    passcode_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    additional_message_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    forward_or_compose_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    reply_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    select_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    review_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_message_to_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_to_all_group_members_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_person_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_current_introduction_or_message_or_reply_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_login_menu_keys: str = Field(type=str, required=True, mutable=False)
    fax_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse18(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest18()``.

    Replaced by ``SystemVoiceMessagingGroupGetVoicePortalMenusResponse19()``

    Attributes:
        use_voice_portal_customization: useVoicePortalCustomization
        voice_portal_main_menu_keys: voicePortalMainMenuKeys
        voice_messaging_menu_keys: voiceMessagingMenuKeys
        play_greeting_menu_keys: playGreetingMenuKeys
        change_busy_or_no_answer_greeting_menu_keys: changeBusyOrNoAnswerGreetingMenuKeys
        record_new_greeting_or_personalized_name_menu_keys:
            recordNewGreetingOrPersonalizedNameMenuKeys
        delete_all_messages_menu_keys: deleteAllMessagesMenuKeys
        comm_pilot_express_profile_menu_keys: commPilotExpressProfileMenuKeys
        personalized_name_menu_keys: personalizedNameMenuKeys
        call_forwarding_options_menu_keys: callForwardingOptionsMenuKeys
        change_call_forwarding_destination_menu_keys:
            changeCallForwardingDestinationMenuKeys
        voice_portal_calling_menu_keys: voicePortalCallingMenuKeys
        hoteling_menu_keys: hotelingMenuKeys
        passcode_menu_keys: passcodeMenuKeys
        play_messages_menu_keys: playMessagesMenuKeys
        play_message_menu_keys: playMessageMenuKeys
        additional_message_options_menu_keys: additionalMessageOptionsMenuKeys
        forward_or_compose_message_menu_keys: forwardOrComposeMessageMenuKeys
        reply_message_menu_keys: replyMessageMenuKeys
        send_to_distribution_list_menu_keys: sendToDistributionListMenuKeys
        select_distribution_list_menu_keys: selectDistributionListMenuKeys
        review_selected_distribution_list_menu_keys:
            reviewSelectedDistributionListMenuKeys
        send_message_to_selected_distribution_list_menu_keys:
            sendMessageToSelectedDistributionListMenuKeys
        send_to_all_group_members_menu_keys: sendToAllGroupMembersMenuKeys
        send_to_person_menu_keys: sendToPersonMenuKeys
        change_current_introduction_or_message_or_reply_menu_keys:
            changeCurrentIntroductionOrMessageOrReplyMenuKeys
        voice_portal_login_menu_keys: voicePortalLoginMenuKeys
        fax_messaging_menu_keys: faxMessagingMenuKeys
        message_deposit_menu_keys: messageDepositMenuKeys
        disable_message_deposit_menu_keys: disableMessageDepositMenuKeys
        greeting_only_forwarding_destination_menu_keys:
            greetingOnlyForwardingDestinationMenuKeys
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization", "useVoicePortalCustomization", bool,
            is_required=True,
        ),
        E(
            "voice_portal_main_menu_keys", "voicePortalMainMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "voice_messaging_menu_keys", "voiceMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_greeting_menu_keys", "playGreetingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys", "deleteAllMessagesMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys", "commPilotExpressProfileMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "personalized_name_menu_keys", "personalizedNameMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys", "callForwardingOptionsMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys", "voicePortalCallingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "hoteling_menu_keys", "hotelingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "passcode_menu_keys", "passcodeMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_messages_menu_keys", "playMessagesMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_message_menu_keys", "playMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "additional_message_options_menu_keys", "additionalMessageOptionsMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys", "forwardOrComposeMessageMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "reply_message_menu_keys", "replyMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys", "sendToDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys", "selectDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys", "sendToAllGroupMembersMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "send_to_person_menu_keys", "sendToPersonMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys", "voicePortalLoginMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "fax_messaging_menu_keys", "faxMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "message_deposit_menu_keys", "messageDepositMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys", "disableMessageDepositMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
    )

    use_voice_portal_customization: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_main_menu_keys: str = Field(type=str, required=True, mutable=False)
    voice_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_busy_or_no_answer_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    record_new_greeting_or_personalized_name_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    delete_all_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    comm_pilot_express_profile_menu_keys: str = Field(type=str, required=True, mutable=False)
    personalized_name_menu_keys: str = Field(type=str, required=True, mutable=False)
    call_forwarding_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_call_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_calling_menu_keys: str = Field(type=str, required=True, mutable=False)
    hoteling_menu_keys: str = Field(type=str, required=True, mutable=False)
    passcode_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    additional_message_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    forward_or_compose_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    reply_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    select_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    review_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_message_to_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_to_all_group_members_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_person_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_current_introduction_or_message_or_reply_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_login_menu_keys: str = Field(type=str, required=True, mutable=False)
    fax_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    disable_message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    greeting_only_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse18sp1(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest18sp1()``.

    Replaced by ``SystemVoiceMessagingGroupGetVoicePortalMenusResponse19sp1()``

    Attributes:
        use_voice_portal_customization: useVoicePortalCustomization
        voice_portal_main_menu_keys: voicePortalMainMenuKeys
        voice_messaging_menu_keys: voiceMessagingMenuKeys
        play_greeting_menu_keys: playGreetingMenuKeys
        change_busy_or_no_answer_greeting_menu_keys: changeBusyOrNoAnswerGreetingMenuKeys
        change_extended_away_greeting_menu_keys: changeExtendedAwayGreetingMenuKeys
        record_new_greeting_or_personalized_name_menu_keys:
            recordNewGreetingOrPersonalizedNameMenuKeys
        delete_all_messages_menu_keys: deleteAllMessagesMenuKeys
        comm_pilot_express_profile_menu_keys: commPilotExpressProfileMenuKeys
        personalized_name_menu_keys: personalizedNameMenuKeys
        call_forwarding_options_menu_keys: callForwardingOptionsMenuKeys
        change_call_forwarding_destination_menu_keys:
            changeCallForwardingDestinationMenuKeys
        voice_portal_calling_menu_keys: voicePortalCallingMenuKeys
        hoteling_menu_keys: hotelingMenuKeys
        passcode_menu_keys: passcodeMenuKeys
        play_messages_menu_keys: playMessagesMenuKeys
        play_message_menu_keys: playMessageMenuKeys
        additional_message_options_menu_keys: additionalMessageOptionsMenuKeys
        forward_or_compose_message_menu_keys: forwardOrComposeMessageMenuKeys
        reply_message_menu_keys: replyMessageMenuKeys
        send_to_distribution_list_menu_keys: sendToDistributionListMenuKeys
        select_distribution_list_menu_keys: selectDistributionListMenuKeys
        review_selected_distribution_list_menu_keys:
            reviewSelectedDistributionListMenuKeys
        send_message_to_selected_distribution_list_menu_keys:
            sendMessageToSelectedDistributionListMenuKeys
        send_to_all_group_members_menu_keys: sendToAllGroupMembersMenuKeys
        send_to_person_menu_keys: sendToPersonMenuKeys
        change_current_introduction_or_message_or_reply_menu_keys:
            changeCurrentIntroductionOrMessageOrReplyMenuKeys
        voice_portal_login_menu_keys: voicePortalLoginMenuKeys
        fax_messaging_menu_keys: faxMessagingMenuKeys
        message_deposit_menu_keys: messageDepositMenuKeys
        disable_message_deposit_menu_keys: disableMessageDepositMenuKeys
        greeting_only_forwarding_destination_menu_keys:
            greetingOnlyForwardingDestinationMenuKeys
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization", "useVoicePortalCustomization", bool,
            is_required=True,
        ),
        E(
            "voice_portal_main_menu_keys", "voicePortalMainMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "voice_messaging_menu_keys", "voiceMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_greeting_menu_keys", "playGreetingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_extended_away_greeting_menu_keys",
            "changeExtendedAwayGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys", "deleteAllMessagesMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys", "commPilotExpressProfileMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "personalized_name_menu_keys", "personalizedNameMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys", "callForwardingOptionsMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys", "voicePortalCallingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "hoteling_menu_keys", "hotelingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "passcode_menu_keys", "passcodeMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_messages_menu_keys", "playMessagesMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_message_menu_keys", "playMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "additional_message_options_menu_keys", "additionalMessageOptionsMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys", "forwardOrComposeMessageMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "reply_message_menu_keys", "replyMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys", "sendToDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys", "selectDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys", "sendToAllGroupMembersMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "send_to_person_menu_keys", "sendToPersonMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys", "voicePortalLoginMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "fax_messaging_menu_keys", "faxMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "message_deposit_menu_keys", "messageDepositMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys", "disableMessageDepositMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
    )

    use_voice_portal_customization: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_main_menu_keys: str = Field(type=str, required=True, mutable=False)
    voice_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_busy_or_no_answer_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    change_extended_away_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    record_new_greeting_or_personalized_name_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    delete_all_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    comm_pilot_express_profile_menu_keys: str = Field(type=str, required=True, mutable=False)
    personalized_name_menu_keys: str = Field(type=str, required=True, mutable=False)
    call_forwarding_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_call_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_calling_menu_keys: str = Field(type=str, required=True, mutable=False)
    hoteling_menu_keys: str = Field(type=str, required=True, mutable=False)
    passcode_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    additional_message_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    forward_or_compose_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    reply_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    select_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    review_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_message_to_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_to_all_group_members_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_person_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_current_introduction_or_message_or_reply_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_login_menu_keys: str = Field(type=str, required=True, mutable=False)
    fax_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    disable_message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    greeting_only_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse19(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest19()``.

    Replaced by ``SystemVoiceMessagingGroupGetVoicePortalMenusResponse19sp1()``

    Attributes:
        use_voice_portal_customization: useVoicePortalCustomization
        voice_portal_main_menu_keys: voicePortalMainMenuKeys
        greetings_menu_keys: greetingsMenuKeys
        conference_greeting_menu_keys: conferenceGreetingMenuKeys
        voice_messaging_menu_keys: voiceMessagingMenuKeys
        play_greeting_menu_keys: playGreetingMenuKeys
        change_busy_or_no_answer_greeting_menu_keys: changeBusyOrNoAnswerGreetingMenuKeys
        record_new_greeting_or_personalized_name_menu_keys:
            recordNewGreetingOrPersonalizedNameMenuKeys
        delete_all_messages_menu_keys: deleteAllMessagesMenuKeys
        comm_pilot_express_profile_menu_keys: commPilotExpressProfileMenuKeys
        personalized_name_menu_keys: personalizedNameMenuKeys
        call_forwarding_options_menu_keys: callForwardingOptionsMenuKeys
        change_call_forwarding_destination_menu_keys:
            changeCallForwardingDestinationMenuKeys
        voice_portal_calling_menu_keys: voicePortalCallingMenuKeys
        hoteling_menu_keys: hotelingMenuKeys
        passcode_menu_keys: passcodeMenuKeys
        play_messages_menu_keys: playMessagesMenuKeys
        play_message_menu_keys: playMessageMenuKeys
        additional_message_options_menu_keys: additionalMessageOptionsMenuKeys
        forward_or_compose_message_menu_keys: forwardOrComposeMessageMenuKeys
        reply_message_menu_keys: replyMessageMenuKeys
        send_to_distribution_list_menu_keys: sendToDistributionListMenuKeys
        select_distribution_list_menu_keys: selectDistributionListMenuKeys
        review_selected_distribution_list_menu_keys:
            reviewSelectedDistributionListMenuKeys
        send_message_to_selected_distribution_list_menu_keys:
            sendMessageToSelectedDistributionListMenuKeys
        send_to_all_group_members_menu_keys: sendToAllGroupMembersMenuKeys
        send_to_person_menu_keys: sendToPersonMenuKeys
        change_current_introduction_or_message_or_reply_menu_keys:
            changeCurrentIntroductionOrMessageOrReplyMenuKeys
        voice_portal_login_menu_keys: voicePortalLoginMenuKeys
        fax_messaging_menu_keys: faxMessagingMenuKeys
        message_deposit_menu_keys: messageDepositMenuKeys
        disable_message_deposit_menu_keys: disableMessageDepositMenuKeys
        greeting_only_forwarding_destination_menu_keys:
            greetingOnlyForwardingDestinationMenuKeys
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization", "useVoicePortalCustomization", bool,
            is_required=True,
        ),
        E(
            "voice_portal_main_menu_keys", "voicePortalMainMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greetings_menu_keys", "greetingsMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "conference_greeting_menu_keys", "conferenceGreetingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "voice_messaging_menu_keys", "voiceMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_greeting_menu_keys", "playGreetingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys", "deleteAllMessagesMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys", "commPilotExpressProfileMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "personalized_name_menu_keys", "personalizedNameMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys", "callForwardingOptionsMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys", "voicePortalCallingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "hoteling_menu_keys", "hotelingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "passcode_menu_keys", "passcodeMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_messages_menu_keys", "playMessagesMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_message_menu_keys", "playMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "additional_message_options_menu_keys", "additionalMessageOptionsMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys", "forwardOrComposeMessageMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "reply_message_menu_keys", "replyMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys", "sendToDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys", "selectDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys", "sendToAllGroupMembersMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "send_to_person_menu_keys", "sendToPersonMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys", "voicePortalLoginMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "fax_messaging_menu_keys", "faxMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "message_deposit_menu_keys", "messageDepositMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys", "disableMessageDepositMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
    )

    use_voice_portal_customization: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_main_menu_keys: str = Field(type=str, required=True, mutable=False)
    greetings_menu_keys: str = Field(type=str, required=True, mutable=False)
    conference_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    voice_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_busy_or_no_answer_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    record_new_greeting_or_personalized_name_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    delete_all_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    comm_pilot_express_profile_menu_keys: str = Field(type=str, required=True, mutable=False)
    personalized_name_menu_keys: str = Field(type=str, required=True, mutable=False)
    call_forwarding_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_call_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_calling_menu_keys: str = Field(type=str, required=True, mutable=False)
    hoteling_menu_keys: str = Field(type=str, required=True, mutable=False)
    passcode_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    additional_message_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    forward_or_compose_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    reply_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    select_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    review_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_message_to_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_to_all_group_members_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_person_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_current_introduction_or_message_or_reply_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_login_menu_keys: str = Field(type=str, required=True, mutable=False)
    fax_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    disable_message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    greeting_only_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse19sp1(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest19sp1()``.

    Replaced by ``SystemVoiceMessagingGroupGetVoicePortalMenusResponse20()``

    Attributes:
        use_voice_portal_customization: useVoicePortalCustomization
        voice_portal_main_menu_keys: voicePortalMainMenuKeys
        greetings_menu_keys: greetingsMenuKeys
        conference_greeting_menu_keys: conferenceGreetingMenuKeys
        voice_messaging_menu_keys: voiceMessagingMenuKeys
        play_greeting_menu_keys: playGreetingMenuKeys
        change_busy_or_no_answer_greeting_menu_keys: changeBusyOrNoAnswerGreetingMenuKeys
        change_extended_away_greeting_menu_keys: changeExtendedAwayGreetingMenuKeys
        record_new_greeting_or_personalized_name_menu_keys:
            recordNewGreetingOrPersonalizedNameMenuKeys
        delete_all_messages_menu_keys: deleteAllMessagesMenuKeys
        comm_pilot_express_profile_menu_keys: commPilotExpressProfileMenuKeys
        personalized_name_menu_keys: personalizedNameMenuKeys
        call_forwarding_options_menu_keys: callForwardingOptionsMenuKeys
        change_call_forwarding_destination_menu_keys:
            changeCallForwardingDestinationMenuKeys
        voice_portal_calling_menu_keys: voicePortalCallingMenuKeys
        hoteling_menu_keys: hotelingMenuKeys
        passcode_menu_keys: passcodeMenuKeys
        play_messages_menu_keys: playMessagesMenuKeys
        play_message_menu_keys: playMessageMenuKeys
        additional_message_options_menu_keys: additionalMessageOptionsMenuKeys
        forward_or_compose_message_menu_keys: forwardOrComposeMessageMenuKeys
        reply_message_menu_keys: replyMessageMenuKeys
        send_to_distribution_list_menu_keys: sendToDistributionListMenuKeys
        select_distribution_list_menu_keys: selectDistributionListMenuKeys
        review_selected_distribution_list_menu_keys:
            reviewSelectedDistributionListMenuKeys
        send_message_to_selected_distribution_list_menu_keys:
            sendMessageToSelectedDistributionListMenuKeys
        send_to_all_group_members_menu_keys: sendToAllGroupMembersMenuKeys
        send_to_person_menu_keys: sendToPersonMenuKeys
        change_current_introduction_or_message_or_reply_menu_keys:
            changeCurrentIntroductionOrMessageOrReplyMenuKeys
        voice_portal_login_menu_keys: voicePortalLoginMenuKeys
        fax_messaging_menu_keys: faxMessagingMenuKeys
        message_deposit_menu_keys: messageDepositMenuKeys
        disable_message_deposit_menu_keys: disableMessageDepositMenuKeys
        greeting_only_forwarding_destination_menu_keys:
            greetingOnlyForwardingDestinationMenuKeys
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization", "useVoicePortalCustomization", bool,
            is_required=True,
        ),
        E(
            "voice_portal_main_menu_keys", "voicePortalMainMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greetings_menu_keys", "greetingsMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "conference_greeting_menu_keys", "conferenceGreetingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "voice_messaging_menu_keys", "voiceMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_greeting_menu_keys", "playGreetingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_extended_away_greeting_menu_keys",
            "changeExtendedAwayGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys", "deleteAllMessagesMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys", "commPilotExpressProfileMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "personalized_name_menu_keys", "personalizedNameMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys", "callForwardingOptionsMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys", "voicePortalCallingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "hoteling_menu_keys", "hotelingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "passcode_menu_keys", "passcodeMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_messages_menu_keys", "playMessagesMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_message_menu_keys", "playMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "additional_message_options_menu_keys", "additionalMessageOptionsMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys", "forwardOrComposeMessageMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "reply_message_menu_keys", "replyMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys", "sendToDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys", "selectDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys", "sendToAllGroupMembersMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "send_to_person_menu_keys", "sendToPersonMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys", "voicePortalLoginMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "fax_messaging_menu_keys", "faxMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "message_deposit_menu_keys", "messageDepositMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys", "disableMessageDepositMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
    )

    use_voice_portal_customization: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_main_menu_keys: str = Field(type=str, required=True, mutable=False)
    greetings_menu_keys: str = Field(type=str, required=True, mutable=False)
    conference_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    voice_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_busy_or_no_answer_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    change_extended_away_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    record_new_greeting_or_personalized_name_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    delete_all_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    comm_pilot_express_profile_menu_keys: str = Field(type=str, required=True, mutable=False)
    personalized_name_menu_keys: str = Field(type=str, required=True, mutable=False)
    call_forwarding_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_call_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_calling_menu_keys: str = Field(type=str, required=True, mutable=False)
    hoteling_menu_keys: str = Field(type=str, required=True, mutable=False)
    passcode_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    additional_message_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    forward_or_compose_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    reply_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    select_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    review_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_message_to_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_to_all_group_members_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_person_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_current_introduction_or_message_or_reply_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_login_menu_keys: str = Field(type=str, required=True, mutable=False)
    fax_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    disable_message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    greeting_only_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse20(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest20()``.


    Attributes:
        use_voice_portal_customization: useVoicePortalCustomization
        voice_portal_main_menu_keys: voicePortalMainMenuKeys
        announcement_menu_keys: announcementMenuKeys
        announcement_recording_menu_keys: announcementRecordingMenuKeys
        greetings_menu_keys: greetingsMenuKeys
        conference_greeting_menu_keys: conferenceGreetingMenuKeys
        voice_messaging_menu_keys: voiceMessagingMenuKeys
        play_greeting_menu_keys: playGreetingMenuKeys
        change_busy_or_no_answer_greeting_menu_keys: changeBusyOrNoAnswerGreetingMenuKeys
        change_extended_away_greeting_menu_keys: changeExtendedAwayGreetingMenuKeys
        record_new_greeting_or_personalized_name_menu_keys:
            recordNewGreetingOrPersonalizedNameMenuKeys
        delete_all_messages_menu_keys: deleteAllMessagesMenuKeys
        comm_pilot_express_profile_menu_keys: commPilotExpressProfileMenuKeys
        personalized_name_menu_keys: personalizedNameMenuKeys
        call_forwarding_options_menu_keys: callForwardingOptionsMenuKeys
        change_call_forwarding_destination_menu_keys:
            changeCallForwardingDestinationMenuKeys
        voice_portal_calling_menu_keys: voicePortalCallingMenuKeys
        hoteling_menu_keys: hotelingMenuKeys
        passcode_menu_keys: passcodeMenuKeys
        play_messages_menu_keys: playMessagesMenuKeys
        play_message_menu_keys: playMessageMenuKeys
        additional_message_options_menu_keys: additionalMessageOptionsMenuKeys
        forward_or_compose_message_menu_keys: forwardOrComposeMessageMenuKeys
        reply_message_menu_keys: replyMessageMenuKeys
        send_to_distribution_list_menu_keys: sendToDistributionListMenuKeys
        select_distribution_list_menu_keys: selectDistributionListMenuKeys
        review_selected_distribution_list_menu_keys:
            reviewSelectedDistributionListMenuKeys
        send_message_to_selected_distribution_list_menu_keys:
            sendMessageToSelectedDistributionListMenuKeys
        send_to_all_group_members_menu_keys: sendToAllGroupMembersMenuKeys
        send_to_person_menu_keys: sendToPersonMenuKeys
        change_current_introduction_or_message_or_reply_menu_keys:
            changeCurrentIntroductionOrMessageOrReplyMenuKeys
        voice_portal_login_menu_keys: voicePortalLoginMenuKeys
        fax_messaging_menu_keys: faxMessagingMenuKeys
        message_deposit_menu_keys: messageDepositMenuKeys
        disable_message_deposit_menu_keys: disableMessageDepositMenuKeys
        greeting_only_forwarding_destination_menu_keys:
            greetingOnlyForwardingDestinationMenuKeys
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization", "useVoicePortalCustomization", bool,
            is_required=True,
        ),
        E(
            "voice_portal_main_menu_keys", "voicePortalMainMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "announcement_menu_keys", "announcementMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "announcement_recording_menu_keys", "announcementRecordingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greetings_menu_keys", "greetingsMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "conference_greeting_menu_keys", "conferenceGreetingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "voice_messaging_menu_keys", "voiceMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_greeting_menu_keys", "playGreetingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_extended_away_greeting_menu_keys",
            "changeExtendedAwayGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys", "deleteAllMessagesMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys", "commPilotExpressProfileMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "personalized_name_menu_keys", "personalizedNameMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys", "callForwardingOptionsMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys", "voicePortalCallingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "hoteling_menu_keys", "hotelingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "passcode_menu_keys", "passcodeMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_messages_menu_keys", "playMessagesMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_message_menu_keys", "playMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "additional_message_options_menu_keys", "additionalMessageOptionsMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys", "forwardOrComposeMessageMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "reply_message_menu_keys", "replyMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys", "sendToDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys", "selectDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys", "sendToAllGroupMembersMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "send_to_person_menu_keys", "sendToPersonMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys", "voicePortalLoginMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "fax_messaging_menu_keys", "faxMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "message_deposit_menu_keys", "messageDepositMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys", "disableMessageDepositMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
    )

    use_voice_portal_customization: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_main_menu_keys: str = Field(type=str, required=True, mutable=False)
    announcement_menu_keys: str = Field(type=str, required=True, mutable=False)
    announcement_recording_menu_keys: str = Field(type=str, required=True, mutable=False)
    greetings_menu_keys: str = Field(type=str, required=True, mutable=False)
    conference_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    voice_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_busy_or_no_answer_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    change_extended_away_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    record_new_greeting_or_personalized_name_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    delete_all_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    comm_pilot_express_profile_menu_keys: str = Field(type=str, required=True, mutable=False)
    personalized_name_menu_keys: str = Field(type=str, required=True, mutable=False)
    call_forwarding_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_call_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_calling_menu_keys: str = Field(type=str, required=True, mutable=False)
    hoteling_menu_keys: str = Field(type=str, required=True, mutable=False)
    passcode_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    additional_message_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    forward_or_compose_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    reply_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    select_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    review_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_message_to_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_to_all_group_members_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_person_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_current_introduction_or_message_or_reply_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_login_menu_keys: str = Field(type=str, required=True, mutable=False)
    fax_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    disable_message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    greeting_only_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse21(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest21()``.


    Attributes:
        use_voice_portal_customization: useVoicePortalCustomization
        voice_portal_main_menu_keys: voicePortalMainMenuKeys
        announcement_menu_keys: announcementMenuKeys
        announcement_recording_menu_keys: announcementRecordingMenuKeys
        greetings_menu_keys: greetingsMenuKeys
        conference_greeting_menu_keys: conferenceGreetingMenuKeys
        voice_messaging_menu_keys: voiceMessagingMenuKeys
        play_greeting_menu_keys: playGreetingMenuKeys
        change_busy_or_no_answer_greeting_menu_keys: changeBusyOrNoAnswerGreetingMenuKeys
        change_extended_away_greeting_menu_keys: changeExtendedAwayGreetingMenuKeys
        record_new_greeting_or_personalized_name_menu_keys:
            recordNewGreetingOrPersonalizedNameMenuKeys
        delete_all_messages_menu_keys: deleteAllMessagesMenuKeys
        comm_pilot_express_profile_menu_keys: commPilotExpressProfileMenuKeys
        personalized_name_menu_keys: personalizedNameMenuKeys
        call_forwarding_options_menu_keys: callForwardingOptionsMenuKeys
        change_call_forwarding_destination_menu_keys:
            changeCallForwardingDestinationMenuKeys
        voice_portal_calling_menu_keys: voicePortalCallingMenuKeys
        hoteling_menu_keys: hotelingMenuKeys
        passcode_menu_keys: passcodeMenuKeys
        play_messages_menu_keys: playMessagesMenuKeys
        play_message_menu_keys: playMessageMenuKeys
        additional_message_options_menu_keys: additionalMessageOptionsMenuKeys
        forward_or_compose_message_menu_keys: forwardOrComposeMessageMenuKeys
        reply_message_menu_keys: replyMessageMenuKeys
        send_to_distribution_list_menu_keys: sendToDistributionListMenuKeys
        select_distribution_list_menu_keys: selectDistributionListMenuKeys
        review_selected_distribution_list_menu_keys:
            reviewSelectedDistributionListMenuKeys
        send_message_to_selected_distribution_list_menu_keys:
            sendMessageToSelectedDistributionListMenuKeys
        send_to_all_group_members_menu_keys: sendToAllGroupMembersMenuKeys
        send_to_person_menu_keys: sendToPersonMenuKeys
        change_current_introduction_or_message_or_reply_menu_keys:
            changeCurrentIntroductionOrMessageOrReplyMenuKeys
        voice_portal_login_menu_keys: voicePortalLoginMenuKeys
        fax_messaging_menu_keys: faxMessagingMenuKeys
        message_deposit_menu_keys: messageDepositMenuKeys
        disable_message_deposit_menu_keys: disableMessageDepositMenuKeys
        greeting_only_forwarding_destination_menu_keys:
            greetingOnlyForwardingDestinationMenuKeys
        personal_assistant_menu_keys: personalAssistantMenuKeys
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization", "useVoicePortalCustomization", bool,
            is_required=True,
        ),
        E(
            "voice_portal_main_menu_keys", "voicePortalMainMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "announcement_menu_keys", "announcementMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "announcement_recording_menu_keys", "announcementRecordingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greetings_menu_keys", "greetingsMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "conference_greeting_menu_keys", "conferenceGreetingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "voice_messaging_menu_keys", "voiceMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_greeting_menu_keys", "playGreetingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_extended_away_greeting_menu_keys",
            "changeExtendedAwayGreetingMenuKeys", str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys", "deleteAllMessagesMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys", "commPilotExpressProfileMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "personalized_name_menu_keys", "personalizedNameMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys", "callForwardingOptionsMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys", "voicePortalCallingMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "hoteling_menu_keys", "hotelingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "passcode_menu_keys", "passcodeMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_messages_menu_keys", "playMessagesMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "play_message_menu_keys", "playMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "additional_message_options_menu_keys", "additionalMessageOptionsMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys", "forwardOrComposeMessageMenuKeys",
            str, is_complex=True, is_required=True,
        ),  # unknown
        E(
            "reply_message_menu_keys", "replyMessageMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys", "sendToDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys", "selectDistributionListMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys", "sendToAllGroupMembersMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "send_to_person_menu_keys", "sendToPersonMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys", "voicePortalLoginMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "fax_messaging_menu_keys", "faxMessagingMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "message_deposit_menu_keys", "messageDepositMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys", "disableMessageDepositMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys", str, is_complex=True,
            is_required=True,
        ),  # unknown
        E(
            "personal_assistant_menu_keys", "personalAssistantMenuKeys", str,
            is_complex=True, is_required=True,
        ),  # unknown
    )

    use_voice_portal_customization: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_main_menu_keys: str = Field(type=str, required=True, mutable=False)
    announcement_menu_keys: str = Field(type=str, required=True, mutable=False)
    announcement_recording_menu_keys: str = Field(type=str, required=True, mutable=False)
    greetings_menu_keys: str = Field(type=str, required=True, mutable=False)
    conference_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    voice_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_greeting_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_busy_or_no_answer_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    change_extended_away_greeting_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    record_new_greeting_or_personalized_name_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    delete_all_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    comm_pilot_express_profile_menu_keys: str = Field(type=str, required=True, mutable=False)
    personalized_name_menu_keys: str = Field(type=str, required=True, mutable=False)
    call_forwarding_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_call_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_calling_menu_keys: str = Field(type=str, required=True, mutable=False)
    hoteling_menu_keys: str = Field(type=str, required=True, mutable=False)
    passcode_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_messages_menu_keys: str = Field(type=str, required=True, mutable=False)
    play_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    additional_message_options_menu_keys: str = Field(type=str, required=True, mutable=False)
    forward_or_compose_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    reply_message_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    select_distribution_list_menu_keys: str = Field(type=str, required=True, mutable=False)
    review_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_message_to_selected_distribution_list_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    send_to_all_group_members_menu_keys: str = Field(type=str, required=True, mutable=False)
    send_to_person_menu_keys: str = Field(type=str, required=True, mutable=False)
    change_current_introduction_or_message_or_reply_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    voice_portal_login_menu_keys: str = Field(type=str, required=True, mutable=False)
    fax_messaging_menu_keys: str = Field(type=str, required=True, mutable=False)
    message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    disable_message_deposit_menu_keys: str = Field(type=str, required=True, mutable=False)
    greeting_only_forwarding_destination_menu_keys: str = Field(
        type=str, required=True, mutable=False,
    )
    personal_assistant_menu_keys: str = Field(type=str, required=True, mutable=False)


class SystemZoneCallingRestrictionsZoneGetListResponse(OCIResponse):
    """
    Response to ``SystemZoneCallingRestrictionsZoneGetListRequest()``.

    Contains a table of all the zones in the system.  The column headings are "Zone Name"
    , "Physical Location". Replaced by: ``SystemZoneGetListResponse()``

    Attributes:
        zone_table: zoneTable
    """

    _ELEMENTS = (
        E("zone_table", "zoneTable", list, is_complex=True, is_required=True, is_table=True),
    )

    zone_table: "list" = Field(type=list, required=True, mutable=False)


class SystemZoneCallingZonePhysicalLocationGetResponse(OCIResponse):
    """
    Response to ``SystemZoneCallingZonePhysicalLocationGetRequest()``.


    Attributes:
        physical_location: physicalLocation
    """

    _ELEMENTS = (
        E("physical_location", "physicalLocation", str),
    )

    physical_location: str = Field(type=str, required=False, mutable=False)


class SystemZoneGetListResponse(OCIResponse):
    """
    Response to the ``SystemZoneGetListRequest()``.


    Attributes:
        zone_name: zoneName
    """

    _ELEMENTS = (
        E("zone_name", "zoneName", str, is_array=True),
    )

    zone_name: "List[str]" = Field(type=list, required=False, mutable=False)


class SystemZoneLocationBasedPhysicalLocationGetListResponse(OCIResponse):
    """
    Response to ``SystemZoneLocationBasedPhysicalLocationGetListRequest()``.


    Attributes:
        physical_location: physicalLocation
    """

    _ELEMENTS = (
        E("physical_location", "physicalLocation", str, is_array=True),
    )

    physical_location: "List[str]" = Field(type=list, required=False, mutable=False)


class TutorialFlagGetResponse(OCIResponse):
    """
    Response to the ``TutorialFlagGetRequest()``.


    Attributes:
        enable_tutorial: enableTutorial
    """

    _ELEMENTS = (
        E("enable_tutorial", "enableTutorial", bool, is_required=True),
    )

    enable_tutorial: bool = Field(type=bool, required=True, mutable=False)


class UserAccessDeviceFileGetListResponse(OCIResponse):
    """
    Response to ``UserAccessDeviceFileGetListRequest()``.

    Contains a table of user modifiable Device Management files.  The column headings are:
    "File Format", "Template URL".

    Attributes:
        device_files_table: deviceFilesTable
    """

    _ELEMENTS = (
        E(
            "device_files_table", "deviceFilesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_files_table: "list" = Field(type=list, required=True, mutable=False)


class UserAccessDeviceFileGetResponse(OCIResponse):
    """
    Response to ``UserAccessDeviceFileGetRequest()``.


    Attributes:
        template_url: templateUrl
    """

    _ELEMENTS = (
        E("template_url", "templateUrl", str),
    )

    template_url: str = Field(type=str, required=False, mutable=False)


class UserAccessDeviceTagsGetResponse(OCIResponse):
    """
    Response to ``UserAccessDeviceTagsGetRequest()``.

    The response contains a table with columns: "Tag Name", and "Tag Value".

    Attributes:
        device_tags_table: deviceTagsTable
    """

    _ELEMENTS = (
        E(
            "device_tags_table", "deviceTagsTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_tags_table: "list" = Field(type=list, required=True, mutable=False)


class UserAdviceOfChargeGetResponse(OCIResponse):
    """
    Response to ``UserAdviceOfChargeGetRequest()``.


    Attributes:
        is_active: isActive
        aoc_type: aocType
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("aoc_type", "aocType", str, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    aoc_type: str = Field(type=str, required=True, mutable=False)


class UserAnnouncementFileGetAvailableListResponse(OCIResponse):
    """
    Response to ``UserAnnouncementFileGetAvailableListRequest()``.

    The response contains a table with columns: "Name", "Media Type", "File Size" and
    "Repository Type". The "Name" column contains the name of the announcement file.  The
    "Media Type" column contains the media type of the announcement file with the possible
    values: WMA - Windows Media Audio file WAV - A WAV file 3GP - A 3GP file MOV - A MOV
    file using a H.263 or H.264 codec.  The "File Size" is in Kilobytes.  The "Repository
    Type" column contains the type of repository for the announcement file such as "User"
    or "Group" The "File Size" column contains the file size in kB of the announcement
    file.

    Attributes:
        announcement_table: announcementTable
    """

    _ELEMENTS = (
        E(
            "announcement_table", "announcementTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    announcement_table: "list" = Field(type=list, required=True, mutable=False)


class UserAnnouncementFileGetListResponse(OCIResponse):
    """
    Response to ``UserAnnouncementFileGetListRequest()``.

    When requested, the response contains a table with columns: "Name", "Media Type",
    "File Size". The "Name" column contains the name of the announcement file.  The "Media
    Type" column contains the media type of the announcement file with the possible
    values: WMA - Windows Media Audio file WAV - A WAV file 3GP - A 3GP file MOV - A MOV
    file using a H.263 or H.264 codec.  The "File Size" column contains the file size in
    kB of the announcement file.

    The response also contains the current total file size (KB) for the user across all
    media types and the maximum total file size (MB) allowed for the user.

    Attributes:
        announcement_table: announcementTable
        total_file_size: totalFileSize
        max_file_size: maxFileSize
    """

    _ELEMENTS = (
        E("announcement_table", "announcementTable", list, is_complex=True, is_table=True),
        E("total_file_size", "totalFileSize", int, is_required=True),
        E("max_file_size", "maxFileSize", int, is_required=True),
    )

    announcement_table: "list" = Field(type=list, required=False, mutable=False)
    total_file_size: int = Field(type=int, required=True, mutable=False)
    max_file_size: int = Field(type=int, required=True, mutable=False)


class UserAnnouncementFileGetResponse(OCIResponse):
    """
    Response to ``UserAnnouncementFileGetRequest()``.

    The response contains the file size (KB), uploaded timestamp, description and usage
    for an announcement file in the user announcement repository.  The usage table has
    columns "Service Name", "Criteria Name" The "Service Name"" values correspond to
    string values of the UserService data types.  With the exception of the string "Voice
    Portal" which is returned when the announcement is being used by Voice Portal
    Personalized Name.  For Call Center and Route Point users the "Instance Name" column
    contains the instance id and when the announcement is being used by a DNIS, "Intance
    Name" column contans the instance id and the DNIS id.  For Auto Attendants with
    submenus and the announcement is used by a submenu the "Instance Name" column will
    contain the submenu name

    Attributes:
        description: description
        filesize: filesize
        last_uploaded: lastUploaded
        usage_table: usageTable
    """

    _ELEMENTS = (
        E("description", "description", str, is_required=True),
        E("filesize", "filesize", int, is_required=True),
        E("last_uploaded", "lastUploaded", str, is_required=True),
        E(
            "usage_table", "usageTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    description: str = Field(type=str, required=True, mutable=False)
    filesize: int = Field(type=int, required=True, mutable=False)
    last_uploaded: str = Field(type=str, required=True, mutable=False)
    usage_table: "list" = Field(type=list, required=True, mutable=False)


class UserAnonymousCallRejectionGetResponse(OCIResponse):
    """
    Response to ``UserAnonymousCallRejectionGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserAttendantConsoleGetAvailableUserListResponse(OCIResponse):
    """
    Response to ``UserAttendantConsoleGetAvailableUserListRequest()``.

    Returns a 10 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Phone Number", "Extension",
    "Department", "Email Address", "IMP Id".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserAttendantConsoleGetResponse(OCIResponse):
    """
    Response to ``UserAttendantConsoleGetRequest()``.


    Attributes:
        launch_on_login: launchOnLogin
        allow_user_config_call_details: allowUserConfigCallDetails
        allow_user_view_call_details: allowUserViewCallDetails
        display_column: displayColumn
    """

    _ELEMENTS = (
        E("launch_on_login", "launchOnLogin", bool, is_required=True),
        E(
            "allow_user_config_call_details", "allowUserConfigCallDetails", bool,
            is_required=True,
        ),
        E("allow_user_view_call_details", "allowUserViewCallDetails", bool, is_required=True),
        E("display_column", "displayColumn", str),
    )

    launch_on_login: bool = Field(type=bool, required=True, mutable=False)
    allow_user_config_call_details: bool = Field(type=bool, required=True, mutable=False)
    allow_user_view_call_details: bool = Field(type=bool, required=True, mutable=False)
    display_column: str = Field(type=str, required=False, mutable=False)


class UserAttendantConsoleGetResponse14sp2(OCIResponse):
    """
    Response to ``UserAttendantConsoleGetRequest14sp2()``.

    Returns a 9 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Phone Number", "Extension",
    "Department", "Email Address", "IMP Id".

    Attributes:
        launch_on_login: launchOnLogin
        allow_user_config_call_details: allowUserConfigCallDetails
        allow_user_view_call_details: allowUserViewCallDetails
        display_column: displayColumn
        monitored_user_table: monitoredUserTable
    """

    _ELEMENTS = (
        E("launch_on_login", "launchOnLogin", bool, is_required=True),
        E(
            "allow_user_config_call_details", "allowUserConfigCallDetails", bool,
            is_required=True,
        ),
        E("allow_user_view_call_details", "allowUserViewCallDetails", bool, is_required=True),
        E("display_column", "displayColumn", str),
        E(
            "monitored_user_table", "monitoredUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    launch_on_login: bool = Field(type=bool, required=True, mutable=False)
    allow_user_config_call_details: bool = Field(type=bool, required=True, mutable=False)
    allow_user_view_call_details: bool = Field(type=bool, required=True, mutable=False)
    display_column: str = Field(type=str, required=False, mutable=False)
    monitored_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserAuthenticationGetResponse(OCIResponse):
    """
    Response to the ``UserAuthenticationGetRequest()``.


    Attributes:
        user_name: userName
    """

    _ELEMENTS = (
        E("user_name", "userName", str),
    )

    user_name: str = Field(type=str, required=False, mutable=False)


class UserAutomaticCallbackGetResponse(OCIResponse):
    """
    Response to ``UserAutomaticCallbackGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserAutomaticHoldRetrieveGetResponse(OCIResponse):
    """
    Response to ``UserAutomaticHoldRetrieveGetRequest()``.


    Attributes:
        is_active: isActive
        recall_timer_seconds: recallTimerSeconds
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("recall_timer_seconds", "recallTimerSeconds", int, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    recall_timer_seconds: int = Field(type=int, required=True, mutable=False)


class UserBargeInExemptGetResponse(OCIResponse):
    """
    Response to ``UserBargeInExemptGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserBroadWorksAnywhereGetAvailablePortalListResponse(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetAvailablePortalListRequest()``.

    Contains a table with column headings: "Portal Name", "Phone Number", "Extension",
    "Language".

    Attributes:
        portal_table: portalTable
    """

    _ELEMENTS = (
        E(
            "portal_table", "portalTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    portal_table: "list" = Field(type=list, required=True, mutable=False)


class UserBroadWorksAnywhereGetPhoneNumberResponse(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetPhoneNumberRequest()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Calls From", "Blacklisted", "Holiday Schedule", "Calls To Type", "Calls To
    Number" and "Calls To Extension". The possible values for the "Calls To Type" column
    are the following or a combination of them separated by comma: - Primary - Alternate X
    (where x is a number between 1 and 10) - Mobility The possible values for the "Calls
    To Number" column are the following or a combination of them separated by comma: - The
    value of the phone number for the corresponding Calls To Type, when the number is
    available.  i.e.  Alternate 1 may have extension, but no number.  - When no number is
    available a blank space is provided instead.  The possible values for the "Calls To
    Extension" column are the following or a caombination of them separated by comma: -
    The value of the extension for the corresponding Calls To Type, when the extension is
    available.  i.e.  Primary may have number, but no extension.  - For Mobility Calls To
    Type, this is always blank.  - When no exension is available a blank space is provided
    instead.

    Attributes:
        description: description
        outbound_alternate_number: outboundAlternateNumber
        is_active: isActive
        broadworks_call_control: broadworksCallControl
        use_diversion_inhibitor: useDiversionInhibitor
        answer_confirmation_required: answerConfirmationRequired
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("outbound_alternate_number", "outboundAlternateNumber", str),
        E("is_active", "isActive", bool, is_required=True),
        E("broadworks_call_control", "broadworksCallControl", bool, is_required=True),
        E("use_diversion_inhibitor", "useDiversionInhibitor", bool, is_required=True),
        E(
            "answer_confirmation_required", "answerConfirmationRequired", bool,
            is_required=True,
        ),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    outbound_alternate_number: str = Field(type=str, required=False, mutable=False)
    is_active: bool = Field(type=bool, required=True, mutable=False)
    broadworks_call_control: bool = Field(type=bool, required=True, mutable=False)
    use_diversion_inhibitor: bool = Field(type=bool, required=True, mutable=False)
    answer_confirmation_required: bool = Field(type=bool, required=True, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserBroadWorksAnywhereGetResponse(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetRequest()``.

    The phoneNumberTable contains columns: "Phone Number", "Description" Replaced by:
    ``UserBroadWorksAnywhereGetResponse16sp2()``

    Attributes:
        alert_all_locations_for_click_to_dial_calls: alertAllLocationsForClickToDialCalls
        phone_number_table: phoneNumberTable
    """

    _ELEMENTS = (
        E(
            "alert_all_locations_for_click_to_dial_calls",
            "alertAllLocationsForClickToDialCalls", bool, is_required=True,
        ),
        E(
            "phone_number_table", "phoneNumberTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    alert_all_locations_for_click_to_dial_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    phone_number_table: "list" = Field(type=list, required=True, mutable=False)


class UserBroadWorksAnywhereGetResponse16sp2(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetRequest16sp2()``.

    The phoneNumberTable contains columns: "Phone Number", "Description"

    Attributes:
        alert_all_locations_for_click_to_dial_calls: alertAllLocationsForClickToDialCalls
        alert_all_locations_for_group_paging_calls: alertAllLocationsForGroupPagingCalls
        phone_number_table: phoneNumberTable
    """

    _ELEMENTS = (
        E(
            "alert_all_locations_for_click_to_dial_calls",
            "alertAllLocationsForClickToDialCalls", bool, is_required=True,
        ),
        E(
            "alert_all_locations_for_group_paging_calls",
            "alertAllLocationsForGroupPagingCalls", bool, is_required=True,
        ),
        E(
            "phone_number_table", "phoneNumberTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    alert_all_locations_for_click_to_dial_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    alert_all_locations_for_group_paging_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    phone_number_table: "list" = Field(type=list, required=True, mutable=False)


class UserBroadWorksCommunicatorGetResponse(OCIResponse):
    """
    Response to ``UserBroadWorksCommunicatorGetRequest()``.


    Attributes:
        configuration_server_url: configurationServerURL
    """

    _ELEMENTS = (
        E("configuration_server_url", "configurationServerURL", str),
    )

    configuration_server_url: str = Field(type=str, required=False, mutable=False)


class UserBroadWorksMobilityGetResponse(OCIResponse):
    """
    Response to a ``UserBroadWorksMobilityGetRequest()``.


    Attributes:
        is_active: isActive
        phones_to_ring: phonesToRing
        mobile_phone_number: mobilePhoneNumber
        alert_click_to_dial_calls: alertClickToDialCalls
        alert_group_paging_calls: alertGroupPagingCalls
        enable_diversion_inhibitor: enableDiversionInhibitor
        require_answer_confirmation: requireAnswerConfirmation
        broadworks_call_control: broadworksCallControl
        use_setting_level: useSettingLevel
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("phones_to_ring", "phonesToRing", str, is_required=True),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("alert_click_to_dial_calls", "alertClickToDialCalls", bool, is_required=True),
        E("alert_group_paging_calls", "alertGroupPagingCalls", bool, is_required=True),
        E("enable_diversion_inhibitor", "enableDiversionInhibitor", bool, is_required=True),
        E("require_answer_confirmation", "requireAnswerConfirmation", bool, is_required=True),
        E("broadworks_call_control", "broadworksCallControl", bool, is_required=True),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    phones_to_ring: str = Field(type=str, required=True, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    alert_click_to_dial_calls: bool = Field(type=bool, required=True, mutable=False)
    alert_group_paging_calls: bool = Field(type=bool, required=True, mutable=False)
    enable_diversion_inhibitor: bool = Field(type=bool, required=True, mutable=False)
    require_answer_confirmation: bool = Field(type=bool, required=True, mutable=False)
    broadworks_call_control: bool = Field(type=bool, required=True, mutable=False)
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)


class UserBroadWorksReceptionistEnterpriseGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``UserBroadWorksReceptionistEnterpriseGetAvailableUserListRequest()``.

    Returns a 12 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Group Id", "Phone Number", "Extension",
    "Mobile", "Email Address", "Department", "IMP Id".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserBroadWorksReceptionistEnterpriseGetResponse(OCIResponse):
    """
    Response to ``UserBroadWorksReceptionistEnterpriseGetRequest()``.

    Returns a 12 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Group Id", "Phone Number", "Extension",
    "Mobile", "Email Address", "Department", "IMP Id".

    Attributes:
        monitored_user_table: monitoredUserTable
    """

    _ELEMENTS = (
        E(
            "monitored_user_table", "monitoredUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    monitored_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserBroadWorksReceptionistOfficeGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``UserBroadWorksReceptionistOfficeGetAvailableUserListRequest()``.

    Returns a 12 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Group Id", "Phone Number", "Extension",
    "Mobile", "Email Address", "Department", "IMP Id".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserBroadWorksReceptionistOfficeGetResponse(OCIResponse):
    """
    Response to ``UserBroadWorksReceptionistOfficeGetRequest()``.

    Returns a 11 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Group Id", "Phone Number", "Extension",
    "Mobile", "Email Address", "Department", "IMP Id".

    Attributes:
        monitored_user_table: monitoredUserTable
    """

    _ELEMENTS = (
        E(
            "monitored_user_table", "monitoredUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    monitored_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserBroadWorksReceptionistSmallBusinessGetAvailableUserListResponse(OCIResponse):
    """
    Response to the
    ``UserBroadWorksReceptionistSmallBusinessGetAvailableUserListRequest()``.

    Returns a 11 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Group Id", "Phone Number", "Extension",
    "Mobile", "Email Address", "Department", "IMP Id".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserBroadWorksReceptionistSmallBusinessGetResponse(OCIResponse):
    """
    Response to ``UserBroadWorksReceptionistSmallBusinessGetRequest()``.

    Returns a 12 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Group Id", "Phone Number", "Extension",
    "Mobile", "Email Address", "Department", "IMP Id".

    Attributes:
        monitored_user_table: monitoredUserTable
    """

    _ELEMENTS = (
        E(
            "monitored_user_table", "monitoredUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    monitored_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserBusyLampFieldGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``BusyLampFieldGetAvailableUserListRequest()``.

    Returns a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address", "IMP Id".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserBusyLampFieldGetResponse(OCIResponse):
    """
    Replaced By ``UserBusyLampFieldGetResponse16sp2()`` Response to
    ``UserBusyLampFieldGetRequest()``.

    The table has column headings: "User Id", "Last Name", "First Name", "Hiragana Last
    Name", "Hiragana First Name".

    Attributes:
        list_uri: listURI
        monitored_user_table: monitoredUserTable
    """

    _ELEMENTS = (
        E("list_uri", "listURI", str),
        E(
            "monitored_user_table", "monitoredUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    list_uri: str = Field(type=str, required=False, mutable=False)
    monitored_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserBusyLampFieldGetResponse16sp2(OCIResponse):
    """
    Response to ``UserBusyLampFieldGetRequest16sp2()``.

    The table has column headings: "User Id", "Last Name", "First Name", "Hiragana Last
    Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address", "IMP Id".

    Attributes:
        list_uri: listURI
        enable_call_park_notification: enableCallParkNotification
        monitored_user_table: monitoredUserTable
    """

    _ELEMENTS = (
        E("list_uri", "listURI", str),
        E(
            "enable_call_park_notification", "enableCallParkNotification", bool,
            is_required=True,
        ),
        E(
            "monitored_user_table", "monitoredUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    list_uri: str = Field(type=str, required=False, mutable=False)
    enable_call_park_notification: bool = Field(type=bool, required=True, mutable=False)
    monitored_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterAgentDetailsGetResponse(OCIResponse):
    """
    Response to the ``UserCallCenterAgentDetailsGetRequest()``.

    Contains the detail information for a Call Center Agent.

    Attributes:
        is_call_center_basic_assigned: isCallCenterBasicAssigned
        is_call_center_standard_assigned: isCallCenterStandardAssigned
        is_call_center_premium_assigned: isCallCenterPremiumAssigned
    """

    _ELEMENTS = (
        E(
            "is_call_center_basic_assigned", "isCallCenterBasicAssigned", bool,
            is_required=True,
        ),
        E(
            "is_call_center_standard_assigned", "isCallCenterStandardAssigned", bool,
            is_required=True,
        ),
        E(
            "is_call_center_premium_assigned", "isCallCenterPremiumAssigned", bool,
            is_required=True,
        ),
    )

    is_call_center_basic_assigned: bool = Field(type=bool, required=True, mutable=False)
    is_call_center_standard_assigned: bool = Field(type=bool, required=True, mutable=False)
    is_call_center_premium_assigned: bool = Field(type=bool, required=True, mutable=False)


class UserCallCenterAgentSignOutResponse(OCIResponse):
    """
    Response to the ``UserCallCenterAgentSignOutRequest()``.

    It contains a list of call centers for which the agent is the last signed-in agent.
    Contains a table with column headings: "Service User Id" and "Call Center Name".

    Attributes:
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterCallDispositionCodeGetAvailableListResponse(OCIResponse):
    """
    Response to the ``UserCallCenterCallDispositionCodeGetAvailableListRequest()``.

    This list may include Group/Enterprise level codes in addition to the Call Center
    level codes, depending on the call center disposition codes settings.  Only active
    codes are included in the list.  Contains a table with column headings: "Code",
    "Description" and "Level". Level column can be any of the values in the data type
    CallDispositionCodeLevel.

    Attributes:
        disposition_codes_table: dispositionCodesTable
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table", "dispositionCodesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    disposition_codes_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterEnhancedReportingReportTemplateParamInfoGetResponse(OCIResponse):
    """
    Response to ``UserCallCenterEnhancedReportingReportTemplateParamInfoGetRequest()``.


    Attributes:
        is_realtime_report: isRealtimeReport
        require_agent_param: requireAgentParam
        require_call_center_param: requireCallCenterParam
        require_call_center_dnis_param: requireCallCenterDnisParam
        require_sampling_period_param: requireSamplingPeriodParam
        call_completion_threshold_param: callCompletionThresholdParam
        short_duration_threshold_param: shortDurationThresholdParam
        service_level_threshold_param: serviceLevelThresholdParam
        service_level_inclusions_param: serviceLevelInclusionsParam
        service_level_objective_threshold_param: serviceLevelObjectiveThresholdParam
        abandoned_call_threshold_param: abandonedCallThresholdParam
        service_level_threshold_param_number: serviceLevelThresholdParamNumber
        abandoned_call_threshold_param_number: abandonedCallThresholdParamNumber
    """

    _ELEMENTS = (
        E("is_realtime_report", "isRealtimeReport", bool, is_required=True),
        E("require_agent_param", "requireAgentParam", bool, is_required=True),
        E("require_call_center_param", "requireCallCenterParam", bool, is_required=True),
        E(
            "require_call_center_dnis_param", "requireCallCenterDnisParam", bool,
            is_required=True,
        ),
        E(
            "require_sampling_period_param", "requireSamplingPeriodParam", bool,
            is_required=True,
        ),
        E("call_completion_threshold_param", "callCompletionThresholdParam", str),
        E("short_duration_threshold_param", "shortDurationThresholdParam", str),
        E("service_level_threshold_param", "serviceLevelThresholdParam", str),
        E("service_level_inclusions_param", "serviceLevelInclusionsParam", str),
        E(
            "service_level_objective_threshold_param",
            "serviceLevelObjectiveThresholdParam", str,
        ),
        E("abandoned_call_threshold_param", "abandonedCallThresholdParam", str),
        E("service_level_threshold_param_number", "serviceLevelThresholdParamNumber", int),
        E("abandoned_call_threshold_param_number", "abandonedCallThresholdParamNumber", int),
    )

    is_realtime_report: bool = Field(type=bool, required=True, mutable=False)
    require_agent_param: bool = Field(type=bool, required=True, mutable=False)
    require_call_center_param: bool = Field(type=bool, required=True, mutable=False)
    require_call_center_dnis_param: bool = Field(type=bool, required=True, mutable=False)
    require_sampling_period_param: bool = Field(type=bool, required=True, mutable=False)
    call_completion_threshold_param: str = Field(type=str, required=False, mutable=False)
    short_duration_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_inclusions_param: str = Field(type=str, required=False, mutable=False)
    service_level_objective_threshold_param: str = Field(
        type=str, required=False, mutable=False,
    )
    abandoned_call_threshold_param: str = Field(type=str, required=False, mutable=False)
    service_level_threshold_param_number: int = Field(type=int, required=False, mutable=False)
    abandoned_call_threshold_param_number: int = Field(
        type=int, required=False, mutable=False,
    )


class UserCallCenterGetAgentSupervisorListResponse(OCIResponse):
    """
    Response to the ``UserCallCenterGetAgentSupervisorListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address", "IMP Id", "Location Code".

    Attributes:
        supervisor_table: supervisorTable
    """

    _ELEMENTS = (
        E(
            "supervisor_table", "supervisorTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    supervisor_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterGetAvailableCallCenterListResponse(OCIResponse):
    """
    Response to the ``UserCallCenterGetAvailableCallCenterListRequest()``.

    Contains a table with column heading: "Service User Id".

    Attributes:
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterGetListResponse(OCIResponse):
    """
    Response to the ``UserCallCentersLoginGetListRequest()``.

    Indicates whether the agent is current available (logged in) to each call center in
    the list.  Contains a table with column headings: "Service User Id", "Phone Number",
    "Extension", "Available", "Logoff Allowed". ***** NOTE: Prior to release 14sp1, the
    AppServer had a bug that caused it to emit column heading "Service User ID" with *****
    the ID capitalized.  Beginning in release 14sp1, the appserver is compliant with the
    schema and emits a ***** the column heading "Service User Id".

    Replaced By: ``UserCallCenterGetResponse()``

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterGetResponse(OCIResponse):
    """
    Response to the ``UserCallCenterGetRequest()``.

    Contains the user's ACD state Indicates whether the agent is current available (logged
    in) to each call center in the list.  Contains a table with column headings: "Service
    User Id", "Phone Number", "Extension", "Available", "Logoff Allowed".

    Attributes:
        agent_acd_state: agentACDState
        user_table: userTable
    """

    _ELEMENTS = (
        E("agent_acd_state", "agentACDState", str),
        E("user_table", "userTable", list, is_complex=True, is_table=True),
    )

    agent_acd_state: str = Field(type=str, required=False, mutable=False)
    user_table: "list" = Field(type=list, required=False, mutable=False)


class UserCallCenterGetResponse16(OCIResponse):
    """
    Response to the ``UserCallCenterGetRequest16()``.

    Contains the user's call center settings.  Indicates whether the agent is current
    available (logged in) to each call center in the list.  Contains a table with column
    headings: "Service User Id", "Phone Number", "Extension", "Available", "Logoff
    Allowed", "Type", and "Priority".

    Attributes:
        agent_acd_state: agentACDState
        use_default_guard_timer: useDefaultGuardTimer
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        use_system_default_unavailable_settings: useSystemDefaultUnavailableSettings
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_unavailable_on_personal_calls: forceUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E("agent_acd_state", "agentACDState", str),
        E("use_default_guard_timer", "useDefaultGuardTimer", bool, is_required=True),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings", bool,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool,
        ),
        E("force_unavailable_on_personal_calls", "forceUnavailableOnPersonalCalls", bool),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int,
        ),
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    agent_acd_state: str = Field(type=str, required=False, mutable=False)
    use_default_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    use_system_default_unavailable_settings: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_unavailable_on_personal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=False, mutable=False,
    )
    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterGetSupervisedAgentListResponse(OCIResponse):
    """
    Response to the ``UserCallCenterGetSupervisedAgentListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address", "IMP Id", "Location Code".

    Attributes:
        agent_user_table: agentUserTable
    """

    _ELEMENTS = (
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    agent_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterGetSupervisorCallCenterListResponse(OCIResponse):
    """
    Response to the ``UserCallCenterGetSupervisorCallCenterListRequest()``.

    Contains a table with column headings: "Service User Id", "Phone Number", "Extension",
    "Type" and "Priority".

    Attributes:
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterMonitoringGetResponse(OCIResponse):
    """
    Response to ``UserCallCenterMonitoringGetRequest()``.


    Attributes:
        play_tone_to_agent_for_silent_monitoring: playToneToAgentForSilentMonitoring
    """

    _ELEMENTS = (
        E(
            "play_tone_to_agent_for_silent_monitoring",
            "playToneToAgentForSilentMonitoring", bool, is_required=True,
        ),
    )

    play_tone_to_agent_for_silent_monitoring: bool = Field(
        type=bool, required=True, mutable=False,
    )


class UserCallForwardingAlwaysGetResponse(OCIResponse):
    """
    Response to ``UserCallForwardingAlwaysGetRequest()``.


    Attributes:
        is_active: isActive
        forward_to_phone_number: forwardToPhoneNumber
        is_ring_splash_active: isRingSplashActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E("is_ring_splash_active", "isRingSplashActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    is_ring_splash_active: bool = Field(type=bool, required=True, mutable=False)


class UserCallForwardingBusyGetResponse(OCIResponse):
    """
    Response to ``UserCallForwardingBusyGetRequest()``.


    Attributes:
        is_active: isActive
        forward_to_phone_number: forwardToPhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)


class UserCallForwardingNoAnswerGetResponse13mp16(OCIResponse):
    """
    Response to ``UserCallForwardingNoAnswerGetRequest13mp16()``.


    Attributes:
        is_active: isActive
        forward_to_phone_number: forwardToPhoneNumber
        number_of_rings: numberOfRings
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E("number_of_rings", "numberOfRings", int, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    number_of_rings: int = Field(type=int, required=True, mutable=False)


class UserCallForwardingNotReachableGetResponse(OCIResponse):
    """
    Response to ``UserCallForwardingNotReachableGetRequest()``.


    Attributes:
        is_active: isActive
        forward_to_phone_number: forwardToPhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)


class UserCallForwardingSelectiveGetResponse(OCIResponse):
    """
    Response to the ``UserCallForwardingSelectiveGetRequest()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Calls From" and "Forward To".

    Attributes:
        default_forward_to_phone_number: defaultForwardToPhoneNumber
        play_ring_reminder: playRingReminder
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("default_forward_to_phone_number", "defaultForwardToPhoneNumber", str),
        E("play_ring_reminder", "playRingReminder", bool, is_required=True),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    default_forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    play_ring_reminder: bool = Field(type=bool, required=True, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallForwardingSelectiveGetResponse16(OCIResponse):
    """
    Response to the ``UserCallForwardingSelectiveGetRequest16()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Calls From", "Forward To", "Blacklisted", "Holiday Schedule", "Calls To
    Type", "Calls To Number" and "Calls To Extension". The possible values for the "Calls
    To Type" column are the following or a combination of them separated by comma: -
    Primary - Alternate X (where x is a number between 1 and 10) - Mobility The possible
    values for the "Calls To Number" column are the following or a combination of them
    separated by comma: - The value of the phone number for the corresponding Calls To
    Type, when the number is available.  i.e.  Alternate 1 may have extension, but no
    number.  - When no number is available a blank space is provided instead.  The
    possible values for the "Calls To Extension" column are the following or a combination
    of them separated by comma: - The value of the extension for the corresponding Calls
    To Type, when the extension is available.  i.e.  Primary may have number, but no
    extension.  - For Mobility Calls To Type, this is always blank.  - When no extension
    is available a blank space is provided instead.

    Attributes:
        is_active: isActive
        default_forward_to_phone_number: defaultForwardToPhoneNumber
        play_ring_reminder: playRingReminder
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("default_forward_to_phone_number", "defaultForwardToPhoneNumber", str),
        E("play_ring_reminder", "playRingReminder", bool, is_required=True),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    default_forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    play_ring_reminder: bool = Field(type=bool, required=True, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallMeNowGetResponse(OCIResponse):
    """
    Response to the ``UserCallMeNowGetRequest()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Call To", "Reject Call" and "Holiday Schedule".

    Attributes:
        is_active: isActive
        answer_confirmation: answerConfirmation
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("answer_confirmation", "answerConfirmation", str, is_required=True),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    answer_confirmation: str = Field(type=str, required=True, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallNotifyGetResponse(OCIResponse):
    """
    Response to the ``UserCallNotifyGetRequest()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Calls From", "Blacklisted" ,"Holiday Schedule", "Calls To Type", "Calls To
    Number" and "Calls To Extension". The possible values for the "Calls To Type" column
    are the following or a combination of them separated by comma: - Primary - Alternate X
    (where x is a number between 1 and 10) - Mobility The possible values for the "Calls
    To Number" column are the following or a combination of them separated by comma: - The
    value of the phone number for the corresponding Calls To Type, when the number is
    available.  i.e.  Alternate 1 may have extension, but no number.  - When no number is
    available a blank space is provided instead.  The possible values for the "Calls To
    Extension" column are the following or a combination of them separated by comma: - The
    value of the extension for the corresponding Calls To Type, when the extension is
    available.  i.e.  Primary may have number, but no extension.  - For Mobility Calls To
    Type, this is always blank.  - When no extension is available a blank space is
    provided instead.

    Attributes:
        call_notify_email_address: callNotifyEmailAddress
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("call_notify_email_address", "callNotifyEmailAddress", str),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    call_notify_email_address: str = Field(type=str, required=False, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallParkGetResponse(OCIResponse):
    """
    Response to the ``UserCallParkGetRequest()``.

    Identifies which Call Park group the user belongs to and the list of users in the
    group.  Contains a table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name". The users are in the table in the order
    they will try to be parked on.

    Attributes:
        name: name
        user_table: userTable
    """

    _ELEMENTS = (
        E("name", "name", str),
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    name: str = Field(type=str, required=False, mutable=False)
    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallPickupGetResponse(OCIResponse):
    """
    Response to the ``UserCallPickupGetRequest()``.

    Identifies which Call Pickup group the user belongs to and the list of users in the
    group.  Contains a table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Department", "Phone Number",
    "Extension", "Email Address".

    Attributes:
        name: name
        user_table: userTable
    """

    _ELEMENTS = (
        E("name", "name", str),
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    name: str = Field(type=str, required=False, mutable=False)
    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallPoliciesGetResponse(OCIResponse):
    """
    Response to ``UserCallPoliciesGetRequest()``.


    Attributes:
        redirected_calls_colp_privacy: redirectedCallsCOLPPrivacy
    """

    _ELEMENTS = (
        E(
            "redirected_calls_colp_privacy", "redirectedCallsCOLPPrivacy", str,
            is_required=True,
        ),
    )

    redirected_calls_colp_privacy: str = Field(type=str, required=True, mutable=False)


class UserCallPoliciesGetResponse17(OCIResponse):
    """
    Response to ``UserCallPoliciesGetRequest17()``.

    Replaced by: ``UserCallPoliciesGetResponse19sp1()``

    Attributes:
        redirected_calls_colp_privacy: redirectedCallsCOLPPrivacy
        call_being_forwarded_response_call_type: callBeingForwardedResponseCallType
    """

    _ELEMENTS = (
        E(
            "redirected_calls_colp_privacy", "redirectedCallsCOLPPrivacy", str,
            is_required=True,
        ),
        E(
            "call_being_forwarded_response_call_type",
            "callBeingForwardedResponseCallType", str, is_required=True,
        ),
    )

    redirected_calls_colp_privacy: str = Field(type=str, required=True, mutable=False)
    call_being_forwarded_response_call_type: str = Field(
        type=str, required=True, mutable=False,
    )


class UserCallPoliciesGetResponse19sp1(OCIResponse):
    """
    Response to ``UserCallPoliciesGetRequest19sp1()``.


    Attributes:
        redirected_calls_colp_privacy: redirectedCallsCOLPPrivacy
        call_being_forwarded_response_call_type: callBeingForwardedResponseCallType
        calling_line_identity_for_redirected_calls: callingLineIdentityForRedirectedCalls
    """

    _ELEMENTS = (
        E(
            "redirected_calls_colp_privacy", "redirectedCallsCOLPPrivacy", str,
            is_required=True,
        ),
        E(
            "call_being_forwarded_response_call_type",
            "callBeingForwardedResponseCallType", str, is_required=True,
        ),
        E(
            "calling_line_identity_for_redirected_calls",
            "callingLineIdentityForRedirectedCalls", str, is_required=True,
        ),
    )

    redirected_calls_colp_privacy: str = Field(type=str, required=True, mutable=False)
    call_being_forwarded_response_call_type: str = Field(
        type=str, required=True, mutable=False,
    )
    calling_line_identity_for_redirected_calls: str = Field(
        type=str, required=True, mutable=False,
    )


class UserCallProcessingGetPolicyResponse14(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest14()``.


    Attributes:
        use_user_setting: useUserSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
    """

    _ELEMENTS = (
        E("use_user_setting", "useUserSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
    )

    use_user_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)


class UserCallProcessingGetPolicyResponse14sp1(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest14sp1()``.

    Replaced By: ``UserCallProcessingGetPolicyResponse14sp7()``

    Attributes:
        use_user_setting: useUserSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
    """

    _ELEMENTS = (
        E("use_user_setting", "useUserSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
    )

    use_user_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )


class UserCallProcessingGetPolicyResponse14sp7(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest14sp7()``.

    The useUserCLIDSetting attribute controls the CLID settings (clidPolicy,
    emergencyClidPolicy, allowAlternateNumbersForRedirectingIdentity, useGroupName) The
    useUserMediaSetting attribute controls the Media settings (medisPolicySelection,
    supportedMediaSetName) The useUserCallLimitsSetting attribute controls the Call Limits
    setting (useMaxSimultaneousCalls, maxSimultaneousCalls, useMaxSimultaneousVideoCalls,
    maxSimultaneousVideoCalls, useMaxCallTimeForAnsweredCalls,
    maxCallTimeForAnsweredCallsMinutes, useMaxCallTimeForUnansweredCalls,
    maxCallTimeForUnansweredCallsMinutes, useMaxConcurrentRedirectedCalls,
    useMaxFindMeFollowMeDepth, maxRedirectionDepth,
    useMaxConcurrentFindMeFollowMeInvocations, maxConcurrentFindMeFollowMeInvocations)

    Attributes:
        use_user_clid_setting: useUserCLIDSetting
        use_user_media_setting: useUserMediaSetting
        use_user_call_limits_setting: useUserCallLimitsSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
    """

    _ELEMENTS = (
        E("use_user_clid_setting", "useUserCLIDSetting", bool, is_required=True),
        E("use_user_media_setting", "useUserMediaSetting", bool, is_required=True),
        E("use_user_call_limits_setting", "useUserCallLimitsSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
    )

    use_user_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)


class UserCallProcessingGetPolicyResponse16(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest16()``.

    The useUserCLIDSetting attribute controls the CLID settings (clidPolicy,
    emergencyClidPolicy, allowAlternateNumbersForRedirectingIdentity, useGroupName) The
    useUserMediaSetting attribute controls the Media settings (medisPolicySelection,
    supportedMediaSetName) The useUserCallLimitsSetting attribute controls the Call Limits
    setting (useMaxSimultaneousCalls, maxSimultaneousCalls, useMaxSimultaneousVideoCalls,
    maxSimultaneousVideoCalls, useMaxCallTimeForAnsweredCalls,
    maxCallTimeForAnsweredCallsMinutes, useMaxCallTimeForUnansweredCalls,
    maxCallTimeForUnansweredCallsMinutes, useMaxConcurrentRedirectedCalls,
    useMaxFindMeFollowMeDepth, maxRedirectionDepth,
    useMaxConcurrentFindMeFollowMeInvocations, maxConcurrentFindMeFollowMeInvocations)

    Attributes:
        use_user_clid_setting: useUserCLIDSetting
        use_user_media_setting: useUserMediaSetting
        use_user_call_limits_setting: useUserCallLimitsSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
    """

    _ELEMENTS = (
        E("use_user_clid_setting", "useUserCLIDSetting", bool, is_required=True),
        E("use_user_media_setting", "useUserMediaSetting", bool, is_required=True),
        E("use_user_call_limits_setting", "useUserCallLimitsSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
    )

    use_user_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)


class UserCallProcessingGetPolicyResponse16sp2(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest16sp2()``.

    The useUserCLIDSetting attribute controls the CLID settings (clidPolicy,
    emergencyClidPolicy, allowAlternateNumbersForRedirectingIdentity, useGroupName) The
    useUserMediaSetting attribute controls the Media settings (medisPolicySelection,
    supportedMediaSetName) The useUserCallLimitsSetting attribute controls the Call Limits
    setting (useMaxSimultaneousCalls, maxSimultaneousCalls, useMaxSimultaneousVideoCalls,
    maxSimultaneousVideoCalls, useMaxCallTimeForAnsweredCalls,
    maxCallTimeForAnsweredCallsMinutes, useMaxCallTimeForUnansweredCalls,
    maxCallTimeForUnansweredCallsMinutes, useMaxConcurrentRedirectedCalls,
    useMaxFindMeFollowMeDepth, maxRedirectionDepth,
    useMaxConcurrentFindMeFollowMeInvocations, maxConcurrentFindMeFollowMeInvocations) The
    useUserDCLIDSetting controls the Dialable Caller ID settings (enableDialableCallerID)
    Replaced by: ``UserCallProcessingGetPolicyResponse17sp4()``

    Attributes:
        use_user_clid_setting: useUserCLIDSetting
        use_user_media_setting: useUserMediaSetting
        use_user_call_limits_setting: useUserCallLimitsSetting
        use_user_dclid_setting: useUserDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_user_clid_setting", "useUserCLIDSetting", bool, is_required=True),
        E("use_user_media_setting", "useUserMediaSetting", bool, is_required=True),
        E("use_user_call_limits_setting", "useUserCallLimitsSetting", bool, is_required=True),
        E("use_user_dclid_setting", "useUserDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_user_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class UserCallProcessingGetPolicyResponse17(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest17()``.

    The useUserCLIDSetting attribute controls the CLID settings (clidPolicy,
    emergencyClidPolicy, allowAlternateNumbersForRedirectingIdentity, useGroupName) The
    useUserMediaSetting attribute controls the Media settings (medisPolicySelection,
    supportedMediaSetName) The useUserCallLimitsSetting attribute controls the Call Limits
    setting (useMaxSimultaneousCalls, maxSimultaneousCalls, useMaxSimultaneousVideoCalls,
    maxSimultaneousVideoCalls, useMaxCallTimeForAnsweredCalls,
    maxCallTimeForAnsweredCallsMinutes, useMaxCallTimeForUnansweredCalls,
    maxCallTimeForUnansweredCallsMinutes, useMaxConcurrentRedirectedCalls,
    useMaxFindMeFollowMeDepth, maxRedirectionDepth,
    useMaxConcurrentFindMeFollowMeInvocations, maxConcurrentFindMeFollowMeInvocations)

    Attributes:
        use_user_clid_setting: useUserCLIDSetting
        use_user_media_setting: useUserMediaSetting
        use_user_call_limits_setting: useUserCallLimitsSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
    """

    _ELEMENTS = (
        E("use_user_clid_setting", "useUserCLIDSetting", bool, is_required=True),
        E("use_user_media_setting", "useUserMediaSetting", bool, is_required=True),
        E("use_user_call_limits_setting", "useUserCallLimitsSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
    )

    use_user_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )


class UserCallProcessingGetPolicyResponse17sp3(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest17sp3()``.

    The useUserCLIDSetting attribute controls the CLID settings (clidPolicy,
    emergencyClidPolicy, allowAlternateNumbersForRedirectingIdentity, useGroupName) The
    useUserMediaSetting attribute controls the Media settings (medisPolicySelection,
    supportedMediaSetName) The useUserCallLimitsSetting attribute controls the Call Limits
    setting (useMaxSimultaneousCalls, maxSimultaneousCalls, useMaxSimultaneousVideoCalls,
    maxSimultaneousVideoCalls, useMaxCallTimeForAnsweredCalls,
    maxCallTimeForAnsweredCallsMinutes, useMaxCallTimeForUnansweredCalls,
    maxCallTimeForUnansweredCallsMinutes, useMaxConcurrentRedirectedCalls,
    useMaxFindMeFollowMeDepth, maxRedirectionDepth,
    useMaxConcurrentFindMeFollowMeInvocations, maxConcurrentFindMeFollowMeInvocations) The
    useUserDCLIDSetting controls the Dialable Caller ID settings (enableDialableCallerID)
    The following elements are only used in AS data mode: useUserDCLIDSetting
    enableDialableCallerID Replaced by: UserCallProcessingGetPolicyResponse17Sp4

    Attributes:
        use_user_clid_setting: useUserCLIDSetting
        use_user_media_setting: useUserMediaSetting
        use_user_call_limits_setting: useUserCallLimitsSetting
        use_user_dclid_setting: useUserDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
    """

    _ELEMENTS = (
        E("use_user_clid_setting", "useUserCLIDSetting", bool, is_required=True),
        E("use_user_media_setting", "useUserMediaSetting", bool, is_required=True),
        E("use_user_call_limits_setting", "useUserCallLimitsSetting", bool, is_required=True),
        E("use_user_dclid_setting", "useUserDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
    )

    use_user_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)


class UserCallProcessingGetPolicyResponse17sp4(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest17sp4()``.

    The useUserCLIDSetting attribute controls the CLID settings (clidPolicy,
    emergencyClidPolicy, allowAlternateNumbersForRedirectingIdentity, useGroupName,
    allowConfigurableCLIDForRedirectingIdentity) The useUserMediaSetting attribute
    controls the Media settings (medisPolicySelection, supportedMediaSetName) The
    useUserCallLimitsSetting attribute controls the Call Limits setting
    (useMaxSimultaneousCalls, maxSimultaneousCalls, useMaxSimultaneousVideoCalls,
    maxSimultaneousVideoCalls, useMaxCallTimeForAnsweredCalls,
    maxCallTimeForAnsweredCallsMinutes, useMaxCallTimeForUnansweredCalls,
    maxCallTimeForUnansweredCallsMinutes, useMaxConcurrentRedirectedCalls,
    useMaxFindMeFollowMeDepth, maxRedirectionDepth,
    useMaxConcurrentFindMeFollowMeInvocations, maxConcurrentFindMeFollowMeInvocations) The
    useUserDCLIDSetting controls the Dialable Caller ID settings (enableDialableCallerID)
    The following elements are only used in AS data mode: useUserDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity Replaced by:
    ``UserCallProcessingGetPolicyResponse18()``

    Attributes:
        use_user_clid_setting: useUserCLIDSetting
        use_user_media_setting: useUserMediaSetting
        use_user_call_limits_setting: useUserCallLimitsSetting
        use_user_dclid_setting: useUserDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
    """

    _ELEMENTS = (
        E("use_user_clid_setting", "useUserCLIDSetting", bool, is_required=True),
        E("use_user_media_setting", "useUserMediaSetting", bool, is_required=True),
        E("use_user_call_limits_setting", "useUserCallLimitsSetting", bool, is_required=True),
        E("use_user_dclid_setting", "useUserDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
    )

    use_user_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )


class UserCallProcessingGetPolicyResponse18(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest18()``.

    The useUserCLIDSetting attribute controls the CLID settings (clidPolicy,
    emergencyClidPolicy, allowAlternateNumbersForRedirectingIdentity, useGroupName,
    allowConfigurableCLIDForRedirectingIdentity, allowDepartmentCLIDNameOverride) The
    useUserMediaSetting attribute controls the Media settings (medisPolicySelection,
    supportedMediaSetName) The useUserCallLimitsSetting attribute controls the Call Limits
    setting (useMaxSimultaneousCalls, maxSimultaneousCalls, useMaxSimultaneousVideoCalls,
    maxSimultaneousVideoCalls, useMaxCallTimeForAnsweredCalls,
    maxCallTimeForAnsweredCallsMinutes, useMaxCallTimeForUnansweredCalls,
    maxCallTimeForUnansweredCallsMinutes, useMaxConcurrentRedirectedCalls,
    useMaxFindMeFollowMeDepth, maxRedirectionDepth,
    useMaxConcurrentFindMeFollowMeInvocations, maxConcurrentFindMeFollowMeInvocations) The
    following elements are only used in AS data mode: useUserDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity
    allowDepartmentCLIDNameOverride Replaced by:
    ``UserCallProcessingGetPolicyResponse19sp1()``

    Attributes:
        use_user_clid_setting: useUserCLIDSetting
        use_user_media_setting: useUserMediaSetting
        use_user_call_limits_setting: useUserCallLimitsSetting
        use_user_dclid_setting: useUserDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
    """

    _ELEMENTS = (
        E("use_user_clid_setting", "useUserCLIDSetting", bool, is_required=True),
        E("use_user_media_setting", "useUserMediaSetting", bool, is_required=True),
        E("use_user_call_limits_setting", "useUserCallLimitsSetting", bool, is_required=True),
        E("use_user_dclid_setting", "useUserDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
    )

    use_user_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)


class UserCallProcessingGetPolicyResponse19sp1(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest19sp1()``.

    The useUserCLIDSetting attribute controls the CLID settings (clidPolicy,
    emergencyClidPolicy, allowAlternateNumbersForRedirectingIdentity, useGroupName,
    allowConfigurableCLIDForRedirectingIdentity, allowDepartmentCLIDNameOverride) The
    useUserMediaSetting attribute controls the Media settings (medisPolicySelection,
    supportedMediaSetName) The useUserCallLimitsSetting attribute controls the Call Limits
    setting (useMaxSimultaneousCalls, maxSimultaneousCalls, useMaxSimultaneousVideoCalls,
    maxSimultaneousVideoCalls, useMaxCallTimeForAnsweredCalls,
    maxCallTimeForAnsweredCallsMinutes, useMaxCallTimeForUnansweredCalls,
    maxCallTimeForUnansweredCallsMinutes, useMaxConcurrentRedirectedCalls,
    useMaxFindMeFollowMeDepth, maxRedirectionDepth,
    useMaxConcurrentFindMeFollowMeInvocations, maxConcurrentFindMeFollowMeInvocations) The
    following elements are only used in AS data mode: useUserDCLIDSetting
    enableDialableCallerID allowConfigurableCLIDForRedirectingIdentity
    allowDepartmentCLIDNameOverride

    Attributes:
        use_user_clid_setting: useUserCLIDSetting
        use_user_media_setting: useUserMediaSetting
        use_user_call_limits_setting: useUserCallLimitsSetting
        use_user_dclid_setting: useUserDCLIDSetting
        use_max_simultaneous_calls: useMaxSimultaneousCalls
        max_simultaneous_calls: maxSimultaneousCalls
        use_max_simultaneous_video_calls: useMaxSimultaneousVideoCalls
        max_simultaneous_video_calls: maxSimultaneousVideoCalls
        use_max_call_time_for_answered_calls: useMaxCallTimeForAnsweredCalls
        max_call_time_for_answered_calls_minutes: maxCallTimeForAnsweredCallsMinutes
        use_max_call_time_for_unanswered_calls: useMaxCallTimeForUnansweredCalls
        max_call_time_for_unanswered_calls_minutes: maxCallTimeForUnansweredCallsMinutes
        media_policy_selection: mediaPolicySelection
        supported_media_set_name: supportedMediaSetName
        use_max_concurrent_redirected_calls: useMaxConcurrentRedirectedCalls
        max_concurrent_redirected_calls: maxConcurrentRedirectedCalls
        use_max_find_me_follow_me_depth: useMaxFindMeFollowMeDepth
        max_find_me_follow_me_depth: maxFindMeFollowMeDepth
        max_redirection_depth: maxRedirectionDepth
        use_max_concurrent_find_me_follow_me_invocations:
            useMaxConcurrentFindMeFollowMeInvocations
        max_concurrent_find_me_follow_me_invocations:
            maxConcurrentFindMeFollowMeInvocations
        clid_policy: clidPolicy
        emergency_clid_policy: emergencyClidPolicy
        allow_alternate_numbers_for_redirecting_identity:
            allowAlternateNumbersForRedirectingIdentity
        use_group_name: useGroupName
        block_calling_name_for_external_calls: blockCallingNameForExternalCalls
        enable_dialable_caller_id: enableDialableCallerID
        allow_configurable_clid_for_redirecting_identity:
            allowConfigurableCLIDForRedirectingIdentity
        allow_department_clid_name_override: allowDepartmentCLIDNameOverride
    """

    _ELEMENTS = (
        E("use_user_clid_setting", "useUserCLIDSetting", bool, is_required=True),
        E("use_user_media_setting", "useUserMediaSetting", bool, is_required=True),
        E("use_user_call_limits_setting", "useUserCallLimitsSetting", bool, is_required=True),
        E("use_user_dclid_setting", "useUserDCLIDSetting", bool, is_required=True),
        E("use_max_simultaneous_calls", "useMaxSimultaneousCalls", bool, is_required=True),
        E("max_simultaneous_calls", "maxSimultaneousCalls", int, is_required=True),
        E(
            "use_max_simultaneous_video_calls", "useMaxSimultaneousVideoCalls", bool,
            is_required=True,
        ),
        E("max_simultaneous_video_calls", "maxSimultaneousVideoCalls", int, is_required=True),
        E(
            "use_max_call_time_for_answered_calls", "useMaxCallTimeForAnsweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes", int, is_required=True,
        ),
        E(
            "use_max_call_time_for_unanswered_calls", "useMaxCallTimeForUnansweredCalls",
            bool, is_required=True,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes", int, is_required=True,
        ),
        E("media_policy_selection", "mediaPolicySelection", str, is_required=True),
        E("supported_media_set_name", "supportedMediaSetName", str),
        E(
            "use_max_concurrent_redirected_calls", "useMaxConcurrentRedirectedCalls",
            bool, is_required=True,
        ),
        E(
            "max_concurrent_redirected_calls", "maxConcurrentRedirectedCalls", int,
            is_required=True,
        ),
        E(
            "use_max_find_me_follow_me_depth", "useMaxFindMeFollowMeDepth", bool,
            is_required=True,
        ),
        E("max_find_me_follow_me_depth", "maxFindMeFollowMeDepth", int, is_required=True),
        E("max_redirection_depth", "maxRedirectionDepth", int, is_required=True),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations", bool, is_required=True,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations", int, is_required=True,
        ),
        E("clid_policy", "clidPolicy", str, is_required=True),
        E("emergency_clid_policy", "emergencyClidPolicy", str, is_required=True),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity", bool, is_required=True,
        ),
        E("use_group_name", "useGroupName", bool, is_required=True),
        E(
            "block_calling_name_for_external_calls", "blockCallingNameForExternalCalls",
            bool, is_required=True,
        ),
        E("enable_dialable_caller_id", "enableDialableCallerID", bool, is_required=True),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity", bool, is_required=True,
        ),
        E(
            "allow_department_clid_name_override", "allowDepartmentCLIDNameOverride",
            bool, is_required=True,
        ),
    )

    use_user_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_media_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_call_limits_setting: bool = Field(type=bool, required=True, mutable=False)
    use_user_dclid_setting: bool = Field(type=bool, required=True, mutable=False)
    use_max_simultaneous_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_calls: int = Field(type=int, required=True, mutable=False)
    use_max_simultaneous_video_calls: bool = Field(type=bool, required=True, mutable=False)
    max_simultaneous_video_calls: int = Field(type=int, required=True, mutable=False)
    use_max_call_time_for_answered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_answered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    use_max_call_time_for_unanswered_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_call_time_for_unanswered_calls_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    media_policy_selection: str = Field(type=str, required=True, mutable=False)
    supported_media_set_name: str = Field(type=str, required=False, mutable=False)
    use_max_concurrent_redirected_calls: bool = Field(type=bool, required=True, mutable=False)
    max_concurrent_redirected_calls: int = Field(type=int, required=True, mutable=False)
    use_max_find_me_follow_me_depth: bool = Field(type=bool, required=True, mutable=False)
    max_find_me_follow_me_depth: int = Field(type=int, required=True, mutable=False)
    max_redirection_depth: int = Field(type=int, required=True, mutable=False)
    use_max_concurrent_find_me_follow_me_invocations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_concurrent_find_me_follow_me_invocations: int = Field(
        type=int, required=True, mutable=False,
    )
    clid_policy: str = Field(type=str, required=True, mutable=False)
    emergency_clid_policy: str = Field(type=str, required=True, mutable=False)
    allow_alternate_numbers_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_group_name: bool = Field(type=bool, required=True, mutable=False)
    block_calling_name_for_external_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dialable_caller_id: bool = Field(type=bool, required=True, mutable=False)
    allow_configurable_clid_for_redirecting_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_department_clid_name_override: bool = Field(type=bool, required=True, mutable=False)


class UserCallRecordingGetResponse(OCIResponse):
    """
    Response to the ``UserCallRecordingGetRequest()``.

    The response contains the user's Call Recording option information.

    Attributes:
        recording_option: recordingOption
    """

    _ELEMENTS = (
        E("recording_option", "recordingOption", str, is_required=True),
    )

    recording_option: str = Field(type=str, required=True, mutable=False)


class UserCallRecordingGetResponse20(OCIResponse):
    """
    Response to the ``UserCallRecordingGetRequest20()``.

    The response contains the user's Call Recording option information.  The following
    parameters are not returned for service instance: - pauseResumeNotification -
    enableCallRecordingAnnouncement - enableRecordCallRepeatWarningTone -
    recordCallRepeatWarningToneTimerSeconds The enableVoiceMailRecording parameter is only
    returned if the Voice Messaging User service is assigned to the user.  This applies to
    both users and service instances.

    Attributes:
        recording_option: recordingOption
        pause_resume_notification: pauseResumeNotification
        enable_call_recording_announcement: enableCallRecordingAnnouncement
        enable_record_call_repeat_warning_tone: enableRecordCallRepeatWarningTone
        record_call_repeat_warning_tone_timer_seconds:
            recordCallRepeatWarningToneTimerSeconds
        enable_voice_mail_recording: enableVoiceMailRecording
    """

    _ELEMENTS = (
        E("recording_option", "recordingOption", str, is_required=True),
        E("pause_resume_notification", "pauseResumeNotification", str),
        E("enable_call_recording_announcement", "enableCallRecordingAnnouncement", bool),
        E(
            "enable_record_call_repeat_warning_tone", "enableRecordCallRepeatWarningTone",
            bool,
        ),
        E(
            "record_call_repeat_warning_tone_timer_seconds",
            "recordCallRepeatWarningToneTimerSeconds", int,
        ),
        E("enable_voice_mail_recording", "enableVoiceMailRecording", bool),
    )

    recording_option: str = Field(type=str, required=True, mutable=False)
    pause_resume_notification: str = Field(type=str, required=False, mutable=False)
    enable_call_recording_announcement: bool = Field(type=bool, required=False, mutable=False)
    enable_record_call_repeat_warning_tone: bool = Field(
        type=bool, required=False, mutable=False,
    )
    record_call_repeat_warning_tone_timer_seconds: int = Field(
        type=int, required=False, mutable=False,
    )
    enable_voice_mail_recording: bool = Field(type=bool, required=False, mutable=False)


class UserCallTransferGetResponse(OCIResponse):
    """
    Response to ``UserCallTransferGetRequest()``.


    Attributes:
        is_recall_active: isRecallActive
        recall_number_of_rings: recallNumberOfRings
        use_diversion_inhibitor_for_blind_transfer: useDiversionInhibitorForBlindTransfer
        use_diversion_inhibitor_for_consultative_calls:
            useDiversionInhibitorForConsultativeCalls
    """

    _ELEMENTS = (
        E("is_recall_active", "isRecallActive", bool, is_required=True),
        E("recall_number_of_rings", "recallNumberOfRings", int, is_required=True),
        E(
            "use_diversion_inhibitor_for_blind_transfer",
            "useDiversionInhibitorForBlindTransfer", bool, is_required=True,
        ),
        E(
            "use_diversion_inhibitor_for_consultative_calls",
            "useDiversionInhibitorForConsultativeCalls", bool, is_required=True,
        ),
    )

    is_recall_active: bool = Field(type=bool, required=True, mutable=False)
    recall_number_of_rings: int = Field(type=int, required=True, mutable=False)
    use_diversion_inhibitor_for_blind_transfer: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_diversion_inhibitor_for_consultative_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )


class UserCallTransferGetResponse14sp4(OCIResponse):
    """
    Response to ``UserCallTransferGetRequest14sp4()``.


    Attributes:
        is_recall_active: isRecallActive
        recall_number_of_rings: recallNumberOfRings
        use_diversion_inhibitor_for_blind_transfer: useDiversionInhibitorForBlindTransfer
        use_diversion_inhibitor_for_consultative_calls:
            useDiversionInhibitorForConsultativeCalls
        enable_busy_camp_on: enableBusyCampOn
        busy_camp_on_seconds: busyCampOnSeconds
    """

    _ELEMENTS = (
        E("is_recall_active", "isRecallActive", bool, is_required=True),
        E("recall_number_of_rings", "recallNumberOfRings", int, is_required=True),
        E(
            "use_diversion_inhibitor_for_blind_transfer",
            "useDiversionInhibitorForBlindTransfer", bool, is_required=True,
        ),
        E(
            "use_diversion_inhibitor_for_consultative_calls",
            "useDiversionInhibitorForConsultativeCalls", bool, is_required=True,
        ),
        E("enable_busy_camp_on", "enableBusyCampOn", bool, is_required=True),
        E("busy_camp_on_seconds", "busyCampOnSeconds", int, is_required=True),
    )

    is_recall_active: bool = Field(type=bool, required=True, mutable=False)
    recall_number_of_rings: int = Field(type=int, required=True, mutable=False)
    use_diversion_inhibitor_for_blind_transfer: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_diversion_inhibitor_for_consultative_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_busy_camp_on: bool = Field(type=bool, required=True, mutable=False)
    busy_camp_on_seconds: int = Field(type=int, required=True, mutable=False)


class UserCallWaitingGetResponse(OCIResponse):
    """
    Response to ``UserCallWaitingGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserCallWaitingGetResponse17sp4(OCIResponse):
    """
    Response to ``UserCallWaitingGetRequest17sp4()``.

    The following elements are only used in AS data mode: disableCallingLineIdDelivery

    Attributes:
        is_active: isActive
        disable_calling_line_id_delivery: disableCallingLineIdDelivery
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "disable_calling_line_id_delivery", "disableCallingLineIdDelivery", bool,
            is_required=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    disable_calling_line_id_delivery: bool = Field(type=bool, required=True, mutable=False)


class UserCallingLineIDBlockingOverrideGetResponse(OCIResponse):
    """
    Response to ``UserCallingLineIDBlockingOverrideGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserCallingLineIDDeliveryBlockingGetResponse(OCIResponse):
    """
    Response to ``UserCallingLineIDDeliveryBlockingGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserCallingNameDeliveryGetResponse(OCIResponse):
    """
    Response to ``UserCallingNameDeliveryGetRequest()``.


    Attributes:
        is_active_for_external_calls: isActiveForExternalCalls
        is_active_for_internal_calls: isActiveForInternalCalls
    """

    _ELEMENTS = (
        E("is_active_for_external_calls", "isActiveForExternalCalls", bool, is_required=True),
        E("is_active_for_internal_calls", "isActiveForInternalCalls", bool, is_required=True),
    )

    is_active_for_external_calls: bool = Field(type=bool, required=True, mutable=False)
    is_active_for_internal_calls: bool = Field(type=bool, required=True, mutable=False)


class UserCallingNameRetrievalGetResponse(OCIResponse):
    """
    Response to ``UserCallingNameRetrievalGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserCallingNumberDeliveryGetResponse(OCIResponse):
    """
    Response to ``UserCallingNumberDeliveryGetRequest()``.


    Attributes:
        is_active_for_external_calls: isActiveForExternalCalls
        is_active_for_internal_calls: isActiveForInternalCalls
    """

    _ELEMENTS = (
        E("is_active_for_external_calls", "isActiveForExternalCalls", bool, is_required=True),
        E("is_active_for_internal_calls", "isActiveForInternalCalls", bool, is_required=True),
    )

    is_active_for_external_calls: bool = Field(type=bool, required=True, mutable=False)
    is_active_for_internal_calls: bool = Field(type=bool, required=True, mutable=False)


class UserCallingPartyCategoryGetResponse(OCIResponse):
    """
    Response to ``UserCallingPartyCategoryGetRequest()``.


    Attributes:
        category: category
    """

    _ELEMENTS = (
        E("category", "category", str, is_required=True),
    )

    category: str = Field(type=str, required=True, mutable=False)


class UserCallingPartyCategoryGetResponse16(OCIResponse):
    """
    Response to ``UserCallingPartyCategoryGetRequest16()``.


    Attributes:
        category: category
    """

    _ELEMENTS = (
        E("category", "category", str, is_required=True),
    )

    category: str = Field(type=str, required=True, mutable=False)


class UserChargeNumberGetResponse(OCIResponse):
    """
    Response to ``UserChargeNumberGetRequest()``.


    Attributes:
        phone_number: phoneNumber
    """

    _ELEMENTS = (
        E("phone_number", "phoneNumber", str),
    )

    phone_number: str = Field(type=str, required=False, mutable=False)


class UserChargeNumberGetResponse14sp9(OCIResponse):
    """
    Response to ``UserChargeNumberGetRequest14sp9()``.


    Attributes:
        phone_number: phoneNumber
        use_charge_number_for_enhanced_translations:
            useChargeNumberForEnhancedTranslations
        send_charge_number_to_network: sendChargeNumberToNetwork
    """

    _ELEMENTS = (
        E("phone_number", "phoneNumber", str),
        E(
            "use_charge_number_for_enhanced_translations",
            "useChargeNumberForEnhancedTranslations", bool, is_required=True,
        ),
        E(
            "send_charge_number_to_network", "sendChargeNumberToNetwork", bool,
            is_required=True,
        ),
    )

    phone_number: str = Field(type=str, required=False, mutable=False)
    use_charge_number_for_enhanced_translations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    send_charge_number_to_network: bool = Field(type=bool, required=True, mutable=False)


class UserClassmarkGetResponse(OCIResponse):
    """
    Response to ``UserClassmarkGetRequest()``.

    Contains the Class Mark data

    Attributes:
        classmark: classmark
    """

    _ELEMENTS = (
        E("classmark", "classmark", str),
    )

    classmark: str = Field(type=str, required=False, mutable=False)


class UserCollaborateInstantRoomAddResponse(OCIResponse):
    """
    Response to ``UserCollaborateInstantRoomAddRequest()``.


    Attributes:
        room_id: roomId
    """

    _ELEMENTS = (
        E("room_id", "roomId", str, is_required=True),
    )

    room_id: str = Field(type=str, required=True, mutable=False)


class UserCollaborateInstantRoomGetResponse(OCIResponse):
    """
    Response to ``UserCollaborateInstantRoomGetRequest()``.


    Attributes:
        room_name: roomName
        instant_room_start_time: instantRoomStartTime
        instant_room_end_time: instantRoomEndTime
    """

    _ELEMENTS = (
        E("room_name", "roomName", str),
        E("instant_room_start_time", "instantRoomStartTime", str, is_required=True),
        E("instant_room_end_time", "instantRoomEndTime", str, is_required=True),
    )

    room_name: str = Field(type=str, required=False, mutable=False)
    instant_room_start_time: str = Field(type=str, required=True, mutable=False)
    instant_room_end_time: str = Field(type=str, required=True, mutable=False)


class UserCollaborateInstantRoomParametersGetResponse(OCIResponse):
    """
    Response to ``UserCollaborateInstantRoomParametersGetRequest()``.


    Attributes:
        attendee_notification: attendeeNotification
        end_collaborate_room_session_on_owner_exit: endCollaborateRoomSessionOnOwnerExit
        owner_required: ownerRequired
    """

    _ELEMENTS = (
        E("attendee_notification", "attendeeNotification", str, is_required=True),
        E(
            "end_collaborate_room_session_on_owner_exit",
            "endCollaborateRoomSessionOnOwnerExit", bool, is_required=True,
        ),
        E("owner_required", "ownerRequired", bool, is_required=True),
    )

    attendee_notification: str = Field(type=str, required=True, mutable=False)
    end_collaborate_room_session_on_owner_exit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    owner_required: bool = Field(type=bool, required=True, mutable=False)


class UserCollaborateMyRoomGetResponse(OCIResponse):
    """
    Response to ``UserCollaborateMyRoomGetRequest()``.


    Attributes:
        room_id: roomId
        room_name: roomName
        attendee_notification: attendeeNotification
        end_collaborate_room_session_on_owner_exit: endCollaborateRoomSessionOnOwnerExit
        owner_required: ownerRequired
    """

    _ELEMENTS = (
        E("room_id", "roomId", str, is_required=True),
        E("room_name", "roomName", str, is_required=True),
        E("attendee_notification", "attendeeNotification", str, is_required=True),
        E(
            "end_collaborate_room_session_on_owner_exit",
            "endCollaborateRoomSessionOnOwnerExit", bool, is_required=True,
        ),
        E("owner_required", "ownerRequired", bool, is_required=True),
    )

    room_id: str = Field(type=str, required=True, mutable=False)
    room_name: str = Field(type=str, required=True, mutable=False)
    attendee_notification: str = Field(type=str, required=True, mutable=False)
    end_collaborate_room_session_on_owner_exit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    owner_required: bool = Field(type=bool, required=True, mutable=False)


class UserCollaborateProjectRoomAddResponse(OCIResponse):
    """
    Response to ``UserCollaborateProjectRoomAddRequest()``.


    Attributes:
        room_id: roomId
    """

    _ELEMENTS = (
        E("room_id", "roomId", str, is_required=True),
    )

    room_id: str = Field(type=str, required=True, mutable=False)


class UserCollaborateRoomIDRegenerateResponse(OCIResponse):
    """
    Response to ``UserCollaborateRoomIDRegenerateRequest()``.


    Attributes:
        room_id: roomId
    """

    _ELEMENTS = (
        E("room_id", "roomId", str, is_required=True),
    )

    room_id: str = Field(type=str, required=True, mutable=False)


class UserCollaborateRoomListGetResponse(OCIResponse):
    """
    Response to ``UserCollaborateRoomListGetRequest()``.

    Contains a table with column headings : "Room Type", "Name", "Room Id", in a row for
    each collaborate room instance.  Possible values for Room Type column are MyRoom,
    Project Room and Instant Room.

    Attributes:
        room_instance_table: roomInstanceTable
    """

    _ELEMENTS = (
        E(
            "room_instance_table", "roomInstanceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    room_instance_table: "list" = Field(type=list, required=True, mutable=False)


class UserCommPilotCallManagerGetResponse(OCIResponse):
    """
    Response to ``UserCommPilotCallManagerGetRequest()``.


    Attributes:
        launch_on_login: launchOnLogin
    """

    _ELEMENTS = (
        E("launch_on_login", "launchOnLogin", bool, is_required=True),
    )

    launch_on_login: bool = Field(type=bool, required=True, mutable=False)


class UserCommunicationBarringGetResponse(OCIResponse):
    """
    Response to ``UserCommunicationBarringGetRequest()``.

    This command only applies to users in an Enterprise.

    Attributes:
        use_group_setting: useGroupSetting
        profile_name: profileName
    """

    _ELEMENTS = (
        E("use_group_setting", "useGroupSetting", bool, is_required=True),
        E("profile_name", "profileName", str),
    )

    use_group_setting: bool = Field(type=bool, required=True, mutable=False)
    profile_name: str = Field(type=str, required=False, mutable=False)


class UserCommunicationBarringUserControlGetResponse(OCIResponse):
    """
    Response to the ``UserCommunicationBarringUserControlGetRequest()``.

    Identifies the profiles available to the user and which one if any is active as well
    as the lockout status.  Contains a table with column headings: "Name", "Code",
    "Activated" and "Primary".

    Attributes:
        lockout_status: lockoutStatus
        profile_table: profileTable
    """

    _ELEMENTS = (
        E("lockout_status", "lockoutStatus", bool, is_required=True),
        E(
            "profile_table", "profileTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    lockout_status: bool = Field(type=bool, required=True, mutable=False)
    profile_table: "list" = Field(type=list, required=True, mutable=False)


class UserConnectedLineIdentificationRestrictionGetResponse(OCIResponse):
    """
    Response to ``UserConnectedLineIdentificationRestrictionGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserCustomRingbackUserGetCriteriaListResponse(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaListRequest()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Calls From", "Blacklisted", "Holiday Schedule", "Calls To Type", "Calls To
    Number" and "Calls To Extension". The possible values for the "Calls To Type" column
    are the following or a combination of them separated by comma: - Primary - Alternate X
    (where x is a number between 1 and 10) - Mobility The possible values for the "Calls
    To Number" column are the following or a combination of them separated by comma: - The
    value of the phone number for the corresponding Calls To Type, when the number is
    available.  i.e.  Alternate 1 may have extension, but no number.  - When no number is
    available a blank space is provided instead.  The possible values for the "Calls To
    Extension" column are the following or a combination of them separated by comma: - The
    value of the extension for the corresponding Calls To Type, when the extension is
    available.  i.e.  Primary may have number, but no extension.  - For Mobility Calls To
    Type, this is always blank.  - When no extension is available a blank space is
    provided instead.

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserDevicePoliciesGetResponse(OCIResponse):
    """
    Response to ``UserDevicePoliciesGetRequest()``.

    enableDeviceFeatureSynchronization is ignored by the application server in Multiple
    User Shared mode.

    Attributes:
        line_mode: lineMode
        enable_device_feature_synchronization: enableDeviceFeatureSynchronization
    """

    _ELEMENTS = (
        E("line_mode", "lineMode", str, is_required=True),
        E(
            "enable_device_feature_synchronization", "enableDeviceFeatureSynchronization",
            bool, is_required=True,
        ),
    )

    line_mode: str = Field(type=str, required=True, mutable=False)
    enable_device_feature_synchronization: bool = Field(
        type=bool, required=True, mutable=False,
    )


class UserDevicePoliciesGetResponse19sp1(OCIResponse):
    """
    Response to ``UserDevicePoliciesGetRequest19sp1()``.

    enableDeviceFeatureSynchronization is ignored by the application server in Multiple
    User Shared mode.

    Attributes:
        line_mode: lineMode
        enable_device_feature_synchronization: enableDeviceFeatureSynchronization
        enable_dnd: enableDnd
        enable_call_forwarding_always: enableCallForwardingAlways
        enable_call_forwarding_busy: enableCallForwardingBusy
        enable_call_forwarding_no_answer: enableCallForwardingNoAnswer
        enable_acd: enableAcd
        enable_executive: enableExecutive
        enable_executive_assistant: enableExecutiveAssistant
    """

    _ELEMENTS = (
        E("line_mode", "lineMode", str, is_required=True),
        E(
            "enable_device_feature_synchronization", "enableDeviceFeatureSynchronization",
            bool, is_required=True,
        ),
        E("enable_dnd", "enableDnd", bool, is_required=True),
        E(
            "enable_call_forwarding_always", "enableCallForwardingAlways", bool,
            is_required=True,
        ),
        E("enable_call_forwarding_busy", "enableCallForwardingBusy", bool, is_required=True),
        E(
            "enable_call_forwarding_no_answer", "enableCallForwardingNoAnswer", bool,
            is_required=True,
        ),
        E("enable_acd", "enableAcd", bool, is_required=True),
        E("enable_executive", "enableExecutive", bool, is_required=True),
        E("enable_executive_assistant", "enableExecutiveAssistant", bool, is_required=True),
    )

    line_mode: str = Field(type=str, required=True, mutable=False)
    enable_device_feature_synchronization: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dnd: bool = Field(type=bool, required=True, mutable=False)
    enable_call_forwarding_always: bool = Field(type=bool, required=True, mutable=False)
    enable_call_forwarding_busy: bool = Field(type=bool, required=True, mutable=False)
    enable_call_forwarding_no_answer: bool = Field(type=bool, required=True, mutable=False)
    enable_acd: bool = Field(type=bool, required=True, mutable=False)
    enable_executive: bool = Field(type=bool, required=True, mutable=False)
    enable_executive_assistant: bool = Field(type=bool, required=True, mutable=False)


class UserDevicePoliciesGetResponse20(OCIResponse):
    """
    Response to ``UserDevicePoliciesGetRequest201()``.

    enableDeviceFeatureSynchronization is ignored by the application server in Multiple
    User Shared mode.

    Attributes:
        line_mode: lineMode
        enable_device_feature_synchronization: enableDeviceFeatureSynchronization
        enable_dnd: enableDnd
        enable_call_forwarding_always: enableCallForwardingAlways
        enable_call_forwarding_busy: enableCallForwardingBusy
        enable_call_forwarding_no_answer: enableCallForwardingNoAnswer
        enable_acd: enableAcd
        enable_executive: enableExecutive
        enable_executive_assistant: enableExecutiveAssistant
        enable_security_classification: enableSecurityClassification
        enable_call_recording: enableCallRecording
    """

    _ELEMENTS = (
        E("line_mode", "lineMode", str, is_required=True),
        E(
            "enable_device_feature_synchronization", "enableDeviceFeatureSynchronization",
            bool, is_required=True,
        ),
        E("enable_dnd", "enableDnd", bool, is_required=True),
        E(
            "enable_call_forwarding_always", "enableCallForwardingAlways", bool,
            is_required=True,
        ),
        E("enable_call_forwarding_busy", "enableCallForwardingBusy", bool, is_required=True),
        E(
            "enable_call_forwarding_no_answer", "enableCallForwardingNoAnswer", bool,
            is_required=True,
        ),
        E("enable_acd", "enableAcd", bool, is_required=True),
        E("enable_executive", "enableExecutive", bool, is_required=True),
        E("enable_executive_assistant", "enableExecutiveAssistant", bool, is_required=True),
        E(
            "enable_security_classification", "enableSecurityClassification", bool,
            is_required=True,
        ),
        E("enable_call_recording", "enableCallRecording", bool, is_required=True),
    )

    line_mode: str = Field(type=str, required=True, mutable=False)
    enable_device_feature_synchronization: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dnd: bool = Field(type=bool, required=True, mutable=False)
    enable_call_forwarding_always: bool = Field(type=bool, required=True, mutable=False)
    enable_call_forwarding_busy: bool = Field(type=bool, required=True, mutable=False)
    enable_call_forwarding_no_answer: bool = Field(type=bool, required=True, mutable=False)
    enable_acd: bool = Field(type=bool, required=True, mutable=False)
    enable_executive: bool = Field(type=bool, required=True, mutable=False)
    enable_executive_assistant: bool = Field(type=bool, required=True, mutable=False)
    enable_security_classification: bool = Field(type=bool, required=True, mutable=False)
    enable_call_recording: bool = Field(type=bool, required=True, mutable=False)


class UserDevicePoliciesGetResponse21(OCIResponse):
    """
    Response to ``UserDevicePoliciesGetRequest21()``.

    enableDeviceFeatureSynchronization is ignored by the application server in Multiple
    User Shared mode.

    Attributes:
        line_mode: lineMode
        enable_device_feature_synchronization: enableDeviceFeatureSynchronization
        enable_dnd: enableDnd
        enable_call_forwarding_always: enableCallForwardingAlways
        enable_call_forwarding_busy: enableCallForwardingBusy
        enable_call_forwarding_no_answer: enableCallForwardingNoAnswer
        enable_acd: enableAcd
        enable_executive: enableExecutive
        enable_executive_assistant: enableExecutiveAssistant
        enable_security_classification: enableSecurityClassification
        enable_call_recording: enableCallRecording
        enable_call_decline: enableCallDecline
    """

    _ELEMENTS = (
        E("line_mode", "lineMode", str, is_required=True),
        E(
            "enable_device_feature_synchronization", "enableDeviceFeatureSynchronization",
            bool, is_required=True,
        ),
        E("enable_dnd", "enableDnd", bool, is_required=True),
        E(
            "enable_call_forwarding_always", "enableCallForwardingAlways", bool,
            is_required=True,
        ),
        E("enable_call_forwarding_busy", "enableCallForwardingBusy", bool, is_required=True),
        E(
            "enable_call_forwarding_no_answer", "enableCallForwardingNoAnswer", bool,
            is_required=True,
        ),
        E("enable_acd", "enableAcd", bool, is_required=True),
        E("enable_executive", "enableExecutive", bool, is_required=True),
        E("enable_executive_assistant", "enableExecutiveAssistant", bool, is_required=True),
        E(
            "enable_security_classification", "enableSecurityClassification", bool,
            is_required=True,
        ),
        E("enable_call_recording", "enableCallRecording", bool, is_required=True),
        E("enable_call_decline", "enableCallDecline", bool, is_required=True),
    )

    line_mode: str = Field(type=str, required=True, mutable=False)
    enable_device_feature_synchronization: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_dnd: bool = Field(type=bool, required=True, mutable=False)
    enable_call_forwarding_always: bool = Field(type=bool, required=True, mutable=False)
    enable_call_forwarding_busy: bool = Field(type=bool, required=True, mutable=False)
    enable_call_forwarding_no_answer: bool = Field(type=bool, required=True, mutable=False)
    enable_acd: bool = Field(type=bool, required=True, mutable=False)
    enable_executive: bool = Field(type=bool, required=True, mutable=False)
    enable_executive_assistant: bool = Field(type=bool, required=True, mutable=False)
    enable_security_classification: bool = Field(type=bool, required=True, mutable=False)
    enable_call_recording: bool = Field(type=bool, required=True, mutable=False)
    enable_call_decline: bool = Field(type=bool, required=True, mutable=False)


class UserDirectedCallPickupWithBargeInGetResponse(OCIResponse):
    """
    Response to ``UserDirectedCallPickupWithBargeInGetRequest()``.


    Attributes:
        enable_barge_in_warning_tone: enableBargeInWarningTone
    """

    _ELEMENTS = (
        E("enable_barge_in_warning_tone", "enableBargeInWarningTone", bool, is_required=True),
    )

    enable_barge_in_warning_tone: bool = Field(type=bool, required=True, mutable=False)


class UserDirectedCallPickupWithBargeInGetResponse14sp7(OCIResponse):
    """
    Response to ``UserDirectedCallPickupWithBargeInGetRequest14sp7()``.


    Attributes:
        enable_barge_in_warning_tone: enableBargeInWarningTone
        enable_automatic_target_selection: enableAutomaticTargetSelection
    """

    _ELEMENTS = (
        E("enable_barge_in_warning_tone", "enableBargeInWarningTone", bool, is_required=True),
        E(
            "enable_automatic_target_selection", "enableAutomaticTargetSelection", bool,
            is_required=True,
        ),
    )

    enable_barge_in_warning_tone: bool = Field(type=bool, required=True, mutable=False)
    enable_automatic_target_selection: bool = Field(type=bool, required=True, mutable=False)


class UserDnGetActivationListResponse(OCIResponse):
    """
    Response to ``UserDnGetActivationListRequest()``.

    The response contains a table with columns: "Phone Number", and "Activated". The
    "Phone Number" column contains a single DN. The "Activated" column indicates if the
    phone number is activated or not.

    Attributes:
        dn_table: dnTable
    """

    _ELEMENTS = (
        E("dn_table", "dnTable", list, is_complex=True, is_required=True, is_table=True),
    )

    dn_table: "list" = Field(type=list, required=True, mutable=False)


class UserDoNotDisturbGetResponse(OCIResponse):
    """
    Response to ``UserDoNotDisturbGetRequest()``.


    Attributes:
        is_active: isActive
        ring_splash: ringSplash
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("ring_splash", "ringSplash", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    ring_splash: bool = Field(type=bool, required=True, mutable=False)


class UserDualModeVCCGetResponse(OCIResponse):
    """
    Response to ``UserDualModeVCCGetRequest()``

    Attributes:
        subscriber_user_name: subscriberUserName
    """

    _ELEMENTS = (
        E("subscriber_user_name", "subscriberUserName", str),
    )

    subscriber_user_name: str = Field(type=str, required=False, mutable=False)


class UserEnhancedCallLogsGetListResponse17sp4(OCIResponse):
    """
    Response to ``UserEnhancedCallLogsGetListRequest17sp4()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``UserEnhancedCallLogsGetListRequest17sp4()``, if a call log
    type was specified in the request.  - the total number of retrievable logs, if no call
    log type was specified in the request.  A list of MixedCallLogsEntry will be returned
    if the call logs are stored on CDS A list of ExtendedMixedCallLogsEntry will be
    returned if the call logs are stored on DBS The logs are sorted by date/time of the
    call.  Replaced by UserEnhancedCallLogsGetListResponse17sp4V2. Originally deprecated
    in release 20.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        legacy_entry: legacyEntry
        extended_entry: extendedEntry
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E("legacy_entry", "legacyEntry", str, is_complex=True),  # unknown
        E("extended_entry", "extendedEntry", str, is_complex=True),  # unknown
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    legacy_entry: str = Field(type=str, required=False, mutable=False)
    extended_entry: str = Field(type=str, required=False, mutable=False)


class UserEnhancedCallLogsGetListResponse20(OCIResponse):
    """
    Response to ``UserEnhancedCallLogsGetListRequest20()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``UserEnhancedCallLogsGetListRequest20()``, if a call log
    type was specified in the request.  - the total number of retrievable logs, if no call
    log type was specified in the request.  A list of MixedCallLogsEntry will be returned
    if the call logs are stored on CDS A list of ExtendedMixedCallLogsEntry20 will be
    returned if the call logs are stored on DBS The logs are sorted by date/time of the
    call.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        legacy_entry: legacyEntry
        extended_entry: extendedEntry
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E("legacy_entry", "legacyEntry", str, is_complex=True),  # unknown
        E("extended_entry", "extendedEntry", str, is_complex=True),  # unknown
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    legacy_entry: str = Field(type=str, required=False, mutable=False)
    extended_entry: str = Field(type=str, required=False, mutable=False)


class UserEnhancedCallLogsGetListResponse21(OCIResponse):
    """
    Response to ``UserEnhancedCallLogsGetListRequest21()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``UserEnhancedCallLogsGetListRequest21()``, if a call log
    type was specified in the request.  - the total number of retrievable logs, if no call
    log type was specified in the request.  A list of MixedCallLogsEntry will be returned
    if the call logs are stored on CDS A list of ExtendedMixedCallLogsEntry21 will be
    returned if the call logs are stored on DBS The logs are sorted by date/time of the
    call.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        legacy_entry: legacyEntry
        extended_entry: extendedEntry
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E("legacy_entry", "legacyEntry", str, is_complex=True),  # unknown
        E("extended_entry", "extendedEntry", str, is_complex=True),  # unknown
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    legacy_entry: str = Field(type=str, required=False, mutable=False)
    extended_entry: str = Field(type=str, required=False, mutable=False)


class UserEnterpriseCommonPhoneListGetPagedSortedListResponse(OCIResponse):
    """
    Response to the ``UserEnterpriseCommonPhoneListGetPagedSortedListRequest()``.

    The response contains the enterprise's common phone list.  The response contains a
    table with column headings: "Name" and "Phone Number".

    Attributes:
        total_number_of_rows: totalNumberOfRows
        enterprise_common_phone_list_table: enterpriseCommonPhoneListTable
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "enterprise_common_phone_list_table", "enterpriseCommonPhoneListTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    enterprise_common_phone_list_table: "list" = Field(
        type=list, required=True, mutable=False,
    )


class UserExecutiveAssistantGetResponse(OCIResponse):
    """
    Response to the ``UserExecutiveAssistantGetRequest()``.

    Contains the executive assistant setting and a table of executives this assistant has
    been assigned to.  The criteria table's column headings are: "User Id", "Last Name",
    "First Name", ", "Hiragana Last Name", "Hiragana First Name", "Phone Number",
    "Extension", "Department", "Email Address", "Assistant Opt-in Status" and "Executive
    Allow Opt-in". The possible values for "Assistant Opt-in Status" and "Executive Allow
    Opt-in" columns are "true" and "false".

    Attributes:
        enable_divert: enableDivert
        divert_to_phone_number: divertToPhoneNumber
        executive_table: executiveTable
    """

    _ELEMENTS = (
        E("enable_divert", "enableDivert", bool, is_required=True),
        E("divert_to_phone_number", "divertToPhoneNumber", str),
        E(
            "executive_table", "executiveTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    enable_divert: bool = Field(type=bool, required=True, mutable=False)
    divert_to_phone_number: str = Field(type=str, required=False, mutable=False)
    executive_table: "list" = Field(type=list, required=True, mutable=False)


class UserExecutiveGetAssistantResponse(OCIResponse):
    """
    Response to the ``UserExecutiveGetAssistantsRequest()``.

    Contains the assistant setting and a table of assigned assistants.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Phone Number", "Extension", "Department", "Email Address" and "Opt-in".
    The possible values for "Opt-in" column are "true" and "false".

    Attributes:
        allow_opt_in_out: allowOptInOut
        assistant_user_table: assistantUserTable
    """

    _ELEMENTS = (
        E("allow_opt_in_out", "allowOptInOut", bool, is_required=True),
        E(
            "assistant_user_table", "assistantUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    allow_opt_in_out: bool = Field(type=bool, required=True, mutable=False)
    assistant_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserExecutiveGetAvailableAssistantListResponse(OCIResponse):
    """
    Response to the ``UserExecutiveGetAvailableAssistantListResponse()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department" and
    "Email Address".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserExecutiveGetFilteringResponse(OCIResponse):
    """
    Response to the ``UserExecutiveGetFilteringRequest()``.

    Contains the filtering setting and a table of filtering criteria.  The criteria
    table's column headings are: "Is Active", "Criteria Name", "Time Schedule", "Calls
    From", "Filter", "Holiday Schedule", "Calls To Type", "Calls To Number" and "Calls To
    Extension". The "Filter" column can contain "true" or "false". The possible values for
    the "Calls To Type" column are the following or a combination of them separated by
    comma: - Primary - Alternate X (where x is a number between 1 and 10) - Mobility The
    possible values for the "Calls To Number" column are the following or a combination of
    them separated by comma: - The value of the phone number for the corresponding Calls
    To Type, when the number is available.  i.e.  Alternate 1 may have extension, but no
    number.  - When no number is available a blank space is provided instead.  The
    possible values for the "Calls To Extension" column are the following or a combination
    of them separated by comma: - The value of the extension for the corresponding Calls
    To Type, when the extension is available.  i.e.  Primary may have number, but no
    extension.  - For Mobility Calls To Type, this is always blank.  - When no extension
    is available a blank space is provided instead.

    Attributes:
        enable_filtering: enableFiltering
        filtering_mode: filteringMode
        simple_filter_type: simpleFilterType
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("enable_filtering", "enableFiltering", bool, is_required=True),
        E("filtering_mode", "filteringMode", str, is_required=True),
        E("simple_filter_type", "simpleFilterType", str, is_required=True),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    enable_filtering: bool = Field(type=bool, required=True, mutable=False)
    filtering_mode: str = Field(type=str, required=True, mutable=False)
    simple_filter_type: str = Field(type=str, required=True, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserExecutiveGetScreeningAlertingResponse(OCIResponse):
    """
    Response to the ``UserExecutiveGetScreeningAlertingRequest()``.

    Contains the screening and alerting settings for an executive.

    Attributes:
        enable_screening: enableScreening
        screening_alert_type: screeningAlertType
        alert_broad_works_mobility_location: alertBroadWorksMobilityLocation
        alert_broad_works_anywhere_locations: alertBroadWorksAnywhereLocations
        alert_shared_call_appearance_locations: alertSharedCallAppearanceLocations
        alerting_mode: alertingMode
        alerting_calling_line_id_name_mode: alertingCallingLineIdNameMode
        alerting_custom_calling_line_id_name: alertingCustomCallingLineIdName
        unicode_alerting_custom_calling_line_id_name:
            unicodeAlertingCustomCallingLineIdName
        alerting_calling_line_id_phone_number_mode: alertingCallingLineIdPhoneNumberMode
        alerting_custom_calling_line_id_phone_number:
            alertingCustomCallingLineIdPhoneNumber
        call_push_recall_number_of_rings: callPushRecallNumberOfRings
        next_assistant_number_of_rings: nextAssistantNumberOfRings
        enable_rollover: enableRollover
        rollover_wait_time_seconds: rolloverWaitTimeSeconds
        rollover_action: rolloverAction
        rollover_forward_to_phone_number: rolloverForwardToPhoneNumber
    """

    _ELEMENTS = (
        E("enable_screening", "enableScreening", bool, is_required=True),
        E("screening_alert_type", "screeningAlertType", str, is_required=True),
        E(
            "alert_broad_works_mobility_location", "alertBroadWorksMobilityLocation",
            bool, is_required=True,
        ),
        E(
            "alert_broad_works_anywhere_locations", "alertBroadWorksAnywhereLocations",
            bool, is_required=True,
        ),
        E(
            "alert_shared_call_appearance_locations",
            "alertSharedCallAppearanceLocations", bool, is_required=True,
        ),
        E("alerting_mode", "alertingMode", str, is_required=True),
        E(
            "alerting_calling_line_id_name_mode", "alertingCallingLineIdNameMode", str,
            is_required=True,
        ),
        E("alerting_custom_calling_line_id_name", "alertingCustomCallingLineIdName", str),
        E(
            "unicode_alerting_custom_calling_line_id_name",
            "unicodeAlertingCustomCallingLineIdName", str,
        ),
        E(
            "alerting_calling_line_id_phone_number_mode",
            "alertingCallingLineIdPhoneNumberMode", str, is_required=True,
        ),
        E(
            "alerting_custom_calling_line_id_phone_number",
            "alertingCustomCallingLineIdPhoneNumber", str,
        ),
        E(
            "call_push_recall_number_of_rings", "callPushRecallNumberOfRings", int,
            is_required=True,
        ),
        E(
            "next_assistant_number_of_rings", "nextAssistantNumberOfRings", int,
            is_required=True,
        ),
        E("enable_rollover", "enableRollover", bool, is_required=True),
        E("rollover_wait_time_seconds", "rolloverWaitTimeSeconds", int),
        E("rollover_action", "rolloverAction", str, is_required=True),
        E("rollover_forward_to_phone_number", "rolloverForwardToPhoneNumber", str),
    )

    enable_screening: bool = Field(type=bool, required=True, mutable=False)
    screening_alert_type: str = Field(type=str, required=True, mutable=False)
    alert_broad_works_mobility_location: bool = Field(type=bool, required=True, mutable=False)
    alert_broad_works_anywhere_locations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    alert_shared_call_appearance_locations: bool = Field(
        type=bool, required=True, mutable=False,
    )
    alerting_mode: str = Field(type=str, required=True, mutable=False)
    alerting_calling_line_id_name_mode: str = Field(type=str, required=True, mutable=False)
    alerting_custom_calling_line_id_name: str = Field(type=str, required=False, mutable=False)
    unicode_alerting_custom_calling_line_id_name: str = Field(
        type=str, required=False, mutable=False,
    )
    alerting_calling_line_id_phone_number_mode: str = Field(
        type=str, required=True, mutable=False,
    )
    alerting_custom_calling_line_id_phone_number: str = Field(
        type=str, required=False, mutable=False,
    )
    call_push_recall_number_of_rings: int = Field(type=int, required=True, mutable=False)
    next_assistant_number_of_rings: int = Field(type=int, required=True, mutable=False)
    enable_rollover: bool = Field(type=bool, required=True, mutable=False)
    rollover_wait_time_seconds: int = Field(type=int, required=False, mutable=False)
    rollover_action: str = Field(type=str, required=True, mutable=False)
    rollover_forward_to_phone_number: str = Field(type=str, required=False, mutable=False)


class UserExternalCallingLineIDDeliveryGetResponse(OCIResponse):
    """
    Response to ``UserExternalCallingLineIDDeliveryGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserExternalCustomRingbackGetResponse(OCIResponse):
    """
    Response to ``UserExternalCustomRingbackGetRequest()``.


    Attributes:
        is_active: isActive
        use_setting_level: useSettingLevel
        sip_request_uri: sipRequestURI
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("sip_request_uri", "sipRequestURI", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    sip_request_uri: str = Field(type=str, required=False, mutable=False)


class UserFaxMessagingGetResponse(OCIResponse):
    """
    Response to ``UserFaxMessagingGetRequest()``.


    Attributes:
        is_active: isActive
        phone_number: phoneNumber
        extension: extension
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)


class UserFaxMessagingGetResponse17(OCIResponse):
    """
    Response to ``UserFaxMessagingGetRequest17()``.


    Attributes:
        is_active: isActive
        phone_number: phoneNumber
        extension: extension
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)


class UserFaxMessagingGetResponse17sp1(OCIResponse):
    """
    Response to ``UserFaxMessagingGetRequest17sp1()``.


    Attributes:
        is_active: isActive
        phone_number: phoneNumber
        extension: extension
        alias: alias
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("alias", "alias", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)


class UserFlexibleSeatingGuestGetAvailableHostListResponse(OCIResponse):
    """
    Response to the ``UserFlexibleSeatingGuestGetAvailableHostListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address", "Association Limit Hours", "Enable Association Limit",

    Attributes:
        host_user_table: hostUserTable
    """

    _ELEMENTS = (
        E(
            "host_user_table", "hostUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    host_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserGetListInGroupResponse(OCIResponse):
    """
    Response to ``UserGetListInGroupRequest()``.

    Contains a table with column headings : "User Id", "Last Name", "First Name",
    "Department", "Phone Number", "Phone Number Activated", "Email Address", "Hiragana
    Last Name", "Hiragana First Name", "In Trunk Group", "Extension" in a row for each
    user.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserGetListInServiceProviderResponse(OCIResponse):
    """
    Response to ``UserGetListInServiceProviderRequest()``.

    Contains a table with column headings : "User Id", "Group Id", "Last Name", "First
    Name", "Department", "Phone Number", "Phone Number Activated", "Email Address",
    "Hiragana Last Name", "Hiragana First Name", "In Trunk Group", "Extension" in a row
    for each user.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserGetListInSystemResponse(OCIResponse):
    """
    Response to ``UserGetListInSystemRequest()``.

    Contains a table with column headings : "User Id", "Group Id", "Service Provider Id"
    "Last Name", "First Name", "Department", "Phone Number", "Phone Number Activated",
    "Email Address", "Hiragana Last Name", "Hiragana First Name", "In Trunk Group",
    "Extension" in a row for each user.

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserGetLoginInfoResponse(OCIResponse):
    """
    Response to ``UserGetLoginInfoRequest()`` If a phoneNumber is returned, it will be the
    primay DN of the user

    Attributes:
        login_type: loginType
        locale: locale
        encoding: encoding
        group_id: groupId
        service_provider_id: serviceProviderId
        is_enterprise: isEnterprise
        password_expires_days: passwordExpiresDays
        last_name: lastName
        first_name: firstName
        user_id: userId
        phone_number: phoneNumber
    """

    _ELEMENTS = (
        E("login_type", "loginType", str, is_required=True),
        E("locale", "locale", str, is_required=True),
        E("encoding", "encoding", str, is_required=True),
        E("group_id", "groupId", str),
        E("service_provider_id", "serviceProviderId", str),
        E("is_enterprise", "isEnterprise", bool, is_required=True),
        E("password_expires_days", "passwordExpiresDays", int),
        E("last_name", "lastName", str),
        E("first_name", "firstName", str),
        E("user_id", "userId", str, is_required=True),
        E("phone_number", "phoneNumber", str),
    )

    login_type: str = Field(type=str, required=True, mutable=False)
    locale: str = Field(type=str, required=True, mutable=False)
    encoding: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=False, mutable=False)
    service_provider_id: str = Field(type=str, required=False, mutable=False)
    is_enterprise: bool = Field(type=bool, required=True, mutable=False)
    password_expires_days: int = Field(type=int, required=False, mutable=False)
    last_name: str = Field(type=str, required=False, mutable=False)
    first_name: str = Field(type=str, required=False, mutable=False)
    user_id: str = Field(type=str, required=True, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)


class UserGetRegistrationListResponse(OCIResponse):
    """
    Response to ``UserGetRegistrationListRequest()``.

    The registrationTable table column headings are: "Device Level", "Device Name",
    "Order", "URI", "Expiration", "Line/Port", "Endpoint Type"", "Public Net Address",
    "Public Port", "Private Net Address", "Private Port", "User Agent", "Lockout Started",
    "Lockout Expires", "Lockout Count". The "Device Level" column contains one of the
    AccessDeviceLevel enumerated constants.  The "Line/Port" column in IMS mode can be any
    Public User Identity which can be either a SIPURI or a TELURI. The expiration column
    will be empty when the registration is static.  The Endpoint Type column contains one
    of the enumerated EndpointType values.  The Endpoint Type is empty when the
    registration is against a TELURI. The table is sorted by: telURI (after SIPURI),
    Line/Port, static (after dynamic), order.  Lockout times are shown in GMT offset.
    When a permanent lockout is shown, the "Lockout Expires" column is empty and the
    "Lockout Count" column contains the word Permanent.

    Attributes:
        registration_table: registrationTable
    """

    _ELEMENTS = (
        E(
            "registration_table", "registrationTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    registration_table: "list" = Field(type=list, required=True, mutable=False)


class UserGetServiceInstanceListInServiceProviderResponse(OCIResponse):
    """
    Response to ``UserGetServiceInstanceListInServiceProviderRequest()``.

    Contains a table with column headings : "User Id", "Group Id", "Service Type", "Name",
    "Phone Number", "Extension", "Department" in a row for each Service Instance.
    Possible values for Service Type column are ServiceType enums.

    Attributes:
        service_instance_table: serviceInstanceTable
    """

    _ELEMENTS = (
        E(
            "service_instance_table", "serviceInstanceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_instance_table: "list" = Field(type=list, required=True, mutable=False)


class UserGetServiceInstanceListInSystemResponse(OCIResponse):
    """
    Response to ``UserGetServiceInstanceListInSystemRequest()``.

    Contains a table with column headings : "User Id", "Group Id", "Serive Provider Id",
    "Service Type", "Name", "Phone Number", "Extension" in a row for each Service
    Instance.  Possible values for Service Type column are ServiceType enums.

    Attributes:
        service_instance_table: serviceInstanceTable
    """

    _ELEMENTS = (
        E(
            "service_instance_table", "serviceInstanceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_instance_table: "list" = Field(type=list, required=True, mutable=False)


class UserGroupCommonPhoneListGetPagedSortedListResponse(OCIResponse):
    """
    Response to the ``UserGroupCommonPhoneListGetPagedSortedListRequest()``.

    The response contains the group's common phone list.  The response contains a table
    with column headings: "Name" and "Phone Number".

    Attributes:
        total_number_of_rows: totalNumberOfRows
        group_common_phone_list_table: groupCommonPhoneListTable
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "group_common_phone_list_table", "groupCommonPhoneListTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    group_common_phone_list_table: "list" = Field(type=list, required=True, mutable=False)


class UserGroupCustomContactDirectoryGetPagedSortedListResponse(OCIResponse):
    """
    Response to the ``UserGroupCustomContactDirectoryGetPagedSortedListRequest()``.

    Returns the number of entries that would be returned if the response Was not page size
    restricted.

    The response contains all the contacts in the group's given custom contact directory.
    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Virtual On-Net Phone Number", "Group Id", "Is
    Virtual On-Net User", "Department", "Phone Number", "Extension", "Mobile", "Email
    Address", "Yahoo Id", "Title", "IMP Id". If the entry represents a Virtual On-Net user
    then "User Id" is blank, the "Virtual On-Net Phone Number" contains the phone Number
    of the Virtual On-Net user, the "Group Id" contains the Virtual On-Net user's group
    and the "Is Virtual On-Net User" contains true.  If the entry represents a BroadWorks
    user then the "User Id" contains his BroadWorks userId, the "Virtual On-Net Phone
    Number" and "Group Id" fields are field is blank and the "Is Virtual On-Net User"
    contains false.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        user_table: userTable
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserGroupPagingGetListResponse(OCIResponse):
    """
    Response to the ``UserGroupPagingGetListRequest()``.

    The groupPagingTable contains columns: "Name", "Phone Number", "Extension" and "Is
    Active" The column value for "Is Active" can either be true, or false.

    Attributes:
        paging_group_table: pagingGroupTable
    """

    _ELEMENTS = (
        E(
            "paging_group_table", "pagingGroupTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    paging_group_table: "list" = Field(type=list, required=True, mutable=False)


class UserHolidayScheduleGetListResponse(OCIResponse):
    """
    Response to the ``UserHolidayScheduleGetListRequest()``.

    The response contains all the user's personal and user's group holiday schedule names.

    Attributes:
        holiday_schedule_table: holidayScheduleTable
    """

    _ELEMENTS = (
        E(
            "holiday_schedule_table", "holidayScheduleTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    holiday_schedule_table: "list" = Field(type=list, required=True, mutable=False)


class UserHotelingGuestGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``UserHotelingGuestGetAvailableUserListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Association Limit Hours", "Enable Association
    Limit", "Phone Number", "Extension", "Department", "Email Address".

    Attributes:
        host_user_table: hostUserTable
    """

    _ELEMENTS = (
        E(
            "host_user_table", "hostUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    host_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserHotelingGuestGetResponse14(OCIResponse):
    """
    Response to ``UserHotelingGuestGetRequest14()``.

    Replaced By: ``UserSharedCallAppearanceAddEndpointRequest14sp2()``

    Attributes:
        is_active: isActive
        association_limit_hours: associationLimitHours
        host_user_id: hostUserId
        host_last_name: hostLastName
        host_first_name: hostFirstName
        host_association_date_time: hostAssociationDateTime
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("association_limit_hours", "associationLimitHours", int, is_required=True),
        E("host_user_id", "hostUserId", str),
        E("host_last_name", "hostLastName", str),
        E("host_first_name", "hostFirstName", str),
        E("host_association_date_time", "hostAssociationDateTime", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    association_limit_hours: int = Field(type=int, required=True, mutable=False)
    host_user_id: str = Field(type=str, required=False, mutable=False)
    host_last_name: str = Field(type=str, required=False, mutable=False)
    host_first_name: str = Field(type=str, required=False, mutable=False)
    host_association_date_time: str = Field(type=str, required=False, mutable=False)


class UserHotelingGuestGetResponse14sp2(OCIResponse):
    """
    Response to ``UserHotelingGuestGetRequest14()``.

    Replaced by: ``UserHotelingGuestGetResponse14sp4()``

    Attributes:
        is_active: isActive
        association_limit_hours: associationLimitHours
        host_user_id: hostUserId
        host_last_name: hostLastName
        host_first_name: hostFirstName
        host_association_date_time: hostAssociationDateTime
        host_association_limit_hours: hostAssociationLimitHours
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("association_limit_hours", "associationLimitHours", int, is_required=True),
        E("host_user_id", "hostUserId", str),
        E("host_last_name", "hostLastName", str),
        E("host_first_name", "hostFirstName", str),
        E("host_association_date_time", "hostAssociationDateTime", str),
        E("host_association_limit_hours", "hostAssociationLimitHours", int),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    association_limit_hours: int = Field(type=int, required=True, mutable=False)
    host_user_id: str = Field(type=str, required=False, mutable=False)
    host_last_name: str = Field(type=str, required=False, mutable=False)
    host_first_name: str = Field(type=str, required=False, mutable=False)
    host_association_date_time: str = Field(type=str, required=False, mutable=False)
    host_association_limit_hours: int = Field(type=int, required=False, mutable=False)


class UserHotelingGuestGetResponse14sp4(OCIResponse):
    """
    Response to ``UserHotelingGuestGetRequest14sp4()``

    Attributes:
        is_active: isActive
        enable_association_limit: enableAssociationLimit
        association_limit_hours: associationLimitHours
        host_user_id: hostUserId
        host_last_name: hostLastName
        host_first_name: hostFirstName
        host_association_date_time: hostAssociationDateTime
        host_enforces_association_limit: hostEnforcesAssociationLimit
        host_association_limit_hours: hostAssociationLimitHours
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("enable_association_limit", "enableAssociationLimit", bool, is_required=True),
        E("association_limit_hours", "associationLimitHours", int, is_required=True),
        E("host_user_id", "hostUserId", str),
        E("host_last_name", "hostLastName", str),
        E("host_first_name", "hostFirstName", str),
        E("host_association_date_time", "hostAssociationDateTime", str),
        E("host_enforces_association_limit", "hostEnforcesAssociationLimit", bool),
        E("host_association_limit_hours", "hostAssociationLimitHours", int),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    enable_association_limit: bool = Field(type=bool, required=True, mutable=False)
    association_limit_hours: int = Field(type=int, required=True, mutable=False)
    host_user_id: str = Field(type=str, required=False, mutable=False)
    host_last_name: str = Field(type=str, required=False, mutable=False)
    host_first_name: str = Field(type=str, required=False, mutable=False)
    host_association_date_time: str = Field(type=str, required=False, mutable=False)
    host_enforces_association_limit: bool = Field(type=bool, required=False, mutable=False)
    host_association_limit_hours: int = Field(type=int, required=False, mutable=False)


class UserHotelingHostGetResponse14(OCIResponse):
    """
    Response to ``UserHotelingHostGetRequest14()``.

    Replaced by: ``UserHotelingHostGetResponse14sp4()``

    Attributes:
        is_active: isActive
        association_limit_hours: associationLimitHours
        access_level: accessLevel
        guest_last_name: guestLastName
        guest_first_name: guestFirstName
        guest_phone_number: guestPhoneNumber
        guest_extension: guestExtension
        guest_location_dialing_code: guestLocationDialingCode
        guest_association_date_time: guestAssociationDateTime
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("association_limit_hours", "associationLimitHours", int, is_required=True),
        E("access_level", "accessLevel", str, is_required=True),
        E("guest_last_name", "guestLastName", str),
        E("guest_first_name", "guestFirstName", str),
        E("guest_phone_number", "guestPhoneNumber", str),
        E("guest_extension", "guestExtension", str),
        E("guest_location_dialing_code", "guestLocationDialingCode", str),
        E("guest_association_date_time", "guestAssociationDateTime", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    association_limit_hours: int = Field(type=int, required=True, mutable=False)
    access_level: str = Field(type=str, required=True, mutable=False)
    guest_last_name: str = Field(type=str, required=False, mutable=False)
    guest_first_name: str = Field(type=str, required=False, mutable=False)
    guest_phone_number: str = Field(type=str, required=False, mutable=False)
    guest_extension: str = Field(type=str, required=False, mutable=False)
    guest_location_dialing_code: str = Field(type=str, required=False, mutable=False)
    guest_association_date_time: str = Field(type=str, required=False, mutable=False)


class UserHotelingHostGetResponse14sp4(OCIResponse):
    """
    Response to ``UserHotelingHostGetRequest14sp4()``.


    Attributes:
        is_active: isActive
        enforce_association_limit: enforceAssociationLimit
        association_limit_hours: associationLimitHours
        access_level: accessLevel
        guest_last_name: guestLastName
        guest_first_name: guestFirstName
        guest_phone_number: guestPhoneNumber
        guest_extension: guestExtension
        guest_location_dialing_code: guestLocationDialingCode
        guest_association_date_time: guestAssociationDateTime
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("enforce_association_limit", "enforceAssociationLimit", bool, is_required=True),
        E("association_limit_hours", "associationLimitHours", int, is_required=True),
        E("access_level", "accessLevel", str, is_required=True),
        E("guest_last_name", "guestLastName", str),
        E("guest_first_name", "guestFirstName", str),
        E("guest_phone_number", "guestPhoneNumber", str),
        E("guest_extension", "guestExtension", str),
        E("guest_location_dialing_code", "guestLocationDialingCode", str),
        E("guest_association_date_time", "guestAssociationDateTime", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    enforce_association_limit: bool = Field(type=bool, required=True, mutable=False)
    association_limit_hours: int = Field(type=int, required=True, mutable=False)
    access_level: str = Field(type=str, required=True, mutable=False)
    guest_last_name: str = Field(type=str, required=False, mutable=False)
    guest_first_name: str = Field(type=str, required=False, mutable=False)
    guest_phone_number: str = Field(type=str, required=False, mutable=False)
    guest_extension: str = Field(type=str, required=False, mutable=False)
    guest_location_dialing_code: str = Field(type=str, required=False, mutable=False)
    guest_association_date_time: str = Field(type=str, required=False, mutable=False)


class UserHotelingHostGetResponse17(OCIResponse):
    """
    Response to ``UserHotelingHostGetRequest17()``.


    Attributes:
        is_active: isActive
        enforce_association_limit: enforceAssociationLimit
        association_limit_hours: associationLimitHours
        access_level: accessLevel
        guest_last_name: guestLastName
        guest_first_name: guestFirstName
        guest_phone_number: guestPhoneNumber
        guest_extension: guestExtension
        guest_location_dialing_code: guestLocationDialingCode
        guest_association_date_time: guestAssociationDateTime
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("enforce_association_limit", "enforceAssociationLimit", bool, is_required=True),
        E("association_limit_hours", "associationLimitHours", int, is_required=True),
        E("access_level", "accessLevel", str, is_required=True),
        E("guest_last_name", "guestLastName", str),
        E("guest_first_name", "guestFirstName", str),
        E("guest_phone_number", "guestPhoneNumber", str),
        E("guest_extension", "guestExtension", str),
        E("guest_location_dialing_code", "guestLocationDialingCode", str),
        E("guest_association_date_time", "guestAssociationDateTime", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    enforce_association_limit: bool = Field(type=bool, required=True, mutable=False)
    association_limit_hours: int = Field(type=int, required=True, mutable=False)
    access_level: str = Field(type=str, required=True, mutable=False)
    guest_last_name: str = Field(type=str, required=False, mutable=False)
    guest_first_name: str = Field(type=str, required=False, mutable=False)
    guest_phone_number: str = Field(type=str, required=False, mutable=False)
    guest_extension: str = Field(type=str, required=False, mutable=False)
    guest_location_dialing_code: str = Field(type=str, required=False, mutable=False)
    guest_association_date_time: str = Field(type=str, required=False, mutable=False)


class UserINIntegrationGetResponse(OCIResponse):
    """
    Response to ``UserINIntegrationGetRequest()``

    Attributes:
        originating_service_key: originatingServiceKey
        terminating_service_key: terminatingServiceKey
    """

    _ELEMENTS = (
        E("originating_service_key", "originatingServiceKey", int),
        E("terminating_service_key", "terminatingServiceKey", int),
    )

    originating_service_key: int = Field(type=int, required=False, mutable=False)
    terminating_service_key: int = Field(type=int, required=False, mutable=False)


class UserInCallServiceActivationGetResponse(OCIResponse):
    """
    Response to ``UserInCallServiceActivationGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserIntegratedIMPGetResponse(OCIResponse):
    """
    Response to the ``UserIntegratedIMPGetRequest()``.

    The response contains the Integrated IMP specific service attributes for the user.

    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserIntelligentNetworkServiceControlGetResponse(OCIResponse):
    """
    Response to ``UserIntelligentNetworkServiceControlGetRequest()``.


    Attributes:
        pre_answer_actions_enabled: preAnswerActionsEnabled
    """

    _ELEMENTS = (
        E("pre_answer_actions_enabled", "preAnswerActionsEnabled", bool, is_required=True),
    )

    pre_answer_actions_enabled: bool = Field(type=bool, required=True, mutable=False)


class UserInterceptUserGetResponse(OCIResponse):
    """
    Response to the ``UserInterceptUserGetRequest()``.

    Replaced By: ``UserInterceptUserGetResponse16()``

    Attributes:
        is_active: isActive
        announcement_selection: announcementSelection
        audio_file_description: audioFileDescription
        video_file_description: videoFileDescription
        play_new_phone_number: playNewPhoneNumber
        new_phone_number: newPhoneNumber
        transfer_on_zero_to_phone_number: transferOnZeroToPhoneNumber
        transfer_phone_number: transferPhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("announcement_selection", "announcementSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("video_file_description", "videoFileDescription", str),
        E("play_new_phone_number", "playNewPhoneNumber", bool, is_required=True),
        E("new_phone_number", "newPhoneNumber", str),
        E(
            "transfer_on_zero_to_phone_number", "transferOnZeroToPhoneNumber", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    announcement_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    play_new_phone_number: bool = Field(type=bool, required=True, mutable=False)
    new_phone_number: str = Field(type=str, required=False, mutable=False)
    transfer_on_zero_to_phone_number: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)


class UserInterceptUserGetResponse16(OCIResponse):
    """
    Response to the ``UserInterceptUserGetRequest16()``.

    Replaced By: ``UserInterceptUserGetResponse16sp1()``

    Attributes:
        is_active: isActive
        announcement_selection: announcementSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        play_new_phone_number: playNewPhoneNumber
        new_phone_number: newPhoneNumber
        transfer_on_zero_to_phone_number: transferOnZeroToPhoneNumber
        transfer_phone_number: transferPhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("announcement_selection", "announcementSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("play_new_phone_number", "playNewPhoneNumber", bool, is_required=True),
        E("new_phone_number", "newPhoneNumber", str),
        E(
            "transfer_on_zero_to_phone_number", "transferOnZeroToPhoneNumber", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    announcement_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    play_new_phone_number: bool = Field(type=bool, required=True, mutable=False)
    new_phone_number: str = Field(type=str, required=False, mutable=False)
    transfer_on_zero_to_phone_number: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)


class UserInterceptUserGetResponse16sp1(OCIResponse):
    """
    Response to the ``UserInterceptUserGetRequest16sp1()``.


    Attributes:
        is_active: isActive
        announcement_selection: announcementSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        play_new_phone_number: playNewPhoneNumber
        new_phone_number: newPhoneNumber
        transfer_on_zero_to_phone_number: transferOnZeroToPhoneNumber
        transfer_phone_number: transferPhoneNumber
        reroute_outbound_calls: rerouteOutboundCalls
        outbound_reroute_phone_number: outboundReroutePhoneNumber
        allow_outbound_local_calls: allowOutboundLocalCalls
        inbound_call_mode: inboundCallMode
        alternate_blocking_announcement: alternateBlockingAnnouncement
        route_to_voice_mail: routeToVoiceMail
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("announcement_selection", "announcementSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("play_new_phone_number", "playNewPhoneNumber", bool, is_required=True),
        E("new_phone_number", "newPhoneNumber", str),
        E(
            "transfer_on_zero_to_phone_number", "transferOnZeroToPhoneNumber", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("reroute_outbound_calls", "rerouteOutboundCalls", bool, is_required=True),
        E("outbound_reroute_phone_number", "outboundReroutePhoneNumber", str),
        E("allow_outbound_local_calls", "allowOutboundLocalCalls", bool, is_required=True),
        E("inbound_call_mode", "inboundCallMode", str, is_required=True),
        E(
            "alternate_blocking_announcement", "alternateBlockingAnnouncement", bool,
            is_required=True,
        ),
        E("route_to_voice_mail", "routeToVoiceMail", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    announcement_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    play_new_phone_number: bool = Field(type=bool, required=True, mutable=False)
    new_phone_number: str = Field(type=str, required=False, mutable=False)
    transfer_on_zero_to_phone_number: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    reroute_outbound_calls: bool = Field(type=bool, required=True, mutable=False)
    outbound_reroute_phone_number: str = Field(type=str, required=False, mutable=False)
    allow_outbound_local_calls: bool = Field(type=bool, required=True, mutable=False)
    inbound_call_mode: str = Field(type=str, required=True, mutable=False)
    alternate_blocking_announcement: bool = Field(type=bool, required=True, mutable=False)
    route_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)


class UserInternalCallingLineIDDeliveryGetResponse(OCIResponse):
    """
    Response to ``UserInternalCallingLineIDDeliveryGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserLDAPIntegrationGetDirectoryListResponse(OCIResponse):
    """
    Response to ``UserLDAPIntegrationGetDirectoryListRequest()``.

    The table is a 4 column table.  The column headings are defined by the group's LDAP
    settings.

    Attributes:
        ldap_entry_table: ldapEntryTable
        search_label: searchLabel
        has_more_entries: hasMoreEntries
        last_page_number: lastPageNumber
    """

    _ELEMENTS = (
        E(
            "ldap_entry_table", "ldapEntryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E("search_label", "searchLabel", str, is_required=True),
        E("has_more_entries", "hasMoreEntries", bool, is_required=True),
        E("last_page_number", "lastPageNumber", int),
    )

    ldap_entry_table: "list" = Field(type=list, required=True, mutable=False)
    search_label: str = Field(type=str, required=True, mutable=False)
    has_more_entries: bool = Field(type=bool, required=True, mutable=False)
    last_page_number: int = Field(type=int, required=False, mutable=False)


class UserLegacyAutomaticCallbackGetResponse(OCIResponse):
    """
    Response to ``UserLegacyAutomaticCallbackGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserLinePortGetListResponse(OCIResponse):
    """
    Response to ``UserLinePortGetListRequest()``.

    Contains a table of line ports configured for a user The column headings are: "Line
    Port", "Line Port Type", "In Trunk Group", "Contact", "Contact2", "Contact3",
    "Contact4", "Contact5", " Authentication Mode ", and "Auto-Config Soft Client".

    Attributes:
        line_port_table: linePortTable
    """

    _ELEMENTS = (
        E(
            "line_port_table", "linePortTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    line_port_table: "list" = Field(type=list, required=True, mutable=False)


class UserMWIDeliveryToMobileEndpointGetResponse(OCIResponse):
    """
    Response to ``UserMWIDeliveryToMobileEndpointGetRequest()``.


    Attributes:
        is_active: isActive
        mobile_phone_number: mobilePhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("mobile_phone_number", "mobilePhoneNumber", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)


class UserMeetMeConferencingAddConferenceResponse(OCIResponse):
    """
    Response to ``UserMeetMeConferencingAddConferenceRequest()``.


    Attributes:
        conference_id: conferenceId
        moderator_pin: moderatorPin
    """

    _ELEMENTS = (
        E("conference_id", "conferenceId", str, is_required=True),
        E("moderator_pin", "moderatorPin", str, is_required=True),
    )

    conference_id: str = Field(type=str, required=True, mutable=False)
    moderator_pin: str = Field(type=str, required=True, mutable=False)


class UserMeetMeConferencingAddConferenceResponse19(OCIResponse):
    """
    Response to ``UserMeetMeConferencingAddConferenceRequest19()``.

    Contains the information of a conference.

    Attributes:
        conference_id: conferenceId
        moderator_pin: moderatorPin
        security_pin: securityPin
    """

    _ELEMENTS = (
        E("conference_id", "conferenceId", str, is_required=True),
        E("moderator_pin", "moderatorPin", str, is_required=True),
        E("security_pin", "securityPin", str),
    )

    conference_id: str = Field(type=str, required=True, mutable=False)
    moderator_pin: str = Field(type=str, required=True, mutable=False)
    security_pin: str = Field(type=str, required=False, mutable=False)


class UserMeetMeConferencingGetAvailableDelegateListResponse(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetAvailableDelegateListRequest()``.

    Contains all hosts assigned on a bridge.  The table has column headings: "User Id",
    "Last Name", "First Name", "Hiragana Last Name", "Hiragana First Name", "Phone
    Number", "Extension", "Department" and "Email Address".

    Attributes:
        conference_delegate_user_table: conferenceDelegateUserTable
    """

    _ELEMENTS = (
        E(
            "conference_delegate_user_table", "conferenceDelegateUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    conference_delegate_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserMeetMeConferencingGetBridgeListResponse(OCIResponse):
    """
    Response to the ``UserMeetMeConferencingGetBridgeListRequest()``.

    Contains a table with column headings: "Bridge Id", "Name", "Phone Number",
    "Extension", "Ports", and "Is Active" The column values for "Is Active" can either be
    true, or false.

    Attributes:
        conference_bridge_table: conferenceBridgeTable
    """

    _ELEMENTS = (
        E(
            "conference_bridge_table", "conferenceBridgeTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    conference_bridge_table: "list" = Field(type=list, required=True, mutable=False)


class UserMeetMeConferencingGetConferenceDelegateListResponse(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceDelegateListRequest()``.

    Contains a table with table heading:"User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name","Phone Number", "Extension", "Department" and "Email
    Address".

    Attributes:
        conference_delegate_user_table: conferenceDelegateUserTable
    """

    _ELEMENTS = (
        E(
            "conference_delegate_user_table", "conferenceDelegateUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    conference_delegate_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserMeetMeConferencingGetConferenceGreetingResponse(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceGreetingRequest()``.

    Contains the information of a conference custom greeting.

    Attributes:
        play_entrance_greeting: playEntranceGreeting
        entrance_greeting_audio_file: entranceGreetingAudioFile
        entrance_greeting_media_type: entranceGreetingMediaType
    """

    _ELEMENTS = (
        E("play_entrance_greeting", "playEntranceGreeting", bool, is_required=True),
        E("entrance_greeting_audio_file", "entranceGreetingAudioFile", str),
        E("entrance_greeting_media_type", "entranceGreetingMediaType", str),
    )

    play_entrance_greeting: bool = Field(type=bool, required=True, mutable=False)
    entrance_greeting_audio_file: str = Field(type=str, required=False, mutable=False)
    entrance_greeting_media_type: str = Field(type=str, required=False, mutable=False)


class UserMeetMeConferencingGetConferenceListResponse(OCIResponse):
    """
    Response to the ``UserMeetMeConferencingGetConferenceListRequest()``.

    Contains a table with column headings: "Bridge Id", "Conference Id", "Title", "Bridge
    Name", "Status", "Type", "Start Time", "Last Name", "First Name" and "Host Id". The
    column values for "Status" can be Active, Inactive, or Expired.  The column values for
    "Type" can be Reservationless, One Time, Recurring Daily, Recurring Weekly, Recurring
    Monthly, or Recurring Yearly.  Start Time is in the format "yyyy-MM-
    dd'T'HH:mm:ss:SSSZ". Example: 2010-10-01T09:30:00:000-0400.

    Attributes:
        conference_table: conferenceTable
    """

    _ELEMENTS = (
        E(
            "conference_table", "conferenceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    conference_table: "list" = Field(type=list, required=True, mutable=False)


class UserMeetMeConferencingGetConferenceRecordingListResponse(OCIResponse):
    """
    Response to the ``UserMeetMeConferencingGetConferenceRecordingListRequest()``.

    Contains a table with column headings: "Bridge Id", "Conference Id", "Conference
    Title", "Bridge Name", "Start Time", "File Size", and "URL". Start Time is in the
    format "yyyy-MM-dd'T'HH:mm:ss:SSSZ". Example: 2010-10-01T09:30:00:000-0400.

    Attributes:
        conference_recording_table: conferenceRecordingTable
    """

    _ELEMENTS = (
        E(
            "conference_recording_table", "conferenceRecordingTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    conference_recording_table: "list" = Field(type=list, required=True, mutable=False)


class UserMusicOnHoldGetResponse(OCIResponse):
    """
    Response to ``UserMusicOnHoldGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserNetworkConferencingGetResponse(OCIResponse):
    """
    Response to ``UserNetworkConferencingGetRequest()``.


    Attributes:
        conference_uri: conferenceURI
        max_conference_parties: maxConferenceParties
    """

    _ELEMENTS = (
        E("conference_uri", "conferenceURI", str),
        E("max_conference_parties", "maxConferenceParties", int, is_required=True),
    )

    conference_uri: str = Field(type=str, required=False, mutable=False)
    max_conference_parties: int = Field(type=int, required=True, mutable=False)


class UserNumberPortabilityAnnouncementGetResponse(OCIResponse):
    """
    Response to the ``UserNumberPortabilityAnnouncementGetRequest()``.

    The response contains the user Number Portability attributes.

    Attributes:
        enable: enable
    """

    _ELEMENTS = (
        E("enable", "enable", bool, is_required=True),
    )

    enable: bool = Field(type=bool, required=True, mutable=False)


class UserOCICallControlApplicationGetListResponse(OCIResponse):
    """
    Response to ``UserOCICallControlApplicationGetListRequest()``.


    Attributes:
        application_id: applicationId
    """

    _ELEMENTS = (
        E("application_id", "applicationId", str, is_array=True),
    )

    application_id: "List[str]" = Field(type=list, required=False, mutable=False)


class UserOutgoingCallingPlanAuthorizationCodeGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanAuthorizationCodeGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)


class UserOutgoingCallingPlanSustainedAuthorizationCodeGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanAuthorizationCodeGetRequest()``.


    Attributes:
        code: code
    """

    _ELEMENTS = (
        E("code", "code", str),
    )

    code: str = Field(type=str, required=False, mutable=False)


class UserOutlookIntegrationGetResponse(OCIResponse):
    """
    Response to ``UserOutlookIntegrationGetRequest()``.


    Attributes:
        is_active: isActive
        contact_retrieval_selection: contactRetrievalSelection
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("contact_retrieval_selection", "contactRetrievalSelection", str, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    contact_retrieval_selection: str = Field(type=str, required=True, mutable=False)


class UserPasswordInfoGetResponse(OCIResponse):
    """
    Response to ``UserPasswordInfoGetRequest()``.


    Attributes:
        is_login_disabled: isLoginDisabled
        expiration_days: expirationDays
        does_not_expire: doesNotExpire
    """

    _ELEMENTS = (
        E("is_login_disabled", "isLoginDisabled", bool, is_required=True),
        E("expiration_days", "expirationDays", int),
        E("does_not_expire", "doesNotExpire", bool),
    )

    is_login_disabled: bool = Field(type=bool, required=True, mutable=False)
    expiration_days: int = Field(type=int, required=False, mutable=False)
    does_not_expire: bool = Field(type=bool, required=False, mutable=False)


class UserPersonalAssistantExclusionNumberGetListResponse(OCIResponse):
    """
    Response to the ``UserPersonalAssistantExclusionNumberGetListRequest()``.

    Contains a table with column headings: "Number", "Description".

    Attributes:
        exclusion_number_table: exclusionNumberTable
    """

    _ELEMENTS = (
        E(
            "exclusion_number_table", "exclusionNumberTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    exclusion_number_table: "list" = Field(type=list, required=True, mutable=False)


class UserPersonalAssistantExclusionNumberGetResponse(OCIResponse):
    """
    Response to the ``UserPersonalAssistantExclusionNumberGetRequest()``

    Attributes:
        description: description
    """

    _ELEMENTS = (
        E("description", "description", str),
    )

    description: str = Field(type=str, required=False, mutable=False)


class UserPersonalAssistantGetResponse(OCIResponse):
    """
    Response to the ``UserPersonalAssistantGetRequest()``.

    The response contains the user Personal Assistant information".

    Attributes:
        presence: presence
        enable_transfer_to_attendant: enableTransferToAttendant
        attendant_number: attendantNumber
        enable_ring_splash: enableRingSplash
        enable_expiration_time: enableExpirationTime
        expiration_time: expirationTime
    """

    _ELEMENTS = (
        E("presence", "presence", str, is_required=True),
        E(
            "enable_transfer_to_attendant", "enableTransferToAttendant", bool,
            is_required=True,
        ),
        E("attendant_number", "attendantNumber", str),
        E("enable_ring_splash", "enableRingSplash", bool, is_required=True),
        E("enable_expiration_time", "enableExpirationTime", bool, is_required=True),
        E("expiration_time", "expirationTime", str),
    )

    presence: str = Field(type=str, required=True, mutable=False)
    enable_transfer_to_attendant: bool = Field(type=bool, required=True, mutable=False)
    attendant_number: str = Field(type=str, required=False, mutable=False)
    enable_ring_splash: bool = Field(type=bool, required=True, mutable=False)
    enable_expiration_time: bool = Field(type=bool, required=True, mutable=False)
    expiration_time: str = Field(type=str, required=False, mutable=False)


class UserPersonalPhoneListGetPagedSortedListResponse(OCIResponse):
    """
    Response to the ``UserPersonalPhoneListGetPagedSortedListRequest()``.

    The response contains a user's personal phone list.  The response contains a table
    with column headings: "Name" and "Phone Number".

    Attributes:
        total_number_of_rows: totalNumberOfRows
        personal_phone_list_table: personalPhoneListTable
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "personal_phone_list_table", "personalPhoneListTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    personal_phone_list_table: "list" = Field(type=list, required=True, mutable=False)


class UserPhoneDirectoryGetListResponse(OCIResponse):
    """
    Response to ``UserPhoneDirectoryGetListRequest()``.

    The "My Room Room Id" and "My Room Bridge Id" are only populated for users assigned
    the "Collaborate-Audio" service.  Contains a table with a row for each phone number
    and column headings : "Name", "Number", "Extension", "Mobile", "Email Address",
    "Department", "First Name", "Last Name", "User Id", "Title", "IMP Id", "My Room Room
    Id", "My Room Bridge Id".

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class UserPhoneDirectoryGetPagedListResponse(OCIResponse):
    """
    Response to ``UserPhoneDirectoryGetPagedListRequest21()``.

    Returns the number of entries that would be returned if the response Was not page size
    restricted.  The "My Room Room Id" and "My Room Bridge Id" are only populated for
    users assigned the "Collaborate-Audio" service.  Contains a table with a row for each
    user and column headings: "User Id", "First Name", "Last Name", "First Name Unicode",
    "Last Name Unicode", "Hiragana First Name", "Hiragana Last Name", "Title", "Phone
    Number", "Extension", "Mobile", "Pager", "Email Address", "Yahoo Id", "Department",
    "Group Id", "Location", "Address Line 1", "Address Line 2", "City", "State", "Zip",
    "Country", "IMP Id", "Location Code", "My Room Room Id", "My Room Bridge Id".

    The response entries are sorted by "Last Name Unicode" first and "First Name unicode"
    secondarily.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    directory_table: "list" = Field(type=list, required=True, mutable=False)


class UserPhoneDirectoryGetPagedSortedListResponse(OCIResponse):
    """
    Response to ``UserPhoneDirectoryGetPagedSortedListRequest()``.

    Returns the number of entries that would be returned if the response Was not page size
    restricted.  The "My Room Room Id" and "My Room Bridge Id" are only populated for
    users assigned the "Collaborate-Audio" service.  Contains a table with a row for each
    user and column headings: "User Id", "CLID First Name", "CLID Last Name", "First
    Name", "Last Name", "Hiragana First Name", "Hiragana Last Name", "Title", "Phone
    Number", "Extension", "Mobile", "Pager", "Email Address", "Yahoo Id", "Department",
    "Group Id", "Location", "Address Line 1", "Address Line 2", "City", "State", "Zip",
    "Country", "IMP Id", "Location Code", "My Room Room Id", "My Room Bridge Id".

    Attributes:
        total_number_of_rows: totalNumberOfRows
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    directory_table: "list" = Field(type=list, required=True, mutable=False)


class UserPhoneDirectoryGetSearchedListResponse(OCIResponse):
    """
    Response to ``UserPhoneDirectoryGetSearchedListRequest()``.

    The "My Room Room Id" and "My Room Bridge Id" are only populated for users assigned
    the "Collaborate-Audio" service.  Contains a table with a row for each phone number
    and column headings : "Name", "Number", "Extension", "Mobile", "Email Address",
    "Department", "Hiragana Name", "Group Id", "Yahoo Id", "User Id", "IMP Id", "First
    Name", "Last Name", "My Room Room Id", "My Room Bridge Id".

    Attributes:
        directory_table: directoryTable
    """

    _ELEMENTS = (
        E(
            "directory_table", "directoryTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    directory_table: "list" = Field(type=list, required=True, mutable=False)


class UserPhysicalLocationGetResponse(OCIResponse):
    """
    Response to ``UserPhysicalLocationGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserPolycomPhoneServicesGetPrimaryEndpointListResponse(OCIResponse):
    """
    Response to ``UserPolycomPhoneServicesGetPrimaryEndpointListRequest()``.

    The column headings for the deviceUserTable are: "Device Level", "Device Name",
    "Line/Port", "Private Identity". The Private Identity column is empty is AS mode.

    Attributes:
        device_user_table: deviceUserTable
    """

    _ELEMENTS = (
        E(
            "device_user_table", "deviceUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    device_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserPolycomPhoneServicesGetResponse(OCIResponse):
    """
    Response to ``UserPolycomPhoneServicesGetRequest()``.


    Attributes:
        integrate_phone_directory_with_broad_works: integratePhoneDirectoryWithBroadWorks
        include_user_personal_phone_list_in_directory:
            includeUserPersonalPhoneListInDirectory
        include_group_custom_contact_directory_in_directory:
            includeGroupCustomContactDirectoryInDirectory
        group_custom_contact_directory: groupCustomContactDirectory
    """

    _ELEMENTS = (
        E(
            "integrate_phone_directory_with_broad_works",
            "integratePhoneDirectoryWithBroadWorks", bool, is_required=True,
        ),
        E(
            "include_user_personal_phone_list_in_directory",
            "includeUserPersonalPhoneListInDirectory", bool, is_required=True,
        ),
        E(
            "include_group_custom_contact_directory_in_directory",
            "includeGroupCustomContactDirectoryInDirectory", bool, is_required=True,
        ),
        E("group_custom_contact_directory", "groupCustomContactDirectory", str),
    )

    integrate_phone_directory_with_broad_works: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_user_personal_phone_list_in_directory: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_group_custom_contact_directory_in_directory: bool = Field(
        type=bool, required=True, mutable=False,
    )
    group_custom_contact_directory: str = Field(type=str, required=False, mutable=False)


class UserPortalPasscodeGetInfoResponse(OCIResponse):
    """
    Response to ``UserPortalPasscodeGetInfoRequest()``.


    Attributes:
        is_login_disabled: isLoginDisabled
        expiration_days: expirationDays
        does_not_expire: doesNotExpire
        passcode: passcode
    """

    _ELEMENTS = (
        E("is_login_disabled", "isLoginDisabled", bool, is_required=True),
        E("expiration_days", "expirationDays", int),
        E("does_not_expire", "doesNotExpire", bool),
        E("passcode", "passcode", str, is_required=True),
    )

    is_login_disabled: bool = Field(type=bool, required=True, mutable=False)
    expiration_days: int = Field(type=int, required=False, mutable=False)
    does_not_expire: bool = Field(type=bool, required=False, mutable=False)
    passcode: str = Field(type=str, required=True, mutable=False)


class UserPreAlertingAnnouncementGetResponse(OCIResponse):
    """
    Response to a ``UserPreAlertingAnnouncementGetRequest()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Blacklisted",
    and "Calls From".

    Attributes:
        is_active: isActive
        audio_selection: audioSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        video_file_url: videoFileUrl
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("video_file_url", "videoFileUrl", str),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserPrepaidGetResponse(OCIResponse):
    """
    Response to ``UserPrepaidGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserPrimaryEndpointAdvancedSettingGetResponse(OCIResponse):
    """
    Response to the ``UserPrimaryEndpointAdvancedSettingGetRequest()``.


    Attributes:
        allow_origination: allowOrigination
        allow_termination: allowTermination
    """

    _ELEMENTS = (
        E("allow_origination", "allowOrigination", bool, is_required=True),
        E("allow_termination", "allowTermination", bool, is_required=True),
    )

    allow_origination: bool = Field(type=bool, required=True, mutable=False)
    allow_termination: bool = Field(type=bool, required=True, mutable=False)


class UserPriorityAlertGetCriteriaListResponse(OCIResponse):
    """
    Response to the ``UserPriorityAlertGetCriteriaListRequest()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Calls From", "Blacklisted", "Holiday Schedule", "Calls To Type", "Calls To
    Number" and "Calls To Extension". The possible values for the "Calls To Type" column
    are the following or a combination of them separated by comma: - Primary - Alternate X
    (where x is a number between 1 and 10) - Mobility The possible values for the "Calls
    To Number" column are the following or a combination of them separated by comma: - The
    value of the phone number for the corresponding Calls To Type, when the number is
    available.  i.e.  Alternate 1 may have extension, but no number.  - When no number is
    available a blank space is provided instead.  The possible values for the "Calls To
    Extension" column are the following or a combination of them separated by comma: - The
    value of the extension for the corresponding Calls To Type, when the extension is
    available.  i.e.  Primary may have number, but no extension.  - For Mobility Calls To
    Type, this is always blank.  - When no extension is available a blank space is
    provided instead.

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserPrivacyGetAvailableMonitorsUserListResponse(OCIResponse):
    """
    Response to the ``UserPrivacyGetAvailableMonitorsUserListRequest()``.

    Returns a 10 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Phone Number", "Extension",
    "Department", "Email Address", "IMP Id".

    Attributes:
        available_monitors_table: availableMonitorsTable
    """

    _ELEMENTS = (
        E(
            "available_monitors_table", "availableMonitorsTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    available_monitors_table: "list" = Field(type=list, required=True, mutable=False)


class UserPrivacyGetResponse(OCIResponse):
    """
    Response to ``UserPrivacyGetRequest()``.


    Attributes:
        enable_directory_privacy: enableDirectoryPrivacy
    """

    _ELEMENTS = (
        E("enable_directory_privacy", "enableDirectoryPrivacy", bool, is_required=True),
    )

    enable_directory_privacy: bool = Field(type=bool, required=True, mutable=False)


class UserPrivacyGetResponse13mp17(OCIResponse):
    """
    Response to ``UserPrivacyGetRequest13mp17()``.

    The permittedMonitorUserIdTable contains the members of the enterprise or group
    allowed to monitor the phone status of the user specified in the request.  Members of
    this table are allowed to monitor the user even if enablePhoneStatusPrivacy is set to
    true.  The table contains column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Phone Number", "Extension",
    "Department", "Email Address", "IMP Id".

    Attributes:
        enable_directory_privacy: enableDirectoryPrivacy
        enable_auto_attendant_extension_dialing_privacy:
            enableAutoAttendantExtensionDialingPrivacy
        enable_auto_attendant_name_dialing_privacy: enableAutoAttendantNameDialingPrivacy
        enable_phone_status_privacy: enablePhoneStatusPrivacy
        permitted_monitor_user_id_table: permittedMonitorUserIdTable
    """

    _ELEMENTS = (
        E("enable_directory_privacy", "enableDirectoryPrivacy", bool, is_required=True),
        E(
            "enable_auto_attendant_extension_dialing_privacy",
            "enableAutoAttendantExtensionDialingPrivacy", bool, is_required=True,
        ),
        E(
            "enable_auto_attendant_name_dialing_privacy",
            "enableAutoAttendantNameDialingPrivacy", bool, is_required=True,
        ),
        E("enable_phone_status_privacy", "enablePhoneStatusPrivacy", bool, is_required=True),
        E(
            "permitted_monitor_user_id_table", "permittedMonitorUserIdTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    enable_directory_privacy: bool = Field(type=bool, required=True, mutable=False)
    enable_auto_attendant_extension_dialing_privacy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_auto_attendant_name_dialing_privacy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_phone_status_privacy: bool = Field(type=bool, required=True, mutable=False)
    permitted_monitor_user_id_table: "list" = Field(type=list, required=True, mutable=False)


class UserPushToTalkGetAvailableUserListResponse(OCIResponse):
    """
    Response to the ``UserPushToTalkGetAvailableUserListRequest()``.

    Returns a 10 column table with column headings: "User Id", "Last Name", "First Name",
    "Hiragana Last Name", "Hiragana First Name", "Phone Number", "Extension",
    "Department", "Email Address", "IMP Id".

    Attributes:
        user_table: userTable
    """

    _ELEMENTS = (
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserPushToTalkGetResponse(OCIResponse):
    """
    Response to ``UserPushToTalkGetRequest()``.

    It returns the service settings and a 9 column selected user table with the following
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Phone Number", "Extension", "Department", "Email Address", "IMP Id".

    Attributes:
        allow_auto_answer: allowAutoAnswer
        outgoing_connection_selection: outgoingConnectionSelection
        access_list_selection: accessListSelection
        selected_user_table: selectedUserTable
    """

    _ELEMENTS = (
        E("allow_auto_answer", "allowAutoAnswer", bool, is_required=True),
        E(
            "outgoing_connection_selection", "outgoingConnectionSelection", str,
            is_required=True,
        ),
        E("access_list_selection", "accessListSelection", str, is_required=True),
        E(
            "selected_user_table", "selectedUserTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    allow_auto_answer: bool = Field(type=bool, required=True, mutable=False)
    outgoing_connection_selection: str = Field(type=str, required=True, mutable=False)
    access_list_selection: str = Field(type=str, required=True, mutable=False)
    selected_user_table: "list" = Field(type=list, required=True, mutable=False)


class UserRemoteOfficeGetResponse(OCIResponse):
    """
    Response to ``UserRemoteOfficeGetRequest()``.


    Attributes:
        is_active: isActive
        remote_office_phone_number: remoteOfficePhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("remote_office_phone_number", "remoteOfficePhoneNumber", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    remote_office_phone_number: str = Field(type=str, required=False, mutable=False)


class UserRouteListGetResponse(OCIResponse):
    """
    Response to ``UserRouteListGetRequest()``.

    Contains the route list setting and a list of assigned number ranges.  The column
    headings for assignedNumberRangeTable are "Number Range Start", "Number Range End" and
    "Is Active".

    Attributes:
        treat_originations_and_pbx_redirections_as_screened:
            treatOriginationsAndPBXRedirectionsAsScreened
        use_route_list_identity_for_non_emergency_calls:
            useRouteListIdentityForNonEmergencyCalls
        use_route_list_identity_for_emergency_calls: useRouteListIdentityForEmergencyCalls
        assigned_number_range_table: assignedNumberRangeTable
    """

    _ELEMENTS = (
        E(
            "treat_originations_and_pbx_redirections_as_screened",
            "treatOriginationsAndPBXRedirectionsAsScreened", bool, is_required=True,
        ),
        E(
            "use_route_list_identity_for_non_emergency_calls",
            "useRouteListIdentityForNonEmergencyCalls", bool, is_required=True,
        ),
        E(
            "use_route_list_identity_for_emergency_calls",
            "useRouteListIdentityForEmergencyCalls", bool, is_required=True,
        ),
        E(
            "assigned_number_range_table", "assignedNumberRangeTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    treat_originations_and_pbx_redirections_as_screened: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_route_list_identity_for_non_emergency_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_route_list_identity_for_emergency_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    assigned_number_range_table: "list" = Field(type=list, required=True, mutable=False)


class UserRoutePointCallDispositionCodeGetAvailableListResponse(OCIResponse):
    """
    Response to the ``UserRoutePointCallDispositionCodeGetAvailableListRequest()``.

    This list may include Group/Enterprise level codes in addition to the Route Point
    level codes, depending on the call center disposition codes settings.  Only active
    codes are included in the list.  Contains a table with column headings: "Code",
    "Description" and "Level". Level column can be any of the values in the data type
    CallDispositionCodeLevel.

    Attributes:
        disposition_codes_table: dispositionCodesTable
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table", "dispositionCodesTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    disposition_codes_table: "list" = Field(type=list, required=True, mutable=False)


class UserRoutePointSupervisorGetListResponse(OCIResponse):
    """
    Response to the ``UserRoutePointSupervisorGetListRequest()``.

    Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana
    Last Name", "Hiragana First Name", "Phone Number", "Extension", "Department", "Email
    Address", "Location Code".

    Attributes:
        supervisor_table: supervisorTable
    """

    _ELEMENTS = (
        E(
            "supervisor_table", "supervisorTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    supervisor_table: "list" = Field(type=list, required=True, mutable=False)


class UserSMDIMessageDeskGetResponse(OCIResponse):
    """
    Response to the ``UserSMDIMessageDeskGetRequest()``.


    Attributes:
        is_active: isActive
        message_desk_number: messageDeskNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("message_desk_number", "messageDeskNumber", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    message_desk_number: str = Field(type=str, required=False, mutable=False)


class UserSMDIMessageDeskGetServerListResponse(OCIResponse):
    """
    Response to the ``UserSMDIMessageDeskGetServerListRequest()``.

    The SMDI Server table column headings are: "Device Name", "Net Address", "Port".

    Attributes:
        smdi_server_table: smdiServerTable
    """

    _ELEMENTS = (
        E(
            "smdi_server_table", "smdiServerTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    smdi_server_table: "list" = Field(type=list, required=True, mutable=False)


class UserScheduleGetEventListResponse(OCIResponse):
    """
    Response to ``UserScheduleGetEventListRequest()``.

    The response contains a list of events.

    Attributes:
        event_name: eventName
    """

    _ELEMENTS = (
        E("event_name", "eventName", str, is_array=True),
    )

    event_name: "List[str]" = Field(type=list, required=False, mutable=False)


class UserScheduleGetListResponse(OCIResponse):
    """
    Response to ``UserScheduleGetListRequest()``.

    The response contains a list of system schedules.

    Attributes:
        schedule_name: scheduleName
        schedule_type: scheduleType
        schedule_level: scheduleLevel
    """

    _ELEMENTS = (
        E("schedule_name", "scheduleName", str, is_array=True),
        E("schedule_type", "scheduleType", str, is_array=True),
        E("schedule_level", "scheduleLevel", str, is_array=True),
    )

    schedule_name: "List[str]" = Field(type=list, required=False, mutable=False)
    schedule_type: "List[str]" = Field(type=list, required=False, mutable=False)
    schedule_level: "List[str]" = Field(type=list, required=False, mutable=False)


class UserSecurityClassificationGetResponse(OCIResponse):
    """
    Response to the ``UserSecurityClassificationGetRequest()``.


    Attributes:
        security_classification: securityClassification
    """

    _ELEMENTS = (
        E("security_classification", "securityClassification", str),
    )

    security_classification: str = Field(type=str, required=False, mutable=False)


class UserSelectiveCallAcceptanceGetCriteriaListResponse(OCIResponse):
    """
    Response to the ``UserSelectiveCallAcceptanceGetCriteriaListRequest()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Calls From", "Blacklisted", "Holiday Schedule", "Calls To Type", "Calls To
    Number" and "Calls To Extension". The possible values for the "Calls To Type" column
    are the following or a combination of them separated by comma: - Primary - Alternate X
    (where x is a number between 1 and 10) - Mobility The possible values for the "Calls
    To Number" column are the following or a combination of them separated by comma: - The
    value of the phone number for the corresponding Calls To Type, when the number is
    available.  i.e.  Alternate 1 may have extension, but no number.  - When no number is
    available a blank space is provided instead.  The possible values for the "Calls To
    Extension" column are the following or a combination of them separated by comma: - The
    value of the extension for the corresponding Calls To Type, when the extension is
    available.  i.e.  Primary may have number, but no extension.  - For Mobility Calls To
    Type, this is always blank.  - When no extension is available a blank space is
    provided instead.

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserSelectiveCallRejectionGetCriteriaListResponse(OCIResponse):
    """
    Response to the ``UserSelectiveCallRejectionGetCriteriaListRequest()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Calls From", "Blacklisted", "Holiday Schedule", "Calls To Type", "Calls To
    Number" and "Calls To Extension". The possible values for the "Calls To Type" column
    are the following or a combination of them separated by comma: - Primary - Alternate X
    (where x is a number between 1 and 10) - Mobility The possible values for the "Calls
    To Number" column are the following or a combination of them separated by comma: - The
    value of the phone number for the corresponding Calls To Type, when the number is
    available.  i.e.  Alternate 1 may have extension, but no number.  - When no number is
    available a blank space is provided instead.  The possible values for the "Calls To
    Extension" column are the following or a combination of them separated by comma: - The
    value of the extension for the corresponding Calls To Type, when the extension is
    available.  i.e.  Primary may have number, but no extension.  - For Mobility Calls To
    Type, this is always blank.  - When no extension is available a blank space is
    provided instead.

    Attributes:
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserSeriesCompletionGetResponse(OCIResponse):
    """
    Response to the ``UserSeriesCompletionGetRequest()``.

    Identifies which Series Completion group the user belongs to and the list of users in
    the group.  Contains a table with column headings: "User Id", "Last Name", "First
    Name", "Hiragana Last Name", "Hiragana First Name", "Department", "Phone Number",
    "Extension", "Email Address".

    Attributes:
        name: name
        user_table: userTable
    """

    _ELEMENTS = (
        E("name", "name", str),
        E("user_table", "userTable", list, is_complex=True, is_required=True, is_table=True),
    )

    name: str = Field(type=str, required=False, mutable=False)
    user_table: "list" = Field(type=list, required=True, mutable=False)


class UserServiceGetAssignmentListResponse(OCIResponse):
    """
    Response to ``UserServiceGetAssignmentListRequest()``.

    Contains two tables, one for the service packs, and one for the user services.  The
    user table has the column headings: "Service Name", "Assigned", The service pack
    table's column headings are: "Service Pack Name", "Assigned", "Description". The
    "Assigned" column has either a true or false value

    Attributes:
        service_packs_assignment_table: servicePacksAssignmentTable
        user_services_assignment_table: userServicesAssignmentTable
    """

    _ELEMENTS = (
        E(
            "service_packs_assignment_table", "servicePacksAssignmentTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E(
            "user_services_assignment_table", "userServicesAssignmentTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    service_packs_assignment_table: "list" = Field(type=list, required=True, mutable=False)
    user_services_assignment_table: "list" = Field(type=list, required=True, mutable=False)


class UserServiceIsAssignedResponse(OCIResponse):
    """
    Returns true if the UserService or service pack is assigned, otherwise false.


    Attributes:
        is_assigned: isAssigned
    """

    _ELEMENTS = (
        E("is_assigned", "isAssigned", bool, is_required=True),
    )

    is_assigned: bool = Field(type=bool, required=True, mutable=False)


class UserServiceScriptsUserGetLogResponse(OCIResponse):
    """
    Response to ``UserServiceScriptsUserGetLogRequest()``.


    Attributes:
        log_content: logContent
    """

    _ELEMENTS = (
        E("log_content", "logContent", str),
    )

    log_content: str = Field(type=str, required=False, mutable=False)


class UserServiceScriptsUserGetResponse(OCIResponse):
    """
    Response to ``UserServiceScriptsUserGetRequest()``.


    Attributes:
        is_active: isActive
        script_name: scriptName
        script_content: scriptContent
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("script_name", "scriptName", str),
        E("script_content", "scriptContent", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    script_name: str = Field(type=str, required=False, mutable=False)
    script_content: str = Field(type=str, required=False, mutable=False)


class UserShInterfaceGetPublicIdDataResponse(OCIResponse):
    """
    Response to the ``UserShInterfaceGetPublicIdDataRequest()``.

    The response contains the Sh non-transparent data for the specified Public User
    Identity.  The data also includes a userId, userType, and endpointType.

    Attributes:
        user_id: userId
        user_type: userType
        endpoint_type: endpointType
        scscf_name: SCSCFName
        ims_user_state: IMSUserState
    """

    _ELEMENTS = (
        E("user_id", "userId", str, is_required=True),
        E("user_type", "userType", str, is_required=True),
        E("endpoint_type", "endpointType", str, is_required=True),
        E("scscf_name", "SCSCFName", str),
        E("ims_user_state", "IMSUserState", str, is_required=True),
    )

    user_id: str = Field(type=str, required=True, mutable=False)
    user_type: str = Field(type=str, required=True, mutable=False)
    endpoint_type: str = Field(type=str, required=True, mutable=False)
    scscf_name: str = Field(type=str, required=False, mutable=False)
    ims_user_state: str = Field(type=str, required=True, mutable=False)


class UserSharedCallAppearanceGetEndpointResponse(OCIResponse):
    """
    Response to the ``UserSharedCallAppearanceGetEndpointRequest()``.


    Attributes:
        is_active: isActive
        allow_origination: allowOrigination
        allow_termination: allowTermination
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("allow_origination", "allowOrigination", bool, is_required=True),
        E("allow_termination", "allowTermination", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    allow_origination: bool = Field(type=bool, required=True, mutable=False)
    allow_termination: bool = Field(type=bool, required=True, mutable=False)


class UserSharedCallAppearanceGetResponse14(OCIResponse):
    """
    Response to the ``UserSharedCallAppearanceGetRequest14()``.

    The endpointTable contains columns: "Device Level", "Device Name", "Device Type",
    "Line/Port", "SIP Contact". The "Device Level" column contains one of the
    AccessDeviceLevel enumerated constants.

    Replaced By: ``UserSharedCallAppearanceGetResponse14sp2()``

    Attributes:
        alert_all_appearances_for_click_to_dial_calls:
            alertAllAppearancesForClickToDialCalls
        max_appearances: maxAppearances
        enable_multiple_call_arrangement: enableMultipleCallArrangement
        multiple_call_arrangement_is_active: multipleCallArrangementIsActive
        endpoint_table: endpointTable
        allow_bridging_between_locations: allowBridgingBetweenLocations
        bridge_warning_tone: bridgeWarningTone
    """

    _ELEMENTS = (
        E(
            "alert_all_appearances_for_click_to_dial_calls",
            "alertAllAppearancesForClickToDialCalls", bool, is_required=True,
        ),
        E("max_appearances", "maxAppearances", int, is_required=True),
        E(
            "enable_multiple_call_arrangement", "enableMultipleCallArrangement", bool,
            is_required=True,
        ),
        E(
            "multiple_call_arrangement_is_active", "multipleCallArrangementIsActive",
            bool, is_required=True,
        ),
        E(
            "endpoint_table", "endpointTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_bridging_between_locations", "allowBridgingBetweenLocations", bool,
            is_required=True,
        ),
        E("bridge_warning_tone", "bridgeWarningTone", str, is_required=True),
    )

    alert_all_appearances_for_click_to_dial_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_appearances: int = Field(type=int, required=True, mutable=False)
    enable_multiple_call_arrangement: bool = Field(type=bool, required=True, mutable=False)
    multiple_call_arrangement_is_active: bool = Field(type=bool, required=True, mutable=False)
    endpoint_table: "list" = Field(type=list, required=True, mutable=False)
    allow_bridging_between_locations: bool = Field(type=bool, required=True, mutable=False)
    bridge_warning_tone: str = Field(type=str, required=True, mutable=False)


class UserSharedCallAppearanceGetResponse14sp2(OCIResponse):
    """
    Response to the ``UserSharedCallAppearanceGetRequest14sp2()``.

    The endpointTable contains columns: "Device Level", "Device Name", "Device Type",
    "Line/Port", "SIP Contact". The "Device Level" column contains one of the
    AccessDeviceLevel enumerated constants.

    Attributes:
        alert_all_appearances_for_click_to_dial_calls:
            alertAllAppearancesForClickToDialCalls
        max_appearances: maxAppearances
        allow_sca_call_retrieve: allowSCACallRetrieve
        enable_multiple_call_arrangement: enableMultipleCallArrangement
        multiple_call_arrangement_is_active: multipleCallArrangementIsActive
        endpoint_table: endpointTable
        allow_bridging_between_locations: allowBridgingBetweenLocations
        bridge_warning_tone: bridgeWarningTone
    """

    _ELEMENTS = (
        E(
            "alert_all_appearances_for_click_to_dial_calls",
            "alertAllAppearancesForClickToDialCalls", bool, is_required=True,
        ),
        E("max_appearances", "maxAppearances", int, is_required=True),
        E("allow_sca_call_retrieve", "allowSCACallRetrieve", bool, is_required=True),
        E(
            "enable_multiple_call_arrangement", "enableMultipleCallArrangement", bool,
            is_required=True,
        ),
        E(
            "multiple_call_arrangement_is_active", "multipleCallArrangementIsActive",
            bool, is_required=True,
        ),
        E(
            "endpoint_table", "endpointTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_bridging_between_locations", "allowBridgingBetweenLocations", bool,
            is_required=True,
        ),
        E("bridge_warning_tone", "bridgeWarningTone", str, is_required=True),
    )

    alert_all_appearances_for_click_to_dial_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_appearances: int = Field(type=int, required=True, mutable=False)
    allow_sca_call_retrieve: bool = Field(type=bool, required=True, mutable=False)
    enable_multiple_call_arrangement: bool = Field(type=bool, required=True, mutable=False)
    multiple_call_arrangement_is_active: bool = Field(type=bool, required=True, mutable=False)
    endpoint_table: "list" = Field(type=list, required=True, mutable=False)
    allow_bridging_between_locations: bool = Field(type=bool, required=True, mutable=False)
    bridge_warning_tone: str = Field(type=str, required=True, mutable=False)


class UserSharedCallAppearanceGetResponse16sp2(OCIResponse):
    """
    Response to the ``UserSharedCallAppearanceGetRequest16sp2()``.

    The endpointTable contains columns: "Device Level", "Device Name", "Device Type",
    "Line/Port", "SIP Contact", "Port Number", "Device Support Visual Device Management".
    The "Device Level" column contains one of the AccessDeviceLevel enumerated constants.
    Port numbers are only used by devices with static line ordering.  The following
    elements are only used in AS data mode: enableCallParkNotification

    Attributes:
        alert_all_appearances_for_click_to_dial_calls:
            alertAllAppearancesForClickToDialCalls
        alert_all_appearances_for_group_paging_calls:
            alertAllAppearancesForGroupPagingCalls
        max_appearances: maxAppearances
        allow_sca_call_retrieve: allowSCACallRetrieve
        enable_multiple_call_arrangement: enableMultipleCallArrangement
        multiple_call_arrangement_is_active: multipleCallArrangementIsActive
        endpoint_table: endpointTable
        allow_bridging_between_locations: allowBridgingBetweenLocations
        bridge_warning_tone: bridgeWarningTone
        enable_call_park_notification: enableCallParkNotification
    """

    _ELEMENTS = (
        E(
            "alert_all_appearances_for_click_to_dial_calls",
            "alertAllAppearancesForClickToDialCalls", bool, is_required=True,
        ),
        E(
            "alert_all_appearances_for_group_paging_calls",
            "alertAllAppearancesForGroupPagingCalls", bool, is_required=True,
        ),
        E("max_appearances", "maxAppearances", int, is_required=True),
        E("allow_sca_call_retrieve", "allowSCACallRetrieve", bool, is_required=True),
        E(
            "enable_multiple_call_arrangement", "enableMultipleCallArrangement", bool,
            is_required=True,
        ),
        E(
            "multiple_call_arrangement_is_active", "multipleCallArrangementIsActive",
            bool, is_required=True,
        ),
        E(
            "endpoint_table", "endpointTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_bridging_between_locations", "allowBridgingBetweenLocations", bool,
            is_required=True,
        ),
        E("bridge_warning_tone", "bridgeWarningTone", str, is_required=True),
        E(
            "enable_call_park_notification", "enableCallParkNotification", bool,
            is_required=True,
        ),
    )

    alert_all_appearances_for_click_to_dial_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    alert_all_appearances_for_group_paging_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    max_appearances: int = Field(type=int, required=True, mutable=False)
    allow_sca_call_retrieve: bool = Field(type=bool, required=True, mutable=False)
    enable_multiple_call_arrangement: bool = Field(type=bool, required=True, mutable=False)
    multiple_call_arrangement_is_active: bool = Field(type=bool, required=True, mutable=False)
    endpoint_table: "list" = Field(type=list, required=True, mutable=False)
    allow_bridging_between_locations: bool = Field(type=bool, required=True, mutable=False)
    bridge_warning_tone: str = Field(type=str, required=True, mutable=False)
    enable_call_park_notification: bool = Field(type=bool, required=True, mutable=False)


class UserSimultaneousRingFamilyGetPhoneNumberResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingFamilyGetPhoneNumberRequest()``.


    Attributes:
        answer_confirmation_required: answerConfirmationRequired
    """

    _ELEMENTS = (
        E(
            "answer_confirmation_required", "answerConfirmationRequired", bool,
            is_required=True,
        ),
    )

    answer_confirmation_required: bool = Field(type=bool, required=True, mutable=False)


class UserSimultaneousRingFamilyGetResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingFamilyGetRequest()``.

    Replaced By: ``UserSimultaneousRingFamilyGetResponse14sp4()``

    Attributes:
        is_active: isActive
        incoming_calls: incomingCalls
        sim_ring_phone_number: simRingPhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("incoming_calls", "incomingCalls", str, is_required=True),
        E("sim_ring_phone_number", "simRingPhoneNumber", str, is_array=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    incoming_calls: str = Field(type=str, required=True, mutable=False)
    sim_ring_phone_number: "List[str]" = Field(type=list, required=False, mutable=False)


class UserSimultaneousRingFamilyGetResponse14sp4(OCIResponse):
    """
    Response to the ``UserSimultaneousRingFamilyGetRequest14sp4()``.

    Contains a table with column headings: "Phone Number", "Answer Confirmation Required".

    Attributes:
        is_active: isActive
        incoming_calls: incomingCalls
        phone_number_table: phoneNumberTable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("incoming_calls", "incomingCalls", str, is_required=True),
        E(
            "phone_number_table", "phoneNumberTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    incoming_calls: str = Field(type=str, required=True, mutable=False)
    phone_number_table: "list" = Field(type=list, required=True, mutable=False)


class UserSimultaneousRingPersonalGetPhoneNumberResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingPersonalGetPhoneNumberRequest()``.


    Attributes:
        answer_confirmation_required: answerConfirmationRequired
    """

    _ELEMENTS = (
        E(
            "answer_confirmation_required", "answerConfirmationRequired", bool,
            is_required=True,
        ),
    )

    answer_confirmation_required: bool = Field(type=bool, required=True, mutable=False)


class UserSimultaneousRingPersonalGetResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingPersonalGetRequest()``.

    Replaced By: ``UserSimultaneousRingPersonalGetResponse14sp4()``

    Attributes:
        is_active: isActive
        incoming_calls: incomingCalls
        sim_ring_phone_number: simRingPhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("incoming_calls", "incomingCalls", str, is_required=True),
        E("sim_ring_phone_number", "simRingPhoneNumber", str, is_array=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    incoming_calls: str = Field(type=str, required=True, mutable=False)
    sim_ring_phone_number: "List[str]" = Field(type=list, required=False, mutable=False)


class UserSimultaneousRingPersonalGetResponse14sp4(OCIResponse):
    """
    Response to the ``UserSimultaneousRingPersonalGetRequest14sp4()``.

    Contains a table with column headings: "Phone Number", "Answer Confirmation Required".

    Attributes:
        is_active: isActive
        incoming_calls: incomingCalls
        phone_number_table: phoneNumberTable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("incoming_calls", "incomingCalls", str, is_required=True),
        E(
            "phone_number_table", "phoneNumberTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    incoming_calls: str = Field(type=str, required=True, mutable=False)
    phone_number_table: "list" = Field(type=list, required=True, mutable=False)


class UserSingleSignOnCreateDeviceTokenResponse(OCIResponse):
    """
    Response to ``UserSingleSignOnCreateDeviceTokenRequest()``.


    Attributes:
        device_token: deviceToken
    """

    _ELEMENTS = (
        E("device_token", "deviceToken", str, is_required=True),
    )

    device_token: str = Field(type=str, required=True, mutable=False)


class UserSpeedDial100GetResponse(OCIResponse):
    """
    Response to the ``UserSpeedDial100GetRequest()``.


    Attributes:
        phone_number: phoneNumber
        description: description
    """

    _ELEMENTS = (
        E("phone_number", "phoneNumber", str, is_required=True),
        E("description", "description", str),
    )

    phone_number: str = Field(type=str, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)


class UserThirdPartyVoiceMailSupportGetResponse13mp16(OCIResponse):
    """
    Response to ``UserThirdPartyVoiceMailSupportGetRequest13mp16()``.

    Replaced by: ``UserThirdPartyVoiceMailSupportGetResponse17()``

    Attributes:
        is_active: isActive
        busy_redirect_to_voice_mail: busyRedirectToVoiceMail
        no_answer_redirect_to_voice_mail: noAnswerRedirectToVoiceMail
        server_selection: serverSelection
        user_server: userServer
        mailbox_id_type: mailboxIdType
        mailbox_url: mailboxURL
        no_answer_number_of_rings: noAnswerNumberOfRings
        always_redirect_to_voice_mail: alwaysRedirectToVoiceMail
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("busy_redirect_to_voice_mail", "busyRedirectToVoiceMail", bool, is_required=True),
        E(
            "no_answer_redirect_to_voice_mail", "noAnswerRedirectToVoiceMail", bool,
            is_required=True,
        ),
        E("server_selection", "serverSelection", str, is_required=True),
        E("user_server", "userServer", str),
        E("mailbox_id_type", "mailboxIdType", str, is_required=True),
        E("mailbox_url", "mailboxURL", str),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E(
            "always_redirect_to_voice_mail", "alwaysRedirectToVoiceMail", bool,
            is_required=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    busy_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    no_answer_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    server_selection: str = Field(type=str, required=True, mutable=False)
    user_server: str = Field(type=str, required=False, mutable=False)
    mailbox_id_type: str = Field(type=str, required=True, mutable=False)
    mailbox_url: str = Field(type=str, required=False, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    always_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)


class UserThirdPartyVoiceMailSupportGetResponse17(OCIResponse):
    """
    Response to ``UserThirdPartyVoiceMailSupportGetRequest17()``.


    Attributes:
        is_active: isActive
        busy_redirect_to_voice_mail: busyRedirectToVoiceMail
        no_answer_redirect_to_voice_mail: noAnswerRedirectToVoiceMail
        server_selection: serverSelection
        user_server: userServer
        mailbox_id_type: mailboxIdType
        mailbox_url: mailboxURL
        no_answer_number_of_rings: noAnswerNumberOfRings
        always_redirect_to_voice_mail: alwaysRedirectToVoiceMail
        out_of_primary_zone_redirect_to_voice_mail: outOfPrimaryZoneRedirectToVoiceMail
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("busy_redirect_to_voice_mail", "busyRedirectToVoiceMail", bool, is_required=True),
        E(
            "no_answer_redirect_to_voice_mail", "noAnswerRedirectToVoiceMail", bool,
            is_required=True,
        ),
        E("server_selection", "serverSelection", str, is_required=True),
        E("user_server", "userServer", str),
        E("mailbox_id_type", "mailboxIdType", str, is_required=True),
        E("mailbox_url", "mailboxURL", str),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E(
            "always_redirect_to_voice_mail", "alwaysRedirectToVoiceMail", bool,
            is_required=True,
        ),
        E(
            "out_of_primary_zone_redirect_to_voice_mail",
            "outOfPrimaryZoneRedirectToVoiceMail", bool, is_required=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    busy_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    no_answer_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    server_selection: str = Field(type=str, required=True, mutable=False)
    user_server: str = Field(type=str, required=False, mutable=False)
    mailbox_id_type: str = Field(type=str, required=True, mutable=False)
    mailbox_url: str = Field(type=str, required=False, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    always_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    out_of_primary_zone_redirect_to_voice_mail: bool = Field(
        type=bool, required=True, mutable=False,
    )


class UserTimeScheduleGetListResponse(OCIResponse):
    """
    Response to the ``UserTimeScheduleGetListRequest()``.

    The column headings are "Time Schedule" and "Type".

    The response contains user's personal and user's group's schedule names.

    Attributes:
        time_schedule_table: timeScheduleTable
    """

    _ELEMENTS = (
        E(
            "time_schedule_table", "timeScheduleTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    time_schedule_table: "list" = Field(type=list, required=True, mutable=False)


class UserVoiceMessagingUserGetAdvancedVoiceManagementResponse(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetAdvancedVoiceManagementRequest()``.

    Replaced By: ``UserVoiceMessagingUserGetAdvancedVoiceManagementResponse14sp3()``

    Attributes:
        mail_server_selection: mailServerSelection
        group_mail_server_email_address: groupMailServerEmailAddress
        group_mail_server_user_id: groupMailServerUserId
        group_mail_server_password: groupMailServerPassword
        use_group_default_mail_server_full_mailbox_limit:
            useGroupDefaultMailServerFullMailboxLimit
        group_mail_server_full_mailbox_limit: groupMailServerFullMailboxLimit
        personal_mail_server_net_address: personalMailServerNetAddress
        personal_mail_server_protocol: personalMailServerProtocol
        personal_mail_server_real_delete_for_imap: personalMailServerRealDeleteForImap
        personal_mail_server_email_address: personalMailServerEmailAddress
        personal_mail_server_user_id: personalMailServerUserId
        personal_mail_server_password: personalMailServerPassword
    """

    _ELEMENTS = (
        E("mail_server_selection", "mailServerSelection", str, is_required=True),
        E("group_mail_server_email_address", "groupMailServerEmailAddress", str),
        E("group_mail_server_user_id", "groupMailServerUserId", str),
        E("group_mail_server_password", "groupMailServerPassword", str),
        E(
            "use_group_default_mail_server_full_mailbox_limit",
            "useGroupDefaultMailServerFullMailboxLimit", bool,
        ),
        E("group_mail_server_full_mailbox_limit", "groupMailServerFullMailboxLimit", int),
        E("personal_mail_server_net_address", "personalMailServerNetAddress", str),
        E(
            "personal_mail_server_protocol", "personalMailServerProtocol", str,
            is_required=True,
        ),
        E(
            "personal_mail_server_real_delete_for_imap",
            "personalMailServerRealDeleteForImap", bool, is_required=True,
        ),
        E("personal_mail_server_email_address", "personalMailServerEmailAddress", str),
        E("personal_mail_server_user_id", "personalMailServerUserId", str),
        E("personal_mail_server_password", "personalMailServerPassword", str),
    )

    mail_server_selection: str = Field(type=str, required=True, mutable=False)
    group_mail_server_email_address: str = Field(type=str, required=False, mutable=False)
    group_mail_server_user_id: str = Field(type=str, required=False, mutable=False)
    group_mail_server_password: str = Field(type=str, required=False, mutable=False)
    use_group_default_mail_server_full_mailbox_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    group_mail_server_full_mailbox_limit: int = Field(type=int, required=False, mutable=False)
    personal_mail_server_net_address: str = Field(type=str, required=False, mutable=False)
    personal_mail_server_protocol: str = Field(type=str, required=True, mutable=False)
    personal_mail_server_real_delete_for_imap: bool = Field(
        type=bool, required=True, mutable=False,
    )
    personal_mail_server_email_address: str = Field(type=str, required=False, mutable=False)
    personal_mail_server_user_id: str = Field(type=str, required=False, mutable=False)
    personal_mail_server_password: str = Field(type=str, required=False, mutable=False)


class UserVoiceMessagingUserGetAdvancedVoiceManagementResponse14sp3(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetAdvancedVoiceManagementRequest14sp3()``.


    Attributes:
        mail_server_selection: mailServerSelection
        group_mail_server_email_address: groupMailServerEmailAddress
        group_mail_server_user_id: groupMailServerUserId
        use_group_default_mail_server_full_mailbox_limit:
            useGroupDefaultMailServerFullMailboxLimit
        group_mail_server_full_mailbox_limit: groupMailServerFullMailboxLimit
        personal_mail_server_net_address: personalMailServerNetAddress
        personal_mail_server_protocol: personalMailServerProtocol
        personal_mail_server_real_delete_for_imap: personalMailServerRealDeleteForImap
        personal_mail_server_email_address: personalMailServerEmailAddress
        personal_mail_server_user_id: personalMailServerUserId
    """

    _ELEMENTS = (
        E("mail_server_selection", "mailServerSelection", str, is_required=True),
        E("group_mail_server_email_address", "groupMailServerEmailAddress", str),
        E("group_mail_server_user_id", "groupMailServerUserId", str),
        E(
            "use_group_default_mail_server_full_mailbox_limit",
            "useGroupDefaultMailServerFullMailboxLimit", bool,
        ),
        E("group_mail_server_full_mailbox_limit", "groupMailServerFullMailboxLimit", int),
        E("personal_mail_server_net_address", "personalMailServerNetAddress", str),
        E(
            "personal_mail_server_protocol", "personalMailServerProtocol", str,
            is_required=True,
        ),
        E(
            "personal_mail_server_real_delete_for_imap",
            "personalMailServerRealDeleteForImap", bool, is_required=True,
        ),
        E("personal_mail_server_email_address", "personalMailServerEmailAddress", str),
        E("personal_mail_server_user_id", "personalMailServerUserId", str),
    )

    mail_server_selection: str = Field(type=str, required=True, mutable=False)
    group_mail_server_email_address: str = Field(type=str, required=False, mutable=False)
    group_mail_server_user_id: str = Field(type=str, required=False, mutable=False)
    use_group_default_mail_server_full_mailbox_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    group_mail_server_full_mailbox_limit: int = Field(type=int, required=False, mutable=False)
    personal_mail_server_net_address: str = Field(type=str, required=False, mutable=False)
    personal_mail_server_protocol: str = Field(type=str, required=True, mutable=False)
    personal_mail_server_real_delete_for_imap: bool = Field(
        type=bool, required=True, mutable=False,
    )
    personal_mail_server_email_address: str = Field(type=str, required=False, mutable=False)
    personal_mail_server_user_id: str = Field(type=str, required=False, mutable=False)


class UserVoiceMessagingUserGetAliasListResponse(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetAliasListRequest()``.


    Attributes:
        phone_number: phoneNumber
    """

    _ELEMENTS = (
        E("phone_number", "phoneNumber", str, is_array=True),
    )

    phone_number: "List[str]" = Field(type=list, required=False, mutable=False)


class UserVoiceMessagingUserGetDistributionListResponse(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetDistributionListRequest()``.


    Attributes:
        description: description
        phone_number: phoneNumber
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("phone_number", "phoneNumber", str, is_array=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    phone_number: "List[str]" = Field(type=list, required=False, mutable=False)


class UserVoiceMessagingUserGetOutgoingSMDIMWIResponse(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetOutgoingSMDIMWIRequest()``.


    Attributes:
        is_active: isActive
        outgoing_smdimwi_phone_number: outgoingSMDIMWIPhoneNumber
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("outgoing_smdimwi_phone_number", "outgoingSMDIMWIPhoneNumber", str, is_array=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    outgoing_smdimwi_phone_number: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )


class UserVoiceMessagingUserGetVoiceManagementResponse13mp8(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetVoiceManagementRequest13mp8()``.

    Replaced by: ``UserVoiceMessagingUserGetVoiceManagementResponse17()``

    Attributes:
        is_active: isActive
        processing: processing
        voice_message_delivery_email_address: voiceMessageDeliveryEmailAddress
        use_phone_message_waiting_indicator: usePhoneMessageWaitingIndicator
        send_voice_message_notify_email: sendVoiceMessageNotifyEmail
        voice_message_notify_email_address: voiceMessageNotifyEmailAddress
        send_carbon_copy_voice_message: sendCarbonCopyVoiceMessage
        voice_message_carbon_copy_email_address: voiceMessageCarbonCopyEmailAddress
        transfer_on_zero_to_phone_number: transferOnZeroToPhoneNumber
        transfer_phone_number: transferPhoneNumber
        always_redirect_to_voice_mail: alwaysRedirectToVoiceMail
        busy_redirect_to_voice_mail: busyRedirectToVoiceMail
        no_answer_redirect_to_voice_mail: noAnswerRedirectToVoiceMail
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("processing", "processing", str, is_required=True),
        E("voice_message_delivery_email_address", "voiceMessageDeliveryEmailAddress", str),
        E(
            "use_phone_message_waiting_indicator", "usePhoneMessageWaitingIndicator",
            bool, is_required=True,
        ),
        E(
            "send_voice_message_notify_email", "sendVoiceMessageNotifyEmail", bool,
            is_required=True,
        ),
        E("voice_message_notify_email_address", "voiceMessageNotifyEmailAddress", str),
        E(
            "send_carbon_copy_voice_message", "sendCarbonCopyVoiceMessage", bool,
            is_required=True,
        ),
        E(
            "voice_message_carbon_copy_email_address",
            "voiceMessageCarbonCopyEmailAddress", str,
        ),
        E(
            "transfer_on_zero_to_phone_number", "transferOnZeroToPhoneNumber", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "always_redirect_to_voice_mail", "alwaysRedirectToVoiceMail", bool,
            is_required=True,
        ),
        E("busy_redirect_to_voice_mail", "busyRedirectToVoiceMail", bool, is_required=True),
        E(
            "no_answer_redirect_to_voice_mail", "noAnswerRedirectToVoiceMail", bool,
            is_required=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    processing: str = Field(type=str, required=True, mutable=False)
    voice_message_delivery_email_address: str = Field(type=str, required=False, mutable=False)
    use_phone_message_waiting_indicator: bool = Field(type=bool, required=True, mutable=False)
    send_voice_message_notify_email: bool = Field(type=bool, required=True, mutable=False)
    voice_message_notify_email_address: str = Field(type=str, required=False, mutable=False)
    send_carbon_copy_voice_message: bool = Field(type=bool, required=True, mutable=False)
    voice_message_carbon_copy_email_address: str = Field(
        type=str, required=False, mutable=False,
    )
    transfer_on_zero_to_phone_number: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    always_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    busy_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    no_answer_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)


class UserVoiceMessagingUserGetVoiceManagementResponse17(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetVoiceManagementRequest17()``.


    Attributes:
        is_active: isActive
        processing: processing
        voice_message_delivery_email_address: voiceMessageDeliveryEmailAddress
        use_phone_message_waiting_indicator: usePhoneMessageWaitingIndicator
        send_voice_message_notify_email: sendVoiceMessageNotifyEmail
        voice_message_notify_email_address: voiceMessageNotifyEmailAddress
        send_carbon_copy_voice_message: sendCarbonCopyVoiceMessage
        voice_message_carbon_copy_email_address: voiceMessageCarbonCopyEmailAddress
        transfer_on_zero_to_phone_number: transferOnZeroToPhoneNumber
        transfer_phone_number: transferPhoneNumber
        always_redirect_to_voice_mail: alwaysRedirectToVoiceMail
        busy_redirect_to_voice_mail: busyRedirectToVoiceMail
        no_answer_redirect_to_voice_mail: noAnswerRedirectToVoiceMail
        out_of_primary_zone_redirect_to_voice_mail: outOfPrimaryZoneRedirectToVoiceMail
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("processing", "processing", str, is_required=True),
        E("voice_message_delivery_email_address", "voiceMessageDeliveryEmailAddress", str),
        E(
            "use_phone_message_waiting_indicator", "usePhoneMessageWaitingIndicator",
            bool, is_required=True,
        ),
        E(
            "send_voice_message_notify_email", "sendVoiceMessageNotifyEmail", bool,
            is_required=True,
        ),
        E("voice_message_notify_email_address", "voiceMessageNotifyEmailAddress", str),
        E(
            "send_carbon_copy_voice_message", "sendCarbonCopyVoiceMessage", bool,
            is_required=True,
        ),
        E(
            "voice_message_carbon_copy_email_address",
            "voiceMessageCarbonCopyEmailAddress", str,
        ),
        E(
            "transfer_on_zero_to_phone_number", "transferOnZeroToPhoneNumber", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "always_redirect_to_voice_mail", "alwaysRedirectToVoiceMail", bool,
            is_required=True,
        ),
        E("busy_redirect_to_voice_mail", "busyRedirectToVoiceMail", bool, is_required=True),
        E(
            "no_answer_redirect_to_voice_mail", "noAnswerRedirectToVoiceMail", bool,
            is_required=True,
        ),
        E(
            "out_of_primary_zone_redirect_to_voice_mail",
            "outOfPrimaryZoneRedirectToVoiceMail", bool, is_required=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    processing: str = Field(type=str, required=True, mutable=False)
    voice_message_delivery_email_address: str = Field(type=str, required=False, mutable=False)
    use_phone_message_waiting_indicator: bool = Field(type=bool, required=True, mutable=False)
    send_voice_message_notify_email: bool = Field(type=bool, required=True, mutable=False)
    voice_message_notify_email_address: str = Field(type=str, required=False, mutable=False)
    send_carbon_copy_voice_message: bool = Field(type=bool, required=True, mutable=False)
    voice_message_carbon_copy_email_address: str = Field(
        type=str, required=False, mutable=False,
    )
    transfer_on_zero_to_phone_number: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    always_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    busy_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    no_answer_redirect_to_voice_mail: bool = Field(type=bool, required=True, mutable=False)
    out_of_primary_zone_redirect_to_voice_mail: bool = Field(
        type=bool, required=True, mutable=False,
    )


class UserVoiceMessagingUserGetVoicePortalPasswordInfoResponse(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetVoicePortalPasswordInfoRequest()``.

    Replaced By: ``UserPortalPasscodeGetInfoResponse()``

    Attributes:
        is_login_disabled: isLoginDisabled
        expiration_days: expirationDays
        does_not_expire: doesNotExpire
        password: password
    """

    _ELEMENTS = (
        E("is_login_disabled", "isLoginDisabled", bool, is_required=True),
        E("expiration_days", "expirationDays", int),
        E("does_not_expire", "doesNotExpire", bool),
        E("password", "password", str, is_required=True),
    )

    is_login_disabled: bool = Field(type=bool, required=True, mutable=False)
    expiration_days: int = Field(type=int, required=False, mutable=False)
    does_not_expire: bool = Field(type=bool, required=False, mutable=False)
    password: str = Field(type=str, required=True, mutable=False)


class UserVoiceMessagingUserGetVoicePortalResponse(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetVoicePortalRequest()``.

    Replaced By: ``UserVoiceMessagingUserGetVoicePortalResponse16()``

    Attributes:
        use_personalized_name: usePersonalizedName
        voice_portal_auto_login: voicePortalAutoLogin
        personalized_name_audio_file_description: personalizedNameAudioFileDescription
    """

    _ELEMENTS = (
        E("use_personalized_name", "usePersonalizedName", bool, is_required=True),
        E("voice_portal_auto_login", "voicePortalAutoLogin", bool, is_required=True),
        E(
            "personalized_name_audio_file_description",
            "personalizedNameAudioFileDescription", str,
        ),
    )

    use_personalized_name: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_auto_login: bool = Field(type=bool, required=True, mutable=False)
    personalized_name_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )


class UserVoiceMessagingUserGetVoicePortalResponse16(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetVoicePortalRequest16()``.


    Attributes:
        use_personalized_name: usePersonalizedName
        voice_portal_auto_login: voicePortalAutoLogin
        personalized_name_audio_file_description: personalizedNameAudioFileDescription
        personalized_name_media_type: personalizedNameMediaType
    """

    _ELEMENTS = (
        E("use_personalized_name", "usePersonalizedName", bool, is_required=True),
        E("voice_portal_auto_login", "voicePortalAutoLogin", bool, is_required=True),
        E(
            "personalized_name_audio_file_description",
            "personalizedNameAudioFileDescription", str,
        ),
        E("personalized_name_media_type", "personalizedNameMediaType", str),
    )

    use_personalized_name: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_auto_login: bool = Field(type=bool, required=True, mutable=False)
    personalized_name_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    personalized_name_media_type: str = Field(type=str, required=False, mutable=False)


class UserVoicePortalCallingGetResponse(OCIResponse):
    """
    Response to ``UserVoicePortalCallingGetRequest()``.


    Attributes:
        is_active: isActive
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)


class UserZoneCallingRestrictionsGetResponse(OCIResponse):
    """
    Gets the home zone for a user Response to a
    ``UserZoneCallingRestrictionsGetRequest()``

    Attributes:
        home_zone_name: homeZoneName
    """

    _ELEMENTS = (
        E("home_zone_name", "homeZoneName", str),
    )

    home_zone_name: str = Field(type=str, required=False, mutable=False)


class EnterpriseCommonPhoneListGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCommonPhoneListGetListRequest()``.

    The response contains the enterprise's common phone list.

    Attributes:
        entry: entry
    """

    _ELEMENTS = (
        E("entry", "entry", OCI.PhoneListEntry, is_complex=True, is_array=True),
    )

    entry: "List[OCI.PhoneListEntry]" = Field(type=list, required=False, mutable=False)


class EnterpriseDepartmentGetAvailableParentListResponse(OCIResponse):
    """
    Response to ``EnterpriseDepartmentGetAvailableParentListRequest()``.

    The response includes two parallel arrays of department keys and department display
    names.

    Attributes:
        department_key: departmentKey
        full_path_name: fullPathName
    """

    _ELEMENTS = (
        E(
            "department_key", "departmentKey", OCI.DepartmentKey, is_complex=True,
            is_array=True,
        ),
        E("full_path_name", "fullPathName", str, is_array=True),
    )

    department_key: "List[OCI.DepartmentKey]" = Field(
        type=list, required=False, mutable=False,
    )
    full_path_name: "List[str]" = Field(type=list, required=False, mutable=False)


class EnterpriseDepartmentGetListResponse(OCIResponse):
    """
    Response to ``EnterpriseDepartmentGetListRequest()``.

    The response includes two parallel arrays of department keys and department display
    names.

    Attributes:
        department_key: departmentKey
        full_path_name: fullPathName
    """

    _ELEMENTS = (
        E(
            "department_key", "departmentKey", OCI.DepartmentKey, is_complex=True,
            is_array=True,
        ),
        E("full_path_name", "fullPathName", str, is_array=True),
    )

    department_key: "List[OCI.DepartmentKey]" = Field(
        type=list, required=False, mutable=False,
    )
    full_path_name: "List[str]" = Field(type=list, required=False, mutable=False)


class EnterpriseEnhancedCallLogsGetListResponse(OCIResponse):
    """
    Response to ``EnterpriseEnhancedCallLogsGetListRequest()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``EnterpriseEnhancedCallLogsGetListRequest()``, if a call
    log type was specified in the request.  - the total number of retrievable logs, if no
    call log type was specified in the request.  A list of ExtendedMixedCallLogsEntry will
    be returned if the call logs are stored on DBS. Otherwise, an error response will be
    returned.  The result is sorted by date/time of the call.  Replaced by
    ``EnterpriseEnhancedCallLogsGetListResponse17sp4()``. Originally deprecated in release
    20.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        extended_call_log: extendedCallLog
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "extended_call_log", "extendedCallLog", OCI.ExtendedMixedCallLogsEntry,
            is_complex=True, is_array=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    extended_call_log: "List[OCI.ExtendedMixedCallLogsEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class EnterpriseEnhancedCallLogsGetListResponse17sp4(OCIResponse):
    """
    Response to ``EnterpriseEnhancedCallLogsGetListRequest17sp4()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``EnterpriseEnhancedCallLogsGetListRequest17sp4()``, if a
    call log type was specified in the request.  - the total number of retrievable logs,
    if no call log type was specified in the request.  A list of
    ExtendedMixedCallLogsEntry17sp4 will be returned if the call logs are stored on DBS.
    Otherwise, an error response will be returned.  The result is sorted by date/time of
    the call.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        extended_call_log: extendedCallLog
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "extended_call_log", "extendedCallLog", OCI.ExtendedMixedCallLogsEntry17sp4,
            is_complex=True, is_array=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    extended_call_log: "List[OCI.ExtendedMixedCallLogsEntry17sp4]" = Field(
        type=list, required=False, mutable=False,
    )


class EnterpriseEnhancedCallLogsGetListResponse20(OCIResponse):
    """
    Response to ``EnterpriseEnhancedCallLogsGetListRequest20()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``EnterpriseEnhancedCallLogsGetListRequest20()``, if a call
    log type was specified in the request.  - the total number of retrievable logs, if no
    call log type was specified in the request.  A list of ExtendedMixedCallLogsEntry20
    will be returned if the call logs are stored on DBS. Otherwise, an error response will
    be returned.  The result is sorted by date/time of the call.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        extended_call_log: extendedCallLog
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "extended_call_log", "extendedCallLog", OCI.ExtendedMixedCallLogsEntry20,
            is_complex=True, is_array=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    extended_call_log: "List[OCI.ExtendedMixedCallLogsEntry20]" = Field(
        type=list, required=False, mutable=False,
    )


class EnterpriseEnhancedCallLogsGetListResponse21(OCIResponse):
    """
    Response to ``EnterpriseEnhancedCallLogsGetListRequest21()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``EnterpriseEnhancedCallLogsGetListRequest21()``, if a call
    log type was specified in the request.  - the total number of retrievable logs, if no
    call log type was specified in the request.  A list of ExtendedMixedCallLogsEntry21
    will be returned if the call logs are stored on DBS. Otherwise, an error response will
    be returned.  The result is sorted by date/time of the call.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        extended_call_log: extendedCallLog
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "extended_call_log", "extendedCallLog", OCI.ExtendedMixedCallLogsEntry21,
            is_complex=True, is_array=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    extended_call_log: "List[OCI.ExtendedMixedCallLogsEntry21]" = Field(
        type=list, required=False, mutable=False,
    )


class EnterpriseEnterpriseTrunkGetAvailableTrunkGroupListResponse(OCIResponse):
    """
    Response to ``EnterpriseEnterpriseTrunkGetAvailableTrunkGroupListRequest()``.


    Attributes:
        trunk_group: trunkGroup
    """

    _ELEMENTS = (
        E(
            "trunk_group", "trunkGroup", OCI.EnterpriseTrunkTrunkGroupKey,
            is_complex=True, is_array=True,
        ),
    )

    trunk_group: "List[OCI.EnterpriseTrunkTrunkGroupKey]" = Field(
        type=list, required=False, mutable=False,
    )


class EnterpriseVoiceVPNGetDefaultResponse(OCIResponse):
    """
    Response to ``EnterpriseVoiceVPNGetDefaultResponse()``.


    Attributes:
        policy_selection: policySelection
        digit_manipulation_operation: digitManipulationOperation
        route_group_id: routeGroupId
        treatment: treatment
    """

    _ELEMENTS = (
        E("policy_selection", "policySelection", str, is_required=True),
        E(
            "digit_manipulation_operation", "digitManipulationOperation", str,
            is_required=True,
        ),
        E("route_group_id", "routeGroupId", str, is_array=True),
        E(
            "treatment", "treatment", OCI.EnterpriseVoiceVPNTreatmentEntry,
            is_complex=True, is_array=True,
        ),
    )

    policy_selection: str = Field(type=str, required=True, mutable=False)
    digit_manipulation_operation: str = Field(type=str, required=True, mutable=False)
    route_group_id: "List[str]" = Field(type=list, required=False, mutable=False)
    treatment: "List[OCI.EnterpriseVoiceVPNTreatmentEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class EnterpriseVoiceVPNGetPolicyResponse(OCIResponse):
    """
    Response to ``EnterpriseVoiceVPNGetPolicyRequest()``.


    Attributes:
        min_extension_length: minExtensionLength
        max_extension_length: maxExtensionLength
        description: description
        route_group_id: routeGroupId
        policy_selection: policySelection
        digit_manipulation: digitManipulation
        treatment_id: treatmentId
    """

    _ELEMENTS = (
        E("min_extension_length", "minExtensionLength", int, is_required=True),
        E("max_extension_length", "maxExtensionLength", int, is_required=True),
        E("description", "description", str),
        E("route_group_id", "routeGroupId", str),
        E("policy_selection", "policySelection", str, is_required=True),
        E(
            "digit_manipulation", "digitManipulation",
            OCI.EnterpriseVoiceVPNDigitManipulation, is_complex=True,
        ),
        E("treatment_id", "treatmentId", str),
    )

    min_extension_length: int = Field(type=int, required=True, mutable=False)
    max_extension_length: int = Field(type=int, required=True, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    route_group_id: str = Field(type=str, required=False, mutable=False)
    policy_selection: str = Field(type=str, required=True, mutable=False)
    digit_manipulation: "OCI.EnterpriseVoiceVPNDigitManipulation" = Field(
        type=OCI.EnterpriseVoiceVPNDigitManipulation, required=False, mutable=False,
    )
    treatment_id: str = Field(type=str, required=False, mutable=False)


class GroupAccessDeviceGetResponse14(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetRequest14()``.

    Replaced By: ``GroupAccessDeviceGetResponse14sp3()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        configuration_mode: configurationMode
        configuration_file_name: configurationFileName
        physical_location: physicalLocation
        transport_protocol: transportProtocol
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("configuration_mode", "configurationMode", str),
        E("configuration_file_name", "configurationFileName", str),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=False, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    configuration_mode: str = Field(type=str, required=False, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)


class GroupAccessDeviceGetResponse14sp3(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetRequest14sp3()``.

    Replaced By: ``GroupAccessDeviceGetResponse14sp6()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        configuration_mode: configurationMode
        configuration_file_name: configurationFileName
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("configuration_mode", "configurationMode", str),
        E("configuration_file_name", "configurationFileName", str),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=False, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    configuration_mode: str = Field(type=str, required=False, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )


class GroupAccessDeviceGetResponse14sp6(OCIResponse):
    """
    Response to: ``GroupAccessDeviceGetRequest14sp6()`` Replaced by:
    ``GroupAccessDeviceGetResponse16()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        configuration_mode: configurationMode
        configuration_file_name: configurationFileName
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
        use_custom_user_name_password: useCustomUserNamePassword
        user_name: userName
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("configuration_mode", "configurationMode", str),
        E("configuration_file_name", "configurationFileName", str),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
        E("use_custom_user_name_password", "useCustomUserNamePassword", bool),
        E("user_name", "userName", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=False, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    configuration_mode: str = Field(type=str, required=False, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    use_custom_user_name_password: bool = Field(type=bool, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)


class GroupAccessDeviceGetResponse16(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetRequest16()``.


    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        configuration_mode: configurationMode
        configuration_file_name: configurationFileName
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
        use_custom_user_name_password: useCustomUserNamePassword
        user_name: userName
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("configuration_mode", "configurationMode", str),
        E("configuration_file_name", "configurationFileName", str),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
        E("use_custom_user_name_password", "useCustomUserNamePassword", bool),
        E("user_name", "userName", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=False, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    configuration_mode: str = Field(type=str, required=False, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    use_custom_user_name_password: bool = Field(type=bool, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)


class GroupAccessDeviceGetResponse18sp1(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetRequest18sp1()``.


    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        configuration_mode: configurationMode
        configuration_file_name: configurationFileName
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
        use_custom_user_name_password: useCustomUserNamePassword
        user_name: userName
        version: version
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("configuration_mode", "configurationMode", str),
        E("configuration_file_name", "configurationFileName", str),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
        E("use_custom_user_name_password", "useCustomUserNamePassword", bool),
        E("user_name", "userName", str),
        E("version", "version", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=False, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    configuration_mode: str = Field(type=str, required=False, mutable=False)
    configuration_file_name: str = Field(type=str, required=False, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    use_custom_user_name_password: bool = Field(type=bool, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)
    version: str = Field(type=str, required=False, mutable=False)


class GroupAccountAuthorizationCodesGetListResponse(OCIResponse):
    """
    Response to ``GroupAccountAuthorizationCodesGetListRequest()``.


    Attributes:
        code_entry: codeEntry
    """

    _ELEMENTS = (
        E(
            "code_entry", "codeEntry", OCI.AccountAuthorizationCodeEntry, is_complex=True,
            is_array=True,
        ),
    )

    code_entry: "List[OCI.AccountAuthorizationCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupCallCenterComfortMessageBypassGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterComfortMessageBypassGetRequest17()``.


    Attributes:
        is_active: isActive
        call_waiting_age_threshold_seconds: callWaitingAgeThresholdSeconds
        play_announcement_after_ringing: playAnnouncementAfterRinging
        ring_time_before_playing_announcement_seconds:
            ringTimeBeforePlayingAnnouncementSeconds
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "call_waiting_age_threshold_seconds", "callWaitingAgeThresholdSeconds", int,
            is_required=True,
        ),
        E(
            "play_announcement_after_ringing", "playAnnouncementAfterRinging", bool,
            is_required=True,
        ),
        E(
            "ring_time_before_playing_announcement_seconds",
            "ringTimeBeforePlayingAnnouncementSeconds", int, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    call_waiting_age_threshold_seconds: int = Field(type=int, required=True, mutable=False)
    play_announcement_after_ringing: bool = Field(type=bool, required=True, mutable=False)
    ring_time_before_playing_announcement_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupCallCenterForcedForwardingGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterForcedForwardingGetRequest17()``.


    Attributes:
        is_active: isActive
        forward_to_phone_number: forwardToPhoneNumber
        allow_enable_via_fac: allowEnableViaFAC
        play_announcement_before_forwarding: playAnnouncementBeforeForwarding
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E("allow_enable_via_fac", "allowEnableViaFAC", bool, is_required=True),
        E(
            "play_announcement_before_forwarding", "playAnnouncementBeforeForwarding",
            bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    allow_enable_via_fac: bool = Field(type=bool, required=True, mutable=False)
    play_announcement_before_forwarding: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupCallCenterGetAnnouncementResponse14sp6(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest14sp6()``.


    Attributes:
        entrance_message_selection: entranceMessageSelection
        entrance_message_audio_file_description: entranceMessageAudioFileDescription
        entrance_message_video_file_description: entranceMessageVideoFileDescription
        periodic_comfort_message_selection: periodicComfortMessageSelection
        periodic_comfort_message_audio_file_description:
            periodicComfortMessageAudioFileDescription
        periodic_comfort_message_video_file_description:
            periodicComfortMessageVideoFileDescription
        on_hold_source: onHoldSource
        on_hold_use_alternate_source_for_internal_calls:
            onHoldUseAlternateSourceForInternalCalls
        on_hold_internal_source: onHoldInternalSource
    """

    _ELEMENTS = (
        E("entrance_message_selection", "entranceMessageSelection", str, is_required=True),
        E(
            "entrance_message_audio_file_description",
            "entranceMessageAudioFileDescription", str,
        ),
        E(
            "entrance_message_video_file_description",
            "entranceMessageVideoFileDescription", str,
        ),
        E(
            "periodic_comfort_message_selection", "periodicComfortMessageSelection", str,
            is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_file_description",
            "periodicComfortMessageAudioFileDescription", str,
        ),
        E(
            "periodic_comfort_message_video_file_description",
            "periodicComfortMessageVideoFileDescription", str,
        ),
        E(
            "on_hold_source", "onHoldSource", OCI.CallCenterMusicOnHoldSourceRead,
            is_complex=True, is_required=True,
        ),
        E(
            "on_hold_use_alternate_source_for_internal_calls",
            "onHoldUseAlternateSourceForInternalCalls", bool, is_required=True,
        ),
        E(
            "on_hold_internal_source", "onHoldInternalSource",
            OCI.CallCenterMusicOnHoldSourceRead, is_complex=True,
        ),
    )

    entrance_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    entrance_message_video_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_selection: str = Field(type=str, required=True, mutable=False)
    periodic_comfort_message_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    on_hold_source: "OCI.CallCenterMusicOnHoldSourceRead" = Field(
        type=OCI.CallCenterMusicOnHoldSourceRead, required=True, mutable=False,
    )
    on_hold_use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    on_hold_internal_source: "OCI.CallCenterMusicOnHoldSourceRead" = Field(
        type=OCI.CallCenterMusicOnHoldSourceRead, required=False, mutable=False,
    )


class GroupCallCenterHolidayServiceGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterHolidayServiceGetRequest17()``.


    Attributes:
        action: action
        holiday_schedule: holidaySchedule
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("holiday_schedule", "holidaySchedule", str),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    holiday_schedule: str = Field(type=str, required=False, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupCallCenterHolidayServiceGetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupCallCenterHolidayServiceGetRequest17sp1()``.


    Attributes:
        action: action
        holiday_schedule: holidaySchedule
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupCallCenterNightServiceGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterNightServiceGetRequest17()``.


    Attributes:
        action: action
        business_hours: businessHours
        force_night_service: forceNightService
        allow_manual_override_via_fac: allowManualOverrideViaFAC
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
        manual_announcement_mode: manualAnnouncementMode
        manual_audio_message_selection: manualAudioMessageSelection
        manual_audio_url_list: manualAudioUrlList
        manual_audio_file_list: manualAudioFileList
        manual_audio_media_type_list: manualAudioMediaTypeList
        manual_video_message_selection: manualVideoMessageSelection
        manual_video_url_list: manualVideoUrlList
        manual_video_file_list: manualVideoFileList
        manual_video_media_type_list: manualVideoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("business_hours", "businessHours", str),
        E("force_night_service", "forceNightService", bool, is_required=True),
        E(
            "allow_manual_override_via_fac", "allowManualOverrideViaFAC", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("manual_announcement_mode", "manualAnnouncementMode", str, is_required=True),
        E(
            "manual_audio_message_selection", "manualAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_audio_url_list", "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_audio_file_list", "manualAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "manual_audio_media_type_list", "manualAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "manual_video_message_selection", "manualVideoMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_video_url_list", "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_video_file_list", "manualVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "manual_video_media_type_list", "manualVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    business_hours: str = Field(type=str, required=False, mutable=False)
    force_night_service: bool = Field(type=bool, required=True, mutable=False)
    allow_manual_override_via_fac: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    manual_announcement_mode: str = Field(type=str, required=True, mutable=False)
    manual_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    manual_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    manual_video_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    manual_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupCallCenterNightServiceGetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupCallCenterNightServiceGetRequest17sp1()``.


    Attributes:
        action: action
        business_hours: businessHours
        force_night_service: forceNightService
        allow_manual_override_via_fac: allowManualOverrideViaFAC
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
        manual_announcement_mode: manualAnnouncementMode
        manual_audio_message_selection: manualAudioMessageSelection
        manual_audio_url_list: manualAudioUrlList
        manual_audio_file_list: manualAudioFileList
        manual_audio_media_type_list: manualAudioMediaTypeList
        manual_video_message_selection: manualVideoMessageSelection
        manual_video_url_list: manualVideoUrlList
        manual_video_file_list: manualVideoFileList
        manual_video_media_type_list: manualVideoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("force_night_service", "forceNightService", bool, is_required=True),
        E(
            "allow_manual_override_via_fac", "allowManualOverrideViaFAC", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("manual_announcement_mode", "manualAnnouncementMode", str, is_required=True),
        E(
            "manual_audio_message_selection", "manualAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_audio_url_list", "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_audio_file_list", "manualAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "manual_audio_media_type_list", "manualAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "manual_video_message_selection", "manualVideoMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_video_url_list", "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_video_file_list", "manualVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "manual_video_media_type_list", "manualVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    force_night_service: bool = Field(type=bool, required=True, mutable=False)
    allow_manual_override_via_fac: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    manual_announcement_mode: str = Field(type=str, required=True, mutable=False)
    manual_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    manual_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    manual_video_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    manual_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupCallCenterOverflowGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterOverflowGetRequest17()`` .


    Attributes:
        action: action
        transfer_phone_number: transferPhoneNumber
        overflow_after_timeout: overflowAfterTimeout
        timeout_seconds: timeoutSeconds
        play_announcement_before_overflow_processing:
            playAnnouncementBeforeOverflowProcessing
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("overflow_after_timeout", "overflowAfterTimeout", bool, is_required=True),
        E("timeout_seconds", "timeoutSeconds", int, is_required=True),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing", bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    overflow_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    timeout_seconds: int = Field(type=int, required=True, mutable=False)
    play_announcement_before_overflow_processing: bool = Field(
        type=bool, required=True, mutable=False,
    )
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupCallCenterQueueCallDispositionCodeSettingsGetResponse(OCIResponse):
    """
    Response to ``GroupCallCenterQueueCallDispositionCodeSettingsGetRequest()``.


    Attributes:
        enable_call_disposition_codes: enableCallDispositionCodes
        include_organization_codes: includeOrganizationCodes
        force_use_of_call_disposition_codes: forceUseOfCallDispositionCodes
        default_call_disposition_code: defaultCallDispositionCode
    """

    _ELEMENTS = (
        E(
            "enable_call_disposition_codes", "enableCallDispositionCodes", bool,
            is_required=True,
        ),
        E("include_organization_codes", "includeOrganizationCodes", bool, is_required=True),
        E(
            "force_use_of_call_disposition_codes", "forceUseOfCallDispositionCodes", bool,
            is_required=True,
        ),
        E(
            "default_call_disposition_code", "defaultCallDispositionCode",
            OCI.CallDispositionCodeWithLevel, is_complex=True,
        ),
    )

    enable_call_disposition_codes: bool = Field(type=bool, required=True, mutable=False)
    include_organization_codes: bool = Field(type=bool, required=True, mutable=False)
    force_use_of_call_disposition_codes: bool = Field(type=bool, required=True, mutable=False)
    default_call_disposition_code: "OCI.CallDispositionCodeWithLevel" = Field(
        type=OCI.CallDispositionCodeWithLevel, required=False, mutable=False,
    )


class GroupCallCenterStrandedCallGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterStrandedCallGetRequest17()``.


    Attributes:
        action: action
        transfer_phone_number: transferPhoneNumber
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("audio_message_selection", "audioMessageSelection", str),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    audio_message_selection: str = Field(type=str, required=False, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupCallCenterStrandedCallUnavailableGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterStrandedCallUnavailableGetRequest()``.


    Attributes:
        condition_policy_on_number_of_agents_with_specified_unavailable_code:
            conditionPolicyOnNumberOfAgentsWithSpecifiedUnavailableCode
        number_of_agents_with_specified_unavailable_code:
            numberOfAgentsWithSpecifiedUnavailableCode
        agents_unavailable_code: agentsUnavailableCode
        action: action
        transfer_phone_number: transferPhoneNumber
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E(
            "condition_policy_on_number_of_agents_with_specified_unavailable_code",
            "conditionPolicyOnNumberOfAgentsWithSpecifiedUnavailableCode", bool,
            is_required=True,
        ),
        E(
            "number_of_agents_with_specified_unavailable_code",
            "numberOfAgentsWithSpecifiedUnavailableCode", int,
        ),
        E("agents_unavailable_code", "agentsUnavailableCode", str),
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("audio_message_selection", "audioMessageSelection", str),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    condition_policy_on_number_of_agents_with_specified_unavailable_code: bool = Field(
        type=bool, required=True, mutable=False,
    )
    number_of_agents_with_specified_unavailable_code: int = Field(
        type=int, required=False, mutable=False,
    )
    agents_unavailable_code: str = Field(type=str, required=False, mutable=False)
    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    audio_message_selection: str = Field(type=str, required=False, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupCommonPhoneListGetListResponse(OCIResponse):
    """
    Response to the ``GroupCommonPhoneListGetListRequest()``.

    The response contains the group's common phone list.

    Attributes:
        entry: entry
    """

    _ELEMENTS = (
        E("entry", "entry", OCI.PhoneListEntry, is_complex=True, is_array=True),
    )

    entry: "List[OCI.PhoneListEntry]" = Field(type=list, required=False, mutable=False)


class GroupCommunicationBarringAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``GroupCommunicationBarringAuthorizationCodeGetListRequest()``.

    Contains a list of Communication Barring Authorization Codes assigned to the group.

    Attributes:
        code: code
    """

    _ELEMENTS = (
        E(
            "code", "code", OCI.CommunicationBarringAuthorizationCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    code: "List[OCI.CommunicationBarringAuthorizationCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupCustomRingbackGroupGetResponse20(OCIResponse):
    """
    Response to the ``GroupCustomRingbackGroupGetRequest20()``.


    Attributes:
        is_active: isActive
        audio_selection: audioSelection
        audio_file: audioFile
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file: videoFile
        video_file_url: videoFileUrl
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file", "audioFile", OCI.AnnouncementFileKey, is_complex=True),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file", "videoFile", OCI.AnnouncementFileKey, is_complex=True),
        E("video_file_url", "videoFileUrl", str),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file: "OCI.AnnouncementFileKey" = Field(
        type=OCI.AnnouncementFileKey, required=False, mutable=False,
    )
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file: "OCI.AnnouncementFileKey" = Field(
        type=OCI.AnnouncementFileKey, required=False, mutable=False,
    )
    video_file_url: str = Field(type=str, required=False, mutable=False)


class GroupDepartmentAdminGetResponse(OCIResponse):
    """
    Response to the ``GroupDepartmentAdminGetRequest()``.

    The response contains the group department administrators profile information.

    Attributes:
        department_key: departmentKey
        department_full_path: departmentFullPath
        first_name: firstName
        last_name: lastName
        language: language
    """

    _ELEMENTS = (
        E(
            "department_key", "departmentKey", OCI.GroupDepartmentKey, is_complex=True,
            is_required=True,
        ),
        E("department_full_path", "departmentFullPath", str, is_required=True),
        E("first_name", "firstName", str),
        E("last_name", "lastName", str),
        E("language", "language", str, is_required=True),
    )

    department_key: "OCI.GroupDepartmentKey" = Field(
        type=OCI.GroupDepartmentKey, required=True, mutable=False,
    )
    department_full_path: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=False, mutable=False)
    last_name: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)


class GroupDepartmentGetAvailableParentListResponse(OCIResponse):
    """
    Response to ``GroupDepartmentGetAvailableParentListRequest()``.

    The response includes two parallel arrays of department keys and department display
    names.

    Attributes:
        department_key: departmentKey
        full_path_name: fullPathName
    """

    _ELEMENTS = (
        E(
            "department_key", "departmentKey", OCI.DepartmentKey, is_complex=True,
            is_array=True,
        ),
        E("full_path_name", "fullPathName", str, is_array=True),
    )

    department_key: "List[OCI.DepartmentKey]" = Field(
        type=list, required=False, mutable=False,
    )
    full_path_name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupDepartmentGetListResponse(OCIResponse):
    """
    Response to ``GroupDepartmentGetListRequest()``.

    The response includes two parallel arrays of department keys and department display
    names.  Replaced by: ``GroupDepartmentGetListResponse18()``

    Attributes:
        department_key: departmentKey
        full_path_name: fullPathName
    """

    _ELEMENTS = (
        E(
            "department_key", "departmentKey", OCI.DepartmentKey, is_complex=True,
            is_array=True,
        ),
        E("full_path_name", "fullPathName", str, is_array=True),
    )

    department_key: "List[OCI.DepartmentKey]" = Field(
        type=list, required=False, mutable=False,
    )
    full_path_name: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupDepartmentGetResponse(OCIResponse):
    """
    Response to ``GroupDepartmentGetRequest()``.

    The following elements are only used in AS data mode: callingLineIdName
    caliingLineIdPhoneNumber

    Attributes:
        parent_department_key: parentDepartmentKey
        calling_line_id_name: callingLineIdName
        calling_line_id_phone_number: callingLineIdPhoneNumber
    """

    _ELEMENTS = (
        E("parent_department_key", "parentDepartmentKey", OCI.DepartmentKey, is_complex=True),
        E("calling_line_id_name", "callingLineIdName", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
    )

    parent_department_key: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    calling_line_id_name: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)


class GroupEmergencyZonesGetHomeZoneListResponse(OCIResponse):
    """
    Response to ``GroupEmergencyZonesGetHomeZoneListRequest()``.


    Attributes:
        home_zone_ip_address: homeZoneIpAddress
        home_zone_ip_address_range: homeZoneIpAddressRange
    """

    _ELEMENTS = (
        E("home_zone_ip_address", "homeZoneIpAddress", str, is_array=True),
        E(
            "home_zone_ip_address_range", "homeZoneIpAddressRange", OCI.IPAddressRange,
            is_complex=True, is_array=True,
        ),
    )

    home_zone_ip_address: "List[str]" = Field(type=list, required=False, mutable=False)
    home_zone_ip_address_range: "List[OCI.IPAddressRange]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupEnhancedCallLogsGetListResponse(OCIResponse):
    """
    Response to ``GroupEnhancedCallLogsGetListRequest()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``GroupEnhancedCallLogsGetListRequest()``, if a call log
    type was specified in the request.  - the total number of retrievable logs, if no call
    log type was specified in the request.  A list of ExtendedMixedCallLogsEntry will be
    returned if the call logs are stored on DBS. Otherwise, an error response will be
    returned.  The logs are sorted by date/time of the call.  Replaced by
    ``GroupEnhancedCallLogsGetListResponse17sp4()``. Originally deprecated in release 20.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        extended_call_log: extendedCallLog
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "extended_call_log", "extendedCallLog", OCI.ExtendedMixedCallLogsEntry,
            is_complex=True, is_array=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    extended_call_log: "List[OCI.ExtendedMixedCallLogsEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupEnhancedCallLogsGetListResponse17sp4(OCIResponse):
    """
    Response to ``GroupEnhancedCallLogsGetListRequest17sp4()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``GroupEnhancedCallLogsGetListRequest17sp4()``, if a call
    log type was specified in the request.  - the total number of retrievable logs, if no
    call log type was specified in the request.  A list of ExtendedMixedCallLogsEntry17sp4
    will be returned if the call logs are stored on DBS. Otherwise, an error response will
    be returned.  The logs are sorted by date/time of the call.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        extended_call_log: extendedCallLog
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "extended_call_log", "extendedCallLog", OCI.ExtendedMixedCallLogsEntry17sp4,
            is_complex=True, is_array=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    extended_call_log: "List[OCI.ExtendedMixedCallLogsEntry17sp4]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupEnhancedCallLogsGetListResponse20(OCIResponse):
    """
    Response to ``GroupEnhancedCallLogsGetListRequest20()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``GroupEnhancedCallLogsGetListRequest20()``, if a call log
    type was specified in the request.  - the total number of retrievable logs, if no call
    log type was specified in the request.  A list of ExtendedMixedCallLogsEntry20 will be
    returned if the call logs are stored on DBS. Otherwise, an error response will be
    returned.  The logs are sorted by date/time of the call.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        extended_call_log: extendedCallLog
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "extended_call_log", "extendedCallLog", OCI.ExtendedMixedCallLogsEntry20,
            is_complex=True, is_array=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    extended_call_log: "List[OCI.ExtendedMixedCallLogsEntry20]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupEnhancedCallLogsGetListResponse21(OCIResponse):
    """
    Response to ``GroupEnhancedCallLogsGetListRequest21()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``GroupEnhancedCallLogsGetListRequest21()``, if a call log
    type was specified in the request.  - the total number of retrievable logs, if no call
    log type was specified in the request.  A list of ExtendedMixedCallLogsEntry21 will be
    returned if the call logs are stored on DBS. Otherwise, an error response will be
    returned.  The logs are sorted by date/time of the call.

    Attributes:
        total_number_of_rows: totalNumberOfRows
        extended_call_log: extendedCallLog
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E(
            "extended_call_log", "extendedCallLog", OCI.ExtendedMixedCallLogsEntry21,
            is_complex=True, is_array=True,
        ),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    extended_call_log: "List[OCI.ExtendedMixedCallLogsEntry21]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupFeatureAccessCodeGetListResponse(OCIResponse):
    """
    Response to the ``GroupFeatureAccessCodeGetListRequest()``.

    Replaced by: ``GroupFeatureAccessCodeGetResponse()``

    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupFeatureAccessCodeGetResponse(OCIResponse):
    """
    Response to the ``GroupFeatureAccessCodeGetRequest()``.


    Attributes:
        use_feature_access_code_level: useFeatureAccessCodeLevel
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "use_feature_access_code_level", "useFeatureAccessCodeLevel", str,
            is_required=True,
        ),
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    use_feature_access_code_level: str = Field(type=str, required=True, mutable=False)
    feature_access_code: "List[OCI.FeatureAccessCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupFeatureAccessCodeGetResponse20(OCIResponse):
    """
    Response to the ``GroupFeatureAccessCodeGetRequest20()``.

    In release 20 the "Call Recording" FAC name is changed to "Call Recording - Start".
    Replaced by : ``GroupFeatureAccessCodeGetResponse21()``

    Attributes:
        use_feature_access_code_level: useFeatureAccessCodeLevel
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "use_feature_access_code_level", "useFeatureAccessCodeLevel", str,
            is_required=True,
        ),
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    use_feature_access_code_level: str = Field(type=str, required=True, mutable=False)
    feature_access_code: "List[OCI.FeatureAccessCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupFeatureAccessCodeGetResponse21(OCIResponse):
    """
    Response to the ``GroupFeatureAccessCodeGetRequest21()``.

    In release 20 the "Call Recording" FAC name is changed to "Call Recording - Start".

    Attributes:
        use_feature_access_code_level: useFeatureAccessCodeLevel
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "use_feature_access_code_level", "useFeatureAccessCodeLevel", str,
            is_required=True,
        ),
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeReadEntry,
            is_complex=True, is_array=True,
        ),
    )

    use_feature_access_code_level: str = Field(type=str, required=True, mutable=False)
    feature_access_code: "List[OCI.FeatureAccessCodeReadEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaResponse(OCIResponse):
    """
    Response to ``GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaRequest()``.

    Contains the alerting group selective criteria information.  Replaced by:
    ``GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaResponse21(OCIResponse):
    """
    Response to ``GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaRequest21()``.

    Contains the alerting group selective criteria information.

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class GroupGetResponse(OCIResponse):
    """
    Response to the ``GroupGetRequest()``.

    The response contains the group's profile information.

    Replaced By: ``GroupGetResponse14sp7()``

    Attributes:
        default_domain: defaultDomain
        user_limit: userLimit
        user_count: userCount
        group_name: groupName
        calling_line_id_name: callingLineIdName
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        location_dialing_code: locationDialingCode
        contact: contact
        address: address
    """

    _ELEMENTS = (
        E("default_domain", "defaultDomain", str, is_required=True),
        E("user_limit", "userLimit", int, is_required=True),
        E("user_count", "userCount", int, is_required=True),
        E("group_name", "groupName", str),
        E("calling_line_id_name", "callingLineIdName", str),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("location_dialing_code", "locationDialingCode", str),
        E("contact", "contact", OCI.Contact, is_complex=True),
        E("address", "address", OCI.StreetAddress, is_complex=True),
    )

    default_domain: str = Field(type=str, required=True, mutable=False)
    user_limit: int = Field(type=int, required=True, mutable=False)
    user_count: int = Field(type=int, required=True, mutable=False)
    group_name: str = Field(type=str, required=False, mutable=False)
    calling_line_id_name: str = Field(type=str, required=False, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    location_dialing_code: str = Field(type=str, required=False, mutable=False)
    contact: "OCI.Contact" = Field(type=OCI.Contact, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )


class GroupGetResponse14sp7(OCIResponse):
    """
    Response to the ``GroupGetRequest14sp7()``.

    The response contains the group's profile information.

    Attributes:
        default_domain: defaultDomain
        user_limit: userLimit
        user_count: userCount
        group_name: groupName
        calling_line_id_name: callingLineIdName
        calling_line_id_phone_number: callingLineIdPhoneNumber
        calling_line_id_display_phone_number: callingLineIdDisplayPhoneNumber
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        location_dialing_code: locationDialingCode
        contact: contact
        address: address
    """

    _ELEMENTS = (
        E("default_domain", "defaultDomain", str, is_required=True),
        E("user_limit", "userLimit", int, is_required=True),
        E("user_count", "userCount", int, is_required=True),
        E("group_name", "groupName", str),
        E("calling_line_id_name", "callingLineIdName", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("calling_line_id_display_phone_number", "callingLineIdDisplayPhoneNumber", str),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("location_dialing_code", "locationDialingCode", str),
        E("contact", "contact", OCI.Contact, is_complex=True),
        E("address", "address", OCI.StreetAddress, is_complex=True),
    )

    default_domain: str = Field(type=str, required=True, mutable=False)
    user_limit: int = Field(type=int, required=True, mutable=False)
    user_count: int = Field(type=int, required=True, mutable=False)
    group_name: str = Field(type=str, required=False, mutable=False)
    calling_line_id_name: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    calling_line_id_display_phone_number: str = Field(type=str, required=False, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    location_dialing_code: str = Field(type=str, required=False, mutable=False)
    contact: "OCI.Contact" = Field(type=OCI.Contact, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )


class GroupGroupNightForwardingGetResponse(OCIResponse):
    """
    Response to ``GroupGroupNightForwardingGetRequest()``.


    Attributes:
        night_forwarding: nightForwarding
        business_hours: businessHours
        holiday_schedule: holidaySchedule
        forward_to_phone_number: forwardToPhoneNumber
    """

    _ELEMENTS = (
        E("night_forwarding", "nightForwarding", str, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
    )

    night_forwarding: str = Field(type=str, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)


class GroupHolidayScheduleGetResponse(OCIResponse):
    """
    Response to the ``GroupHolidayScheduleGetRequest()``.

    The response contains the group's holiday schedule information.

    Attributes:
        holiday_schedule_name: holidayScheduleName
        holiday01: holiday01
        holiday02: holiday02
        holiday03: holiday03
        holiday04: holiday04
        holiday05: holiday05
        holiday06: holiday06
        holiday07: holiday07
        holiday08: holiday08
        holiday09: holiday09
        holiday10: holiday10
        holiday11: holiday11
        holiday12: holiday12
        holiday13: holiday13
        holiday14: holiday14
        holiday15: holiday15
        holiday16: holiday16
        holiday17: holiday17
        holiday18: holiday18
        holiday19: holiday19
        holiday20: holiday20
    """

    _ELEMENTS = (
        E("holiday_schedule_name", "holidayScheduleName", str, is_required=True),
        E("holiday01", "holiday01", OCI.Holiday, is_complex=True),
        E("holiday02", "holiday02", OCI.Holiday, is_complex=True),
        E("holiday03", "holiday03", OCI.Holiday, is_complex=True),
        E("holiday04", "holiday04", OCI.Holiday, is_complex=True),
        E("holiday05", "holiday05", OCI.Holiday, is_complex=True),
        E("holiday06", "holiday06", OCI.Holiday, is_complex=True),
        E("holiday07", "holiday07", OCI.Holiday, is_complex=True),
        E("holiday08", "holiday08", OCI.Holiday, is_complex=True),
        E("holiday09", "holiday09", OCI.Holiday, is_complex=True),
        E("holiday10", "holiday10", OCI.Holiday, is_complex=True),
        E("holiday11", "holiday11", OCI.Holiday, is_complex=True),
        E("holiday12", "holiday12", OCI.Holiday, is_complex=True),
        E("holiday13", "holiday13", OCI.Holiday, is_complex=True),
        E("holiday14", "holiday14", OCI.Holiday, is_complex=True),
        E("holiday15", "holiday15", OCI.Holiday, is_complex=True),
        E("holiday16", "holiday16", OCI.Holiday, is_complex=True),
        E("holiday17", "holiday17", OCI.Holiday, is_complex=True),
        E("holiday18", "holiday18", OCI.Holiday, is_complex=True),
        E("holiday19", "holiday19", OCI.Holiday, is_complex=True),
        E("holiday20", "holiday20", OCI.Holiday, is_complex=True),
    )

    holiday_schedule_name: str = Field(type=str, required=True, mutable=False)
    holiday01: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday02: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday03: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday04: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday05: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday06: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday07: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday08: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday09: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday10: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday11: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday12: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday13: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday14: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday15: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday16: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday17: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday18: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday19: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday20: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)


class GroupMeetMeConferencingGetResponse(OCIResponse):
    """
    Response to ``GroupMeetMeConferencingGetRequest()``.


    Attributes:
        available_ports: availablePorts
        allocated_ports: allocatedPorts
    """

    _ELEMENTS = (
        E(
            "available_ports", "availablePorts", OCI.MeetMeConferencingConferencePorts,
            is_complex=True, is_required=True,
        ),
        E(
            "allocated_ports", "allocatedPorts", OCI.MeetMeConferencingConferencePorts,
            is_complex=True, is_required=True,
        ),
    )

    available_ports: "OCI.MeetMeConferencingConferencePorts" = Field(
        type=OCI.MeetMeConferencingConferencePorts, required=True, mutable=False,
    )
    allocated_ports: "OCI.MeetMeConferencingConferencePorts" = Field(
        type=OCI.MeetMeConferencingConferencePorts, required=True, mutable=False,
    )


class GroupMusicOnHoldGetDepartmentListResponse(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetDepartmentListRequest()``.


    Attributes:
        has_department: hasDepartment
        department: department
        department_full_path: departmentFullPath
    """

    _ELEMENTS = (
        E("has_department", "hasDepartment", bool, is_required=True),
        E("department", "department", OCI.DepartmentKey, is_complex=True, is_array=True),
        E("department_full_path", "departmentFullPath", str, is_array=True),
    )

    has_department: bool = Field(type=bool, required=True, mutable=False)
    department: "List[OCI.DepartmentKey]" = Field(type=list, required=False, mutable=False)
    department_full_path: "List[str]" = Field(type=list, required=False, mutable=False)


class GroupMusicOnHoldGetInstanceResponse14sp6(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest14sp6()``.

    Replaced By: ``GroupMusicOnHoldGetInstanceResponse16()``

    Attributes:
        service_user_id: serviceUserId
        is_active_during_call_hold: isActiveDuringCallHold
        is_active_during_call_park: isActiveDuringCallPark
        is_active_during_busy_camp_on: isActiveDuringBusyCampOn
        enable_video: enableVideo
        source: source
        use_alternate_source_for_internal_calls: useAlternateSourceForInternalCalls
        internal_source: internalSource
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E("is_active_during_call_hold", "isActiveDuringCallHold", bool, is_required=True),
        E("is_active_during_call_park", "isActiveDuringCallPark", bool, is_required=True),
        E(
            "is_active_during_busy_camp_on", "isActiveDuringBusyCampOn", bool,
            is_required=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("source", "source", OCI.MusicOnHoldSourceRead, is_complex=True, is_required=True),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls", bool, is_required=True,
        ),
        E("internal_source", "internalSource", OCI.MusicOnHoldSourceRead, is_complex=True),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    is_active_during_call_hold: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_call_park: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_busy_camp_on: bool = Field(type=bool, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    source: "OCI.MusicOnHoldSourceRead" = Field(
        type=OCI.MusicOnHoldSourceRead, required=True, mutable=False,
    )
    use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    internal_source: "OCI.MusicOnHoldSourceRead" = Field(
        type=OCI.MusicOnHoldSourceRead, required=False, mutable=False,
    )


class GroupMusicOnHoldGetInstanceResponse16(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest16()``.


    Attributes:
        service_user_id: serviceUserId
        is_active_during_call_hold: isActiveDuringCallHold
        is_active_during_call_park: isActiveDuringCallPark
        is_active_during_busy_camp_on: isActiveDuringBusyCampOn
        enable_video: enableVideo
        source: source
        use_alternate_source_for_internal_calls: useAlternateSourceForInternalCalls
        internal_source: internalSource
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E("is_active_during_call_hold", "isActiveDuringCallHold", bool, is_required=True),
        E("is_active_during_call_park", "isActiveDuringCallPark", bool, is_required=True),
        E(
            "is_active_during_busy_camp_on", "isActiveDuringBusyCampOn", bool,
            is_required=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("source", "source", OCI.MusicOnHoldSourceRead16, is_complex=True, is_required=True),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls", bool, is_required=True,
        ),
        E("internal_source", "internalSource", OCI.MusicOnHoldSourceRead16, is_complex=True),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    is_active_during_call_hold: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_call_park: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_busy_camp_on: bool = Field(type=bool, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    source: "OCI.MusicOnHoldSourceRead16" = Field(
        type=OCI.MusicOnHoldSourceRead16, required=True, mutable=False,
    )
    use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    internal_source: "OCI.MusicOnHoldSourceRead16" = Field(
        type=OCI.MusicOnHoldSourceRead16, required=False, mutable=False,
    )


class GroupMusicOnHoldGetInstanceResponse19(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest19()``.


    Attributes:
        service_user_id: serviceUserId
        is_active_during_call_hold: isActiveDuringCallHold
        is_active_during_call_park: isActiveDuringCallPark
        is_active_during_busy_camp_on: isActiveDuringBusyCampOn
        enable_video: enableVideo
        source: source
        use_alternate_source_for_internal_calls: useAlternateSourceForInternalCalls
        internal_source: internalSource
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E("is_active_during_call_hold", "isActiveDuringCallHold", bool, is_required=True),
        E("is_active_during_call_park", "isActiveDuringCallPark", bool, is_required=True),
        E(
            "is_active_during_busy_camp_on", "isActiveDuringBusyCampOn", bool,
            is_required=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("source", "source", OCI.MusicOnHoldSourceRead19, is_complex=True, is_required=True),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls", bool, is_required=True,
        ),
        E(
            "internal_source", "internalSource", OCI.MusicOnHoldSourceRead19,
            is_complex=True, is_required=True,
        ),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    is_active_during_call_hold: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_call_park: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_busy_camp_on: bool = Field(type=bool, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    source: "OCI.MusicOnHoldSourceRead19" = Field(
        type=OCI.MusicOnHoldSourceRead19, required=True, mutable=False,
    )
    use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    internal_source: "OCI.MusicOnHoldSourceRead19" = Field(
        type=OCI.MusicOnHoldSourceRead19, required=True, mutable=False,
    )


class GroupMusicOnHoldGetInstanceResponse20(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest20()``.


    Attributes:
        service_user_id: serviceUserId
        is_active_during_call_hold: isActiveDuringCallHold
        is_active_during_call_park: isActiveDuringCallPark
        is_active_during_busy_camp_on: isActiveDuringBusyCampOn
        enable_video: enableVideo
        source: source
        use_alternate_source_for_internal_calls: useAlternateSourceForInternalCalls
        internal_source: internalSource
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E("is_active_during_call_hold", "isActiveDuringCallHold", bool, is_required=True),
        E("is_active_during_call_park", "isActiveDuringCallPark", bool, is_required=True),
        E(
            "is_active_during_busy_camp_on", "isActiveDuringBusyCampOn", bool,
            is_required=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("source", "source", OCI.MusicOnHoldSourceRead20, is_complex=True, is_required=True),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls", bool, is_required=True,
        ),
        E(
            "internal_source", "internalSource", OCI.MusicOnHoldSourceRead20,
            is_complex=True, is_required=True,
        ),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    is_active_during_call_hold: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_call_park: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_busy_camp_on: bool = Field(type=bool, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    source: "OCI.MusicOnHoldSourceRead20" = Field(
        type=OCI.MusicOnHoldSourceRead20, required=True, mutable=False,
    )
    use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    internal_source: "OCI.MusicOnHoldSourceRead20" = Field(
        type=OCI.MusicOnHoldSourceRead20, required=True, mutable=False,
    )


class GroupMusicOnHoldGetInstanceResponse21(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest21()``.


    Attributes:
        service_user_id: serviceUserId
        is_active_during_call_hold: isActiveDuringCallHold
        is_active_during_call_park: isActiveDuringCallPark
        is_active_during_busy_camp_on: isActiveDuringBusyCampOn
        enable_video: enableVideo
        source: source
        use_alternate_source_for_internal_calls: useAlternateSourceForInternalCalls
        internal_source: internalSource
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E("is_active_during_call_hold", "isActiveDuringCallHold", bool, is_required=True),
        E("is_active_during_call_park", "isActiveDuringCallPark", bool, is_required=True),
        E(
            "is_active_during_busy_camp_on", "isActiveDuringBusyCampOn", bool,
            is_required=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("source", "source", OCI.MusicOnHoldSourceRead21, is_complex=True, is_required=True),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls", bool, is_required=True,
        ),
        E(
            "internal_source", "internalSource", OCI.MusicOnHoldSourceRead21,
            is_complex=True, is_required=True,
        ),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    is_active_during_call_hold: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_call_park: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_busy_camp_on: bool = Field(type=bool, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    source: "OCI.MusicOnHoldSourceRead21" = Field(
        type=OCI.MusicOnHoldSourceRead21, required=True, mutable=False,
    )
    use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    internal_source: "OCI.MusicOnHoldSourceRead21" = Field(
        type=OCI.MusicOnHoldSourceRead21, required=True, mutable=False,
    )


class GroupOutgoingCallingPlanDepartmentAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanDepartmentAuthorizationCodeGetListRequest()``.


    Attributes:
        code_entry: codeEntry
    """

    _ELEMENTS = (
        E(
            "code_entry", "codeEntry", OCI.OutgoingCallingPlanAuthorizationCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    code_entry: "List[OCI.OutgoingCallingPlanAuthorizationCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupPreAlertingAnnouncementGetResponse20(OCIResponse):
    """
    Response to a ``GroupPreAlertingAnnouncementGetResponse20()``.


    Attributes:
        announcement_interruption: announcementInterruption
        interruption_digit_sequence: interruptionDigitSequence
        audio_selection: audioSelection
        audio_file: audioFile
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file: videoFile
        video_file_url: videoFileUrl
    """

    _ELEMENTS = (
        E("announcement_interruption", "announcementInterruption", str, is_required=True),
        E("interruption_digit_sequence", "interruptionDigitSequence", str),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file", "audioFile", OCI.AnnouncementFileKey, is_complex=True),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file", "videoFile", OCI.AnnouncementFileKey, is_complex=True),
        E("video_file_url", "videoFileUrl", str),
    )

    announcement_interruption: str = Field(type=str, required=True, mutable=False)
    interruption_digit_sequence: str = Field(type=str, required=False, mutable=False)
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file: "OCI.AnnouncementFileKey" = Field(
        type=OCI.AnnouncementFileKey, required=False, mutable=False,
    )
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file: "OCI.AnnouncementFileKey" = Field(
        type=OCI.AnnouncementFileKey, required=False, mutable=False,
    )
    video_file_url: str = Field(type=str, required=False, mutable=False)


class GroupPreferredCarrierGroupGetResponse(OCIResponse):
    """
    Response to a ``GroupPreferredCarrierGroupGetRequest()``.


    Attributes:
        intra_lata_carrier: intraLataCarrier
        inter_lata_carrier: interLataCarrier
        international_carrier: internationalCarrier
    """

    _ELEMENTS = (
        E(
            "intra_lata_carrier", "intraLataCarrier", OCI.GroupPreferredCarrierName,
            is_complex=True, is_required=True,
        ),
        E(
            "inter_lata_carrier", "interLataCarrier", OCI.GroupPreferredCarrierName,
            is_complex=True, is_required=True,
        ),
        E(
            "international_carrier", "internationalCarrier",
            OCI.GroupPreferredCarrierName, is_complex=True, is_required=True,
        ),
    )

    intra_lata_carrier: "OCI.GroupPreferredCarrierName" = Field(
        type=OCI.GroupPreferredCarrierName, required=True, mutable=False,
    )
    inter_lata_carrier: "OCI.GroupPreferredCarrierName" = Field(
        type=OCI.GroupPreferredCarrierName, required=True, mutable=False,
    )
    international_carrier: "OCI.GroupPreferredCarrierName" = Field(
        type=OCI.GroupPreferredCarrierName, required=True, mutable=False,
    )


class GroupRoutePointForcedForwardingGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointForcedForwardingGetRequest()``.


    Attributes:
        is_active: isActive
        forward_to_phone_number: forwardToPhoneNumber
        play_announcement_before_forwarding: playAnnouncementBeforeForwarding
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "play_announcement_before_forwarding", "playAnnouncementBeforeForwarding",
            bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_forwarding: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupRoutePointHolidayServiceGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointHolidayServiceGetRequest()``.


    Attributes:
        action: action
        holiday_schedule: holidaySchedule
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("holiday_schedule", "holidaySchedule", str),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    holiday_schedule: str = Field(type=str, required=False, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupRoutePointHolidayServiceGetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupRoutePointHolidayServiceGetRequest17sp1()``.


    Attributes:
        action: action
        holiday_schedule: holidaySchedule
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupRoutePointNightServiceGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointNightServiceGetRequest()``.


    Attributes:
        action: action
        business_hours: businessHours
        force_night_service: forceNightService
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
        manual_announcement_mode: manualAnnouncementMode
        manual_audio_message_selection: manualAudioMessageSelection
        manual_audio_url_list: manualAudioUrlList
        manual_audio_file_list: manualAudioFileList
        manual_audio_media_type_list: manualAudioMediaTypeList
        manual_video_message_selection: manualVideoMessageSelection
        manual_video_url_list: manualVideoUrlList
        manual_video_file_list: manualVideoFileList
        manual_video_media_type_list: manualVideoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("business_hours", "businessHours", str),
        E("force_night_service", "forceNightService", bool, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("manual_announcement_mode", "manualAnnouncementMode", str, is_required=True),
        E(
            "manual_audio_message_selection", "manualAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_audio_url_list", "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_audio_file_list", "manualAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "manual_audio_media_type_list", "manualAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "manual_video_message_selection", "manualVideoMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_video_url_list", "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_video_file_list", "manualVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "manual_video_media_type_list", "manualVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    business_hours: str = Field(type=str, required=False, mutable=False)
    force_night_service: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    manual_announcement_mode: str = Field(type=str, required=True, mutable=False)
    manual_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    manual_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    manual_video_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    manual_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupRoutePointNightServiceGetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupRoutePointNightServiceGetRequest17sp1()``.


    Attributes:
        action: action
        business_hours: businessHours
        force_night_service: forceNightService
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
        manual_announcement_mode: manualAnnouncementMode
        manual_audio_message_selection: manualAudioMessageSelection
        manual_audio_url_list: manualAudioUrlList
        manual_audio_file_list: manualAudioFileList
        manual_audio_media_type_list: manualAudioMediaTypeList
        manual_video_message_selection: manualVideoMessageSelection
        manual_video_url_list: manualVideoUrlList
        manual_video_file_list: manualVideoFileList
        manual_video_media_type_list: manualVideoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("force_night_service", "forceNightService", bool, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("manual_announcement_mode", "manualAnnouncementMode", str, is_required=True),
        E(
            "manual_audio_message_selection", "manualAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_audio_url_list", "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_audio_file_list", "manualAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "manual_audio_media_type_list", "manualAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "manual_video_message_selection", "manualVideoMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_video_url_list", "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_video_file_list", "manualVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "manual_video_media_type_list", "manualVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    force_night_service: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    manual_announcement_mode: str = Field(type=str, required=True, mutable=False)
    manual_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    manual_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    manual_video_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    manual_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupRoutePointOverflowGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointOverflowGetRequest()`` .


    Attributes:
        action: action
        transfer_phone_number: transferPhoneNumber
        overflow_after_timeout: overflowAfterTimeout
        timeout_seconds: timeoutSeconds
        play_announcement_before_overflow_processing:
            playAnnouncementBeforeOverflowProcessing
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        audio_media_type_list: audioMediaTypeList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        video_media_type_list: videoMediaTypeList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("overflow_after_timeout", "overflowAfterTimeout", bool, is_required=True),
        E("timeout_seconds", "timeoutSeconds", int, is_required=True),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing", bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "audio_media_type_list", "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementDescriptionList,
            is_complex=True,
        ),
        E(
            "video_media_type_list", "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    overflow_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    timeout_seconds: int = Field(type=int, required=True, mutable=False)
    play_announcement_before_overflow_processing: bool = Field(
        type=bool, required=True, mutable=False,
    )
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )


class GroupRoutePointQueueCallDispositionCodeSettingsGetResponse(OCIResponse):
    """
    Response to ``GroupRoutePointQueueCallDispositionCodeSettingsGetRequest()``.


    Attributes:
        enable_call_disposition_codes: enableCallDispositionCodes
        include_organization_codes: includeOrganizationCodes
        force_use_of_call_disposition_codes: forceUseOfCallDispositionCodes
        default_call_disposition_code: defaultCallDispositionCode
    """

    _ELEMENTS = (
        E(
            "enable_call_disposition_codes", "enableCallDispositionCodes", bool,
            is_required=True,
        ),
        E("include_organization_codes", "includeOrganizationCodes", bool, is_required=True),
        E(
            "force_use_of_call_disposition_codes", "forceUseOfCallDispositionCodes", bool,
            is_required=True,
        ),
        E(
            "default_call_disposition_code", "defaultCallDispositionCode",
            OCI.CallDispositionCodeWithLevel, is_complex=True,
        ),
    )

    enable_call_disposition_codes: bool = Field(type=bool, required=True, mutable=False)
    include_organization_codes: bool = Field(type=bool, required=True, mutable=False)
    force_use_of_call_disposition_codes: bool = Field(type=bool, required=True, mutable=False)
    default_call_disposition_code: "OCI.CallDispositionCodeWithLevel" = Field(
        type=OCI.CallDispositionCodeWithLevel, required=False, mutable=False,
    )


class GroupScheduleGetEventResponse(OCIResponse):
    """
    Response to ``GroupScheduleGetEventRequest()``.

    The response contains the event of the group schedule.

    Attributes:
        start_date: startDate
        all_day_event: allDayEvent
        start_time: startTime
        end_time: endTime
        end_date: endDate
        recurrence: recurrence
    """

    _ELEMENTS = (
        E("start_date", "startDate", str, is_required=True),
        E("all_day_event", "allDayEvent", bool),
        E("start_time", "startTime", OCI.HourMinute, is_complex=True, is_required=True),
        E("end_time", "endTime", OCI.HourMinute, is_complex=True, is_required=True),
        E("end_date", "endDate", str, is_required=True),
        E("recurrence", "recurrence", OCI.Recurrence, is_complex=True),
    )

    start_date: str = Field(type=str, required=True, mutable=False)
    all_day_event: bool = Field(type=bool, required=False, mutable=False)
    start_time: "OCI.HourMinute" = Field(type=OCI.HourMinute, required=True, mutable=False)
    end_time: "OCI.HourMinute" = Field(type=OCI.HourMinute, required=True, mutable=False)
    end_date: str = Field(type=str, required=True, mutable=False)
    recurrence: "OCI.Recurrence" = Field(type=OCI.Recurrence, required=False, mutable=False)


class GroupSessionAdmissionControlGetAvailableDeviceListResponse(OCIResponse):
    """
    Response to ``GroupSessionAdmissionControlGetAvailableDeviceListRequest()``.

    Contains a table of devices can be assigned to session admission control group in the
    group.

    Attributes:
        access_device: accessDevice
    """

    _ELEMENTS = (
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True, is_array=True),
    )

    access_device: "List[OCI.AccessDevice]" = Field(type=list, required=False, mutable=False)


class GroupSessionAdmissionControlGroupGetResponse(OCIResponse):
    """
    Response to ``GroupSessionAdmissionControlGroupGetRequest()``.

    Returns the profile information for the session admission control group.

    Attributes:
        max_session: maxSession
        max_user_originating_sessions: maxUserOriginatingSessions
        max_user_terminating_sessions: maxUserTerminatingSessions
        reserved_session: reservedSession
        reserved_user_originating_sessions: reservedUserOriginatingSessions
        reserved_user_terminating_sessions: reservedUserTerminatingSessions
        default_group: defaultGroup
        count_intra_sac_group_sessions: countIntraSACGroupSessions
        devices: devices
    """

    _ELEMENTS = (
        E("max_session", "maxSession", int, is_required=True),
        E("max_user_originating_sessions", "maxUserOriginatingSessions", int),
        E("max_user_terminating_sessions", "maxUserTerminatingSessions", int),
        E("reserved_session", "reservedSession", int, is_required=True),
        E("reserved_user_originating_sessions", "reservedUserOriginatingSessions", int),
        E("reserved_user_terminating_sessions", "reservedUserTerminatingSessions", int),
        E("default_group", "defaultGroup", bool, is_required=True),
        E(
            "count_intra_sac_group_sessions", "countIntraSACGroupSessions", bool,
            is_required=True,
        ),
        E("devices", "devices", OCI.AccessDevice, is_complex=True, is_array=True),
    )

    max_session: int = Field(type=int, required=True, mutable=False)
    max_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    max_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    reserved_session: int = Field(type=int, required=True, mutable=False)
    reserved_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    reserved_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    default_group: bool = Field(type=bool, required=True, mutable=False)
    count_intra_sac_group_sessions: bool = Field(type=bool, required=True, mutable=False)
    devices: "List[OCI.AccessDevice]" = Field(type=list, required=False, mutable=False)


class GroupSessionAdmissionControlGroupGetResponse19sp1(OCIResponse):
    """
    Response to ``GroupSessionAdmissionControlGroupGetRequest19sp1()``.

    Returns the profile information for the session admission control group.

    Attributes:
        max_session: maxSession
        max_user_originating_sessions: maxUserOriginatingSessions
        max_user_terminating_sessions: maxUserTerminatingSessions
        reserved_session: reservedSession
        reserved_user_originating_sessions: reservedUserOriginatingSessions
        reserved_user_terminating_sessions: reservedUserTerminatingSessions
        default_group: defaultGroup
        count_intra_sac_group_sessions: countIntraSACGroupSessions
        devices: devices
        block_emergency_and_repair_calls_due_to_sac_limits:
            blockEmergencyAndRepairCallsDueToSACLimits
    """

    _ELEMENTS = (
        E("max_session", "maxSession", int, is_required=True),
        E("max_user_originating_sessions", "maxUserOriginatingSessions", int),
        E("max_user_terminating_sessions", "maxUserTerminatingSessions", int),
        E("reserved_session", "reservedSession", int, is_required=True),
        E("reserved_user_originating_sessions", "reservedUserOriginatingSessions", int),
        E("reserved_user_terminating_sessions", "reservedUserTerminatingSessions", int),
        E("default_group", "defaultGroup", bool, is_required=True),
        E(
            "count_intra_sac_group_sessions", "countIntraSACGroupSessions", bool,
            is_required=True,
        ),
        E("devices", "devices", OCI.AccessDevice, is_complex=True, is_array=True),
        E(
            "block_emergency_and_repair_calls_due_to_sac_limits",
            "blockEmergencyAndRepairCallsDueToSACLimits", bool, is_required=True,
        ),
    )

    max_session: int = Field(type=int, required=True, mutable=False)
    max_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    max_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    reserved_session: int = Field(type=int, required=True, mutable=False)
    reserved_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    reserved_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    default_group: bool = Field(type=bool, required=True, mutable=False)
    count_intra_sac_group_sessions: bool = Field(type=bool, required=True, mutable=False)
    devices: "List[OCI.AccessDevice]" = Field(type=list, required=False, mutable=False)
    block_emergency_and_repair_calls_due_to_sac_limits: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupTimeScheduleGetResponse(OCIResponse):
    """
    Response to the ``GroupTimeScheduleGetRequest()``.

    The response contains the group's time schedule information.

    Attributes:
        time_schedule_name: timeScheduleName
        time_interval01: timeInterval01
        time_interval02: timeInterval02
        time_interval03: timeInterval03
        time_interval04: timeInterval04
        time_interval05: timeInterval05
        time_interval06: timeInterval06
        time_interval07: timeInterval07
        time_interval08: timeInterval08
        time_interval09: timeInterval09
        time_interval10: timeInterval10
        time_interval11: timeInterval11
        time_interval12: timeInterval12
        time_interval13: timeInterval13
        time_interval14: timeInterval14
        time_interval15: timeInterval15
        time_interval16: timeInterval16
        time_interval17: timeInterval17
        time_interval18: timeInterval18
        time_interval19: timeInterval19
        time_interval20: timeInterval20
    """

    _ELEMENTS = (
        E("time_schedule_name", "timeScheduleName", str, is_required=True),
        E("time_interval01", "timeInterval01", OCI.TimeInterval, is_complex=True),
        E("time_interval02", "timeInterval02", OCI.TimeInterval, is_complex=True),
        E("time_interval03", "timeInterval03", OCI.TimeInterval, is_complex=True),
        E("time_interval04", "timeInterval04", OCI.TimeInterval, is_complex=True),
        E("time_interval05", "timeInterval05", OCI.TimeInterval, is_complex=True),
        E("time_interval06", "timeInterval06", OCI.TimeInterval, is_complex=True),
        E("time_interval07", "timeInterval07", OCI.TimeInterval, is_complex=True),
        E("time_interval08", "timeInterval08", OCI.TimeInterval, is_complex=True),
        E("time_interval09", "timeInterval09", OCI.TimeInterval, is_complex=True),
        E("time_interval10", "timeInterval10", OCI.TimeInterval, is_complex=True),
        E("time_interval11", "timeInterval11", OCI.TimeInterval, is_complex=True),
        E("time_interval12", "timeInterval12", OCI.TimeInterval, is_complex=True),
        E("time_interval13", "timeInterval13", OCI.TimeInterval, is_complex=True),
        E("time_interval14", "timeInterval14", OCI.TimeInterval, is_complex=True),
        E("time_interval15", "timeInterval15", OCI.TimeInterval, is_complex=True),
        E("time_interval16", "timeInterval16", OCI.TimeInterval, is_complex=True),
        E("time_interval17", "timeInterval17", OCI.TimeInterval, is_complex=True),
        E("time_interval18", "timeInterval18", OCI.TimeInterval, is_complex=True),
        E("time_interval19", "timeInterval19", OCI.TimeInterval, is_complex=True),
        E("time_interval20", "timeInterval20", OCI.TimeInterval, is_complex=True),
    )

    time_schedule_name: str = Field(type=str, required=True, mutable=False)
    time_interval01: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval02: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval03: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval04: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval05: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval06: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval07: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval08: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval09: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval10: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval11: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval12: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval13: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval14: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval15: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval16: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval17: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval18: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval19: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval20: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )


class GroupTrunkGroupGetInstanceResponse14sp4(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest14sp4()``.

    Returns the profile information for the Trunk Group.

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        unreachable_destination_trap_initial_calls: unreachableDestinationTrapInitialCalls
        unreachable_destination_trap_offset_calls: unreachableDestinationTrapOffsetCalls
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E(
            "unreachable_destination_trap_initial_calls",
            "unreachableDestinationTrapInitialCalls", int, is_required=True,
        ),
        E(
            "unreachable_destination_trap_offset_calls",
            "unreachableDestinationTrapOffsetCalls", int, is_required=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    unreachable_destination_trap_initial_calls: int = Field(
        type=int, required=True, mutable=False,
    )
    unreachable_destination_trap_offset_calls: int = Field(
        type=int, required=True, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)


class GroupTrunkGroupGetInstanceResponse14sp5(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest14sp5()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name".

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        unreachable_destination_trap_initial_calls: unreachableDestinationTrapInitialCalls
        unreachable_destination_trap_offset_calls: unreachableDestinationTrapOffsetCalls
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E(
            "unreachable_destination_trap_initial_calls",
            "unreachableDestinationTrapInitialCalls", int, is_required=True,
        ),
        E(
            "unreachable_destination_trap_offset_calls",
            "unreachableDestinationTrapOffsetCalls", int, is_required=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    unreachable_destination_trap_initial_calls: int = Field(
        type=int, required=True, mutable=False,
    )
    unreachable_destination_trap_offset_calls: int = Field(
        type=int, required=True, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)


class GroupTrunkGroupGetInstanceResponse14sp9(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest14sp9()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name".

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        unreachable_destination_trap_initial_calls: unreachableDestinationTrapInitialCalls
        unreachable_destination_trap_offset_calls: unreachableDestinationTrapOffsetCalls
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        use_pilot_user_calling_line_identity: usePilotUserCallingLineIdentity
        use_pilot_user_charge_number: usePilotUserChargeNumber
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E(
            "unreachable_destination_trap_initial_calls",
            "unreachableDestinationTrapInitialCalls", int, is_required=True,
        ),
        E(
            "unreachable_destination_trap_offset_calls",
            "unreachableDestinationTrapOffsetCalls", int, is_required=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "use_pilot_user_calling_line_identity", "usePilotUserCallingLineIdentity",
            bool, is_required=True,
        ),
        E("use_pilot_user_charge_number", "usePilotUserChargeNumber", bool, is_required=True),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    unreachable_destination_trap_initial_calls: int = Field(
        type=int, required=True, mutable=False,
    )
    unreachable_destination_trap_offset_calls: int = Field(
        type=int, required=True, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    use_pilot_user_calling_line_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_pilot_user_charge_number: bool = Field(type=bool, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )


class GroupTrunkGroupGetInstanceResponse15(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest15()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name".

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)


class GroupTrunkGroupGetInstanceResponse15sp2(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest15sp2()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name".

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        pilot_user_calling_line_identity_policy: pilotUserCallingLineIdentityPolicy
        pilot_user_charge_number_policy: pilotUserChargeNumberPolicy
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy", str, is_required=True,
        ),
        E(
            "pilot_user_charge_number_policy", "pilotUserChargeNumberPolicy", str,
            is_required=True,
        ),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    pilot_user_charge_number_policy: str = Field(type=str, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )


class GroupTrunkGroupGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest17()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name".

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        pilot_user_calling_line_identity_policy: pilotUserCallingLineIdentityPolicy
        pilot_user_charge_number_policy: pilotUserChargeNumberPolicy
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
        peering_domain: peeringDomain
        route_to_peering_domain: routeToPeeringDomain
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy", str, is_required=True,
        ),
        E(
            "pilot_user_charge_number_policy", "pilotUserChargeNumberPolicy", str,
            is_required=True,
        ),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E("peering_domain", "peeringDomain", str),
        E("route_to_peering_domain", "routeToPeeringDomain", bool, is_required=True),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    pilot_user_charge_number_policy: str = Field(type=str, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    peering_domain: str = Field(type=str, required=False, mutable=False)
    route_to_peering_domain: bool = Field(type=bool, required=True, mutable=False)


class GroupTrunkGroupGetInstanceResponse17sp3(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest17sp3()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name".

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        pilot_user_calling_line_identity_policy: pilotUserCallingLineIdentityPolicy
        pilot_user_charge_number_policy: pilotUserChargeNumberPolicy
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
        peering_domain: peeringDomain
        route_to_peering_domain: routeToPeeringDomain
        prefix_enabled: prefixEnabled
        prefix: prefix
        stateful_rerouting_enabled: statefulReroutingEnabled
        send_continuous_options_message: sendContinuousOptionsMessage
        continuous_options_sending_interval_seconds:
            continuousOptionsSendingIntervalSeconds
        failure_options_sending_interval_seconds: failureOptionsSendingIntervalSeconds
        failure_threshold_counter: failureThresholdCounter
        success_threshold_counter: successThresholdCounter
        invite_failure_threshold_counter: inviteFailureThresholdCounter
        invite_failure_threshold_window_seconds: inviteFailureThresholdWindowSeconds
        trunk_group_state: trunkGroupState
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy", str, is_required=True,
        ),
        E(
            "pilot_user_charge_number_policy", "pilotUserChargeNumberPolicy", str,
            is_required=True,
        ),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E("peering_domain", "peeringDomain", str),
        E("route_to_peering_domain", "routeToPeeringDomain", bool, is_required=True),
        E("prefix_enabled", "prefixEnabled", bool, is_required=True),
        E("prefix", "prefix", str),
        E("stateful_rerouting_enabled", "statefulReroutingEnabled", bool, is_required=True),
        E(
            "send_continuous_options_message", "sendContinuousOptionsMessage", bool,
            is_required=True,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E("failure_threshold_counter", "failureThresholdCounter", int, is_required=True),
        E("success_threshold_counter", "successThresholdCounter", int, is_required=True),
        E(
            "invite_failure_threshold_counter", "inviteFailureThresholdCounter", int,
            is_required=True,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds", int, is_required=True,
        ),
        E("trunk_group_state", "trunkGroupState", str, is_required=True),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    pilot_user_charge_number_policy: str = Field(type=str, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    peering_domain: str = Field(type=str, required=False, mutable=False)
    route_to_peering_domain: bool = Field(type=bool, required=True, mutable=False)
    prefix_enabled: bool = Field(type=bool, required=True, mutable=False)
    prefix: str = Field(type=str, required=False, mutable=False)
    stateful_rerouting_enabled: bool = Field(type=bool, required=True, mutable=False)
    send_continuous_options_message: bool = Field(type=bool, required=True, mutable=False)
    continuous_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    success_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_window_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    trunk_group_state: str = Field(type=str, required=True, mutable=False)


class GroupTrunkGroupGetInstanceResponse17sp4(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest17sp4()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address".

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        allow_termination_to_trunk_group_identity: allowTerminationToTrunkGroupIdentity
        allow_termination_to_dtg_identity: allowTerminationToDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        include_trunk_group_identity_for_network_calls:
            includeTrunkGroupIdentityForNetworkCalls
        include_otg_identity_for_network_calls: includeOtgIdentityForNetworkCalls
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        pilot_user_calling_line_identity_policy: pilotUserCallingLineIdentityPolicy
        pilot_user_charge_number_policy: pilotUserChargeNumberPolicy
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
        peering_domain: peeringDomain
        route_to_peering_domain: routeToPeeringDomain
        prefix_enabled: prefixEnabled
        prefix: prefix
        stateful_rerouting_enabled: statefulReroutingEnabled
        send_continuous_options_message: sendContinuousOptionsMessage
        continuous_options_sending_interval_seconds:
            continuousOptionsSendingIntervalSeconds
        failure_options_sending_interval_seconds: failureOptionsSendingIntervalSeconds
        failure_threshold_counter: failureThresholdCounter
        success_threshold_counter: successThresholdCounter
        invite_failure_threshold_counter: inviteFailureThresholdCounter
        invite_failure_threshold_window_seconds: inviteFailureThresholdWindowSeconds
        trunk_group_state: trunkGroupState
        pilot_user_calling_line_asserted_identity_policy:
            pilotUserCallingLineAssertedIdentityPolicy
        use_system_calling_line_asserted_identity_policy:
            useSystemCallingLineAssertedIdentityPolicy
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity", bool, is_required=True,
        ),
        E(
            "allow_termination_to_dtg_identity", "allowTerminationToDtgIdentity", bool,
            is_required=True,
        ),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls", bool, is_required=True,
        ),
        E(
            "include_otg_identity_for_network_calls", "includeOtgIdentityForNetworkCalls",
            bool, is_required=True,
        ),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy", str, is_required=True,
        ),
        E(
            "pilot_user_charge_number_policy", "pilotUserChargeNumberPolicy", str,
            is_required=True,
        ),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E("peering_domain", "peeringDomain", str),
        E("route_to_peering_domain", "routeToPeeringDomain", bool, is_required=True),
        E("prefix_enabled", "prefixEnabled", bool, is_required=True),
        E("prefix", "prefix", str),
        E("stateful_rerouting_enabled", "statefulReroutingEnabled", bool, is_required=True),
        E(
            "send_continuous_options_message", "sendContinuousOptionsMessage", bool,
            is_required=True,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E("failure_threshold_counter", "failureThresholdCounter", int, is_required=True),
        E("success_threshold_counter", "successThresholdCounter", int, is_required=True),
        E(
            "invite_failure_threshold_counter", "inviteFailureThresholdCounter", int,
            is_required=True,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds", int, is_required=True,
        ),
        E("trunk_group_state", "trunkGroupState", str, is_required=True),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy", str, is_required=True,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy", bool, is_required=True,
        ),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    allow_termination_to_trunk_group_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_termination_to_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_otg_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    pilot_user_charge_number_policy: str = Field(type=str, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    peering_domain: str = Field(type=str, required=False, mutable=False)
    route_to_peering_domain: bool = Field(type=bool, required=True, mutable=False)
    prefix_enabled: bool = Field(type=bool, required=True, mutable=False)
    prefix: str = Field(type=str, required=False, mutable=False)
    stateful_rerouting_enabled: bool = Field(type=bool, required=True, mutable=False)
    send_continuous_options_message: bool = Field(type=bool, required=True, mutable=False)
    continuous_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    success_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_window_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    trunk_group_state: str = Field(type=str, required=True, mutable=False)
    pilot_user_calling_line_asserted_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_system_calling_line_asserted_identity_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupTrunkGroupGetInstanceResponse19(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest19()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address".
    Replaced by ``GroupTrunkGroupGetInstanceResponse19sp1()``.

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        allow_termination_to_trunk_group_identity: allowTerminationToTrunkGroupIdentity
        allow_termination_to_dtg_identity: allowTerminationToDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        include_trunk_group_identity_for_network_calls:
            includeTrunkGroupIdentityForNetworkCalls
        include_otg_identity_for_network_calls: includeOtgIdentityForNetworkCalls
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        pilot_user_calling_line_identity_policy: pilotUserCallingLineIdentityPolicy
        pilot_user_charge_number_policy: pilotUserChargeNumberPolicy
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
        peering_domain: peeringDomain
        route_to_peering_domain: routeToPeeringDomain
        prefix_enabled: prefixEnabled
        prefix: prefix
        stateful_rerouting_enabled: statefulReroutingEnabled
        send_continuous_options_message: sendContinuousOptionsMessage
        continuous_options_sending_interval_seconds:
            continuousOptionsSendingIntervalSeconds
        failure_options_sending_interval_seconds: failureOptionsSendingIntervalSeconds
        failure_threshold_counter: failureThresholdCounter
        success_threshold_counter: successThresholdCounter
        invite_failure_threshold_counter: inviteFailureThresholdCounter
        invite_failure_threshold_window_seconds: inviteFailureThresholdWindowSeconds
        trunk_group_state: trunkGroupState
        pilot_user_calling_line_asserted_identity_policy:
            pilotUserCallingLineAssertedIdentityPolicy
        use_system_calling_line_asserted_identity_policy:
            useSystemCallingLineAssertedIdentityPolicy
        total_active_incoming_calls: totalActiveIncomingCalls
        total_active_outgoing_calls: totalActiveOutgoingCalls
        pilot_user_call_optimization_policy: pilotUserCallOptimizationPolicy
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity", bool, is_required=True,
        ),
        E(
            "allow_termination_to_dtg_identity", "allowTerminationToDtgIdentity", bool,
            is_required=True,
        ),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls", bool, is_required=True,
        ),
        E(
            "include_otg_identity_for_network_calls", "includeOtgIdentityForNetworkCalls",
            bool, is_required=True,
        ),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy", str, is_required=True,
        ),
        E(
            "pilot_user_charge_number_policy", "pilotUserChargeNumberPolicy", str,
            is_required=True,
        ),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E("peering_domain", "peeringDomain", str),
        E("route_to_peering_domain", "routeToPeeringDomain", bool, is_required=True),
        E("prefix_enabled", "prefixEnabled", bool, is_required=True),
        E("prefix", "prefix", str),
        E("stateful_rerouting_enabled", "statefulReroutingEnabled", bool, is_required=True),
        E(
            "send_continuous_options_message", "sendContinuousOptionsMessage", bool,
            is_required=True,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E("failure_threshold_counter", "failureThresholdCounter", int, is_required=True),
        E("success_threshold_counter", "successThresholdCounter", int, is_required=True),
        E(
            "invite_failure_threshold_counter", "inviteFailureThresholdCounter", int,
            is_required=True,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds", int, is_required=True,
        ),
        E("trunk_group_state", "trunkGroupState", str, is_required=True),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy", str, is_required=True,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy", bool, is_required=True,
        ),
        E("total_active_incoming_calls", "totalActiveIncomingCalls", int, is_required=True),
        E("total_active_outgoing_calls", "totalActiveOutgoingCalls", int, is_required=True),
        E(
            "pilot_user_call_optimization_policy", "pilotUserCallOptimizationPolicy", str,
            is_required=True,
        ),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    allow_termination_to_trunk_group_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_termination_to_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_otg_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    pilot_user_charge_number_policy: str = Field(type=str, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    peering_domain: str = Field(type=str, required=False, mutable=False)
    route_to_peering_domain: bool = Field(type=bool, required=True, mutable=False)
    prefix_enabled: bool = Field(type=bool, required=True, mutable=False)
    prefix: str = Field(type=str, required=False, mutable=False)
    stateful_rerouting_enabled: bool = Field(type=bool, required=True, mutable=False)
    send_continuous_options_message: bool = Field(type=bool, required=True, mutable=False)
    continuous_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    success_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_window_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    trunk_group_state: str = Field(type=str, required=True, mutable=False)
    pilot_user_calling_line_asserted_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_system_calling_line_asserted_identity_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    total_active_incoming_calls: int = Field(type=int, required=True, mutable=False)
    total_active_outgoing_calls: int = Field(type=int, required=True, mutable=False)
    pilot_user_call_optimization_policy: str = Field(type=str, required=True, mutable=False)


class GroupTrunkGroupGetInstanceResponse19V2(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest19V2()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address".
    Replaced by GroupTrunkGroupGetInstanceResponse19sp1V2.

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        allow_termination_to_trunk_group_identity: allowTerminationToTrunkGroupIdentity
        allow_termination_to_dtg_identity: allowTerminationToDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        include_trunk_group_identity_for_network_calls:
            includeTrunkGroupIdentityForNetworkCalls
        include_otg_identity_for_network_calls: includeOtgIdentityForNetworkCalls
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        pilot_user_calling_line_identity_policy: pilotUserCallingLineIdentityPolicy
        pilot_user_charge_number_policy: pilotUserChargeNumberPolicy
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
        peering_domain: peeringDomain
        route_to_peering_domain: routeToPeeringDomain
        prefix_enabled: prefixEnabled
        prefix: prefix
        stateful_rerouting_enabled: statefulReroutingEnabled
        send_continuous_options_message: sendContinuousOptionsMessage
        continuous_options_sending_interval_seconds:
            continuousOptionsSendingIntervalSeconds
        failure_options_sending_interval_seconds: failureOptionsSendingIntervalSeconds
        failure_threshold_counter: failureThresholdCounter
        success_threshold_counter: successThresholdCounter
        invite_failure_threshold_counter: inviteFailureThresholdCounter
        invite_failure_threshold_window_seconds: inviteFailureThresholdWindowSeconds
        trunk_group_state: trunkGroupState
        pilot_user_calling_line_asserted_identity_policy:
            pilotUserCallingLineAssertedIdentityPolicy
        use_system_calling_line_asserted_identity_policy:
            useSystemCallingLineAssertedIdentityPolicy
        total_active_incoming_calls: totalActiveIncomingCalls
        total_active_outgoing_calls: totalActiveOutgoingCalls
        pilot_user_call_optimization_policy: pilotUserCallOptimizationPolicy
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity", bool, is_required=True,
        ),
        E(
            "allow_termination_to_dtg_identity", "allowTerminationToDtgIdentity", bool,
            is_required=True,
        ),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls", bool, is_required=True,
        ),
        E(
            "include_otg_identity_for_network_calls", "includeOtgIdentityForNetworkCalls",
            bool, is_required=True,
        ),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy", str, is_required=True,
        ),
        E(
            "pilot_user_charge_number_policy", "pilotUserChargeNumberPolicy", str,
            is_required=True,
        ),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E("peering_domain", "peeringDomain", str),
        E("route_to_peering_domain", "routeToPeeringDomain", bool, is_required=True),
        E("prefix_enabled", "prefixEnabled", bool, is_required=True),
        E("prefix", "prefix", str),
        E("stateful_rerouting_enabled", "statefulReroutingEnabled", bool, is_required=True),
        E(
            "send_continuous_options_message", "sendContinuousOptionsMessage", bool,
            is_required=True,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E("failure_threshold_counter", "failureThresholdCounter", int, is_required=True),
        E("success_threshold_counter", "successThresholdCounter", int, is_required=True),
        E(
            "invite_failure_threshold_counter", "inviteFailureThresholdCounter", int,
            is_required=True,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds", int, is_required=True,
        ),
        E("trunk_group_state", "trunkGroupState", str, is_required=True),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy", str, is_required=True,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy", bool, is_required=True,
        ),
        E("total_active_incoming_calls", "totalActiveIncomingCalls", int, is_required=True),
        E("total_active_outgoing_calls", "totalActiveOutgoingCalls", int, is_required=True),
        E(
            "pilot_user_call_optimization_policy", "pilotUserCallOptimizationPolicy", str,
            is_required=True,
        ),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    allow_termination_to_trunk_group_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_termination_to_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_otg_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    pilot_user_charge_number_policy: str = Field(type=str, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    peering_domain: str = Field(type=str, required=False, mutable=False)
    route_to_peering_domain: bool = Field(type=bool, required=True, mutable=False)
    prefix_enabled: bool = Field(type=bool, required=True, mutable=False)
    prefix: str = Field(type=str, required=False, mutable=False)
    stateful_rerouting_enabled: bool = Field(type=bool, required=True, mutable=False)
    send_continuous_options_message: bool = Field(type=bool, required=True, mutable=False)
    continuous_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    success_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_window_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    trunk_group_state: str = Field(type=str, required=True, mutable=False)
    pilot_user_calling_line_asserted_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_system_calling_line_asserted_identity_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    total_active_incoming_calls: int = Field(type=int, required=True, mutable=False)
    total_active_outgoing_calls: int = Field(type=int, required=True, mutable=False)
    pilot_user_call_optimization_policy: str = Field(type=str, required=True, mutable=False)


class GroupTrunkGroupGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest19sp1()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address".
    Replaced by GroupTrunkGroupGetInstanceResponse19sp1V2.

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        allow_termination_to_trunk_group_identity: allowTerminationToTrunkGroupIdentity
        allow_termination_to_dtg_identity: allowTerminationToDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        include_trunk_group_identity_for_network_calls:
            includeTrunkGroupIdentityForNetworkCalls
        include_otg_identity_for_network_calls: includeOtgIdentityForNetworkCalls
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        pilot_user_calling_line_identity_for_external_calls_policy:
            pilotUserCallingLineIdentityForExternalCallsPolicy
        pilot_user_charge_number_policy: pilotUserChargeNumberPolicy
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
        peering_domain: peeringDomain
        route_to_peering_domain: routeToPeeringDomain
        prefix_enabled: prefixEnabled
        prefix: prefix
        stateful_rerouting_enabled: statefulReroutingEnabled
        send_continuous_options_message: sendContinuousOptionsMessage
        continuous_options_sending_interval_seconds:
            continuousOptionsSendingIntervalSeconds
        failure_options_sending_interval_seconds: failureOptionsSendingIntervalSeconds
        failure_threshold_counter: failureThresholdCounter
        success_threshold_counter: successThresholdCounter
        invite_failure_threshold_counter: inviteFailureThresholdCounter
        invite_failure_threshold_window_seconds: inviteFailureThresholdWindowSeconds
        trunk_group_state: trunkGroupState
        pilot_user_calling_line_asserted_identity_policy:
            pilotUserCallingLineAssertedIdentityPolicy
        use_system_calling_line_asserted_identity_policy:
            useSystemCallingLineAssertedIdentityPolicy
        total_active_incoming_calls: totalActiveIncomingCalls
        total_active_outgoing_calls: totalActiveOutgoingCalls
        pilot_user_call_optimization_policy: pilotUserCallOptimizationPolicy
        clid_source_for_screened_calls_policy: clidSourceForScreenedCallsPolicy
        use_system_clid_source_for_screened_calls_policy:
            useSystemCLIDSourceForScreenedCallsPolicy
        user_lookup_policy: userLookupPolicy
        use_system_user_lookup_policy: useSystemUserLookupPolicy
        pilot_user_calling_line_identity_for_emergency_calls_policy:
            pilotUserCallingLineIdentityForEmergencyCallsPolicy
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity", bool, is_required=True,
        ),
        E(
            "allow_termination_to_dtg_identity", "allowTerminationToDtgIdentity", bool,
            is_required=True,
        ),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls", bool, is_required=True,
        ),
        E(
            "include_otg_identity_for_network_calls", "includeOtgIdentityForNetworkCalls",
            bool, is_required=True,
        ),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_for_external_calls_policy",
            "pilotUserCallingLineIdentityForExternalCallsPolicy", str, is_required=True,
        ),
        E(
            "pilot_user_charge_number_policy", "pilotUserChargeNumberPolicy", str,
            is_required=True,
        ),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E("peering_domain", "peeringDomain", str),
        E("route_to_peering_domain", "routeToPeeringDomain", bool, is_required=True),
        E("prefix_enabled", "prefixEnabled", bool, is_required=True),
        E("prefix", "prefix", str),
        E("stateful_rerouting_enabled", "statefulReroutingEnabled", bool, is_required=True),
        E(
            "send_continuous_options_message", "sendContinuousOptionsMessage", bool,
            is_required=True,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E("failure_threshold_counter", "failureThresholdCounter", int, is_required=True),
        E("success_threshold_counter", "successThresholdCounter", int, is_required=True),
        E(
            "invite_failure_threshold_counter", "inviteFailureThresholdCounter", int,
            is_required=True,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds", int, is_required=True,
        ),
        E("trunk_group_state", "trunkGroupState", str, is_required=True),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy", str, is_required=True,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy", bool, is_required=True,
        ),
        E("total_active_incoming_calls", "totalActiveIncomingCalls", int, is_required=True),
        E("total_active_outgoing_calls", "totalActiveOutgoingCalls", int, is_required=True),
        E(
            "pilot_user_call_optimization_policy", "pilotUserCallOptimizationPolicy", str,
            is_required=True,
        ),
        E(
            "clid_source_for_screened_calls_policy", "clidSourceForScreenedCallsPolicy",
            str, is_required=True,
        ),
        E(
            "use_system_clid_source_for_screened_calls_policy",
            "useSystemCLIDSourceForScreenedCallsPolicy", bool, is_required=True,
        ),
        E("user_lookup_policy", "userLookupPolicy", str, is_required=True),
        E(
            "use_system_user_lookup_policy", "useSystemUserLookupPolicy", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_for_emergency_calls_policy",
            "pilotUserCallingLineIdentityForEmergencyCallsPolicy", str, is_required=True,
        ),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    allow_termination_to_trunk_group_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_termination_to_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_otg_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_for_external_calls_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    pilot_user_charge_number_policy: str = Field(type=str, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    peering_domain: str = Field(type=str, required=False, mutable=False)
    route_to_peering_domain: bool = Field(type=bool, required=True, mutable=False)
    prefix_enabled: bool = Field(type=bool, required=True, mutable=False)
    prefix: str = Field(type=str, required=False, mutable=False)
    stateful_rerouting_enabled: bool = Field(type=bool, required=True, mutable=False)
    send_continuous_options_message: bool = Field(type=bool, required=True, mutable=False)
    continuous_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    success_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_window_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    trunk_group_state: str = Field(type=str, required=True, mutable=False)
    pilot_user_calling_line_asserted_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_system_calling_line_asserted_identity_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    total_active_incoming_calls: int = Field(type=int, required=True, mutable=False)
    total_active_outgoing_calls: int = Field(type=int, required=True, mutable=False)
    pilot_user_call_optimization_policy: str = Field(type=str, required=True, mutable=False)
    clid_source_for_screened_calls_policy: str = Field(type=str, required=True, mutable=False)
    use_system_clid_source_for_screened_calls_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    user_lookup_policy: str = Field(type=str, required=True, mutable=False)
    use_system_user_lookup_policy: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_for_emergency_calls_policy: str = Field(
        type=str, required=True, mutable=False,
    )


class GroupTrunkGroupGetInstanceResponse20sp1(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest20sp1()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address".
    Replaced by: ``GroupTrunkGroupGetInstanceResponse21()``

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        allow_termination_to_trunk_group_identity: allowTerminationToTrunkGroupIdentity
        allow_termination_to_dtg_identity: allowTerminationToDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        include_trunk_group_identity_for_network_calls:
            includeTrunkGroupIdentityForNetworkCalls
        include_otg_identity_for_network_calls: includeOtgIdentityForNetworkCalls
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        pilot_user_calling_line_identity_for_external_calls_policy:
            pilotUserCallingLineIdentityForExternalCallsPolicy
        pilot_user_charge_number_policy: pilotUserChargeNumberPolicy
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
        peering_domain: peeringDomain
        route_to_peering_domain: routeToPeeringDomain
        prefix_enabled: prefixEnabled
        prefix: prefix
        stateful_rerouting_enabled: statefulReroutingEnabled
        send_continuous_options_message: sendContinuousOptionsMessage
        continuous_options_sending_interval_seconds:
            continuousOptionsSendingIntervalSeconds
        failure_options_sending_interval_seconds: failureOptionsSendingIntervalSeconds
        failure_threshold_counter: failureThresholdCounter
        success_threshold_counter: successThresholdCounter
        invite_failure_threshold_counter: inviteFailureThresholdCounter
        invite_failure_threshold_window_seconds: inviteFailureThresholdWindowSeconds
        trunk_group_state: trunkGroupState
        pilot_user_calling_line_asserted_identity_policy:
            pilotUserCallingLineAssertedIdentityPolicy
        use_system_calling_line_asserted_identity_policy:
            useSystemCallingLineAssertedIdentityPolicy
        total_active_incoming_calls: totalActiveIncomingCalls
        total_active_outgoing_calls: totalActiveOutgoingCalls
        pilot_user_call_optimization_policy: pilotUserCallOptimizationPolicy
        clid_source_for_screened_calls_policy: clidSourceForScreenedCallsPolicy
        use_system_clid_source_for_screened_calls_policy:
            useSystemCLIDSourceForScreenedCallsPolicy
        user_lookup_policy: userLookupPolicy
        use_system_user_lookup_policy: useSystemUserLookupPolicy
        pilot_user_calling_line_identity_for_emergency_calls_policy:
            pilotUserCallingLineIdentityForEmergencyCallsPolicy
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity", bool, is_required=True,
        ),
        E(
            "allow_termination_to_dtg_identity", "allowTerminationToDtgIdentity", bool,
            is_required=True,
        ),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls", bool, is_required=True,
        ),
        E(
            "include_otg_identity_for_network_calls", "includeOtgIdentityForNetworkCalls",
            bool, is_required=True,
        ),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_for_external_calls_policy",
            "pilotUserCallingLineIdentityForExternalCallsPolicy", str, is_required=True,
        ),
        E(
            "pilot_user_charge_number_policy", "pilotUserChargeNumberPolicy", str,
            is_required=True,
        ),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E("peering_domain", "peeringDomain", str),
        E("route_to_peering_domain", "routeToPeeringDomain", bool, is_required=True),
        E("prefix_enabled", "prefixEnabled", bool, is_required=True),
        E("prefix", "prefix", str),
        E("stateful_rerouting_enabled", "statefulReroutingEnabled", bool, is_required=True),
        E(
            "send_continuous_options_message", "sendContinuousOptionsMessage", bool,
            is_required=True,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E("failure_threshold_counter", "failureThresholdCounter", int, is_required=True),
        E("success_threshold_counter", "successThresholdCounter", int, is_required=True),
        E(
            "invite_failure_threshold_counter", "inviteFailureThresholdCounter", int,
            is_required=True,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds", int, is_required=True,
        ),
        E("trunk_group_state", "trunkGroupState", str, is_required=True),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy", str, is_required=True,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy", bool, is_required=True,
        ),
        E("total_active_incoming_calls", "totalActiveIncomingCalls", int, is_required=True),
        E("total_active_outgoing_calls", "totalActiveOutgoingCalls", int, is_required=True),
        E(
            "pilot_user_call_optimization_policy", "pilotUserCallOptimizationPolicy", str,
            is_required=True,
        ),
        E(
            "clid_source_for_screened_calls_policy", "clidSourceForScreenedCallsPolicy",
            str, is_required=True,
        ),
        E(
            "use_system_clid_source_for_screened_calls_policy",
            "useSystemCLIDSourceForScreenedCallsPolicy", bool, is_required=True,
        ),
        E("user_lookup_policy", "userLookupPolicy", str, is_required=True),
        E(
            "use_system_user_lookup_policy", "useSystemUserLookupPolicy", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_for_emergency_calls_policy",
            "pilotUserCallingLineIdentityForEmergencyCallsPolicy", str, is_required=True,
        ),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    allow_termination_to_trunk_group_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_termination_to_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_otg_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_for_external_calls_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    pilot_user_charge_number_policy: str = Field(type=str, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    peering_domain: str = Field(type=str, required=False, mutable=False)
    route_to_peering_domain: bool = Field(type=bool, required=True, mutable=False)
    prefix_enabled: bool = Field(type=bool, required=True, mutable=False)
    prefix: str = Field(type=str, required=False, mutable=False)
    stateful_rerouting_enabled: bool = Field(type=bool, required=True, mutable=False)
    send_continuous_options_message: bool = Field(type=bool, required=True, mutable=False)
    continuous_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    success_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_window_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    trunk_group_state: str = Field(type=str, required=True, mutable=False)
    pilot_user_calling_line_asserted_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_system_calling_line_asserted_identity_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    total_active_incoming_calls: int = Field(type=int, required=True, mutable=False)
    total_active_outgoing_calls: int = Field(type=int, required=True, mutable=False)
    pilot_user_call_optimization_policy: str = Field(type=str, required=True, mutable=False)
    clid_source_for_screened_calls_policy: str = Field(type=str, required=True, mutable=False)
    use_system_clid_source_for_screened_calls_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    user_lookup_policy: str = Field(type=str, required=True, mutable=False)
    use_system_user_lookup_policy: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_for_emergency_calls_policy: str = Field(
        type=str, required=True, mutable=False,
    )


class GroupTrunkGroupGetInstanceResponse21(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest21()``.

    Returns the profile information for the Trunk Group.  Contains a hosted user table
    with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name",
    "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address".
    Following attributes are only used in IMS mode: implicitRegistrationSetSupportPolicy
    useSystemImplicitRegistrationSetSupportPolicy
    sipIdentityForPilotAndProxyTrunkModesPolicy
    useSystemSIPIdentityForPilotAndProxyTrunkModesPolicy

    Attributes:
        pilot_user_id: pilotUserId
        department: department
        access_device: accessDevice
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_key: capacityExceededRerouteTrunkGroupKey
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_key:
            unreachableDestinationRerouteTrunkGroupKey
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
        hosted_user_table: hostedUserTable
        trunk_group_identity: trunkGroupIdentity
        otg_dtg_identity: otgDtgIdentity
        allow_termination_to_trunk_group_identity: allowTerminationToTrunkGroupIdentity
        allow_termination_to_dtg_identity: allowTerminationToDtgIdentity
        include_trunk_group_identity: includeTrunkGroupIdentity
        include_dtg_identity: includeDtgIdentity
        include_trunk_group_identity_for_network_calls:
            includeTrunkGroupIdentityForNetworkCalls
        include_otg_identity_for_network_calls: includeOtgIdentityForNetworkCalls
        enable_network_address_identity: enableNetworkAddressIdentity
        allow_unscreened_calls: allowUnscreenedCalls
        allow_unscreened_emergency_calls: allowUnscreenedEmergencyCalls
        pilot_user_calling_line_identity_for_external_calls_policy:
            pilotUserCallingLineIdentityForExternalCallsPolicy
        pilot_user_charge_number_policy: pilotUserChargeNumberPolicy
        call_forwarding_always_action: callForwardingAlwaysAction
        call_forwarding_always_forward_address: callForwardingAlwaysForwardAddress
        call_forwarding_always_reroute_trunk_group_key:
            callForwardingAlwaysRerouteTrunkGroupKey
        peering_domain: peeringDomain
        route_to_peering_domain: routeToPeeringDomain
        prefix_enabled: prefixEnabled
        prefix: prefix
        stateful_rerouting_enabled: statefulReroutingEnabled
        send_continuous_options_message: sendContinuousOptionsMessage
        continuous_options_sending_interval_seconds:
            continuousOptionsSendingIntervalSeconds
        failure_options_sending_interval_seconds: failureOptionsSendingIntervalSeconds
        failure_threshold_counter: failureThresholdCounter
        success_threshold_counter: successThresholdCounter
        invite_failure_threshold_counter: inviteFailureThresholdCounter
        invite_failure_threshold_window_seconds: inviteFailureThresholdWindowSeconds
        trunk_group_state: trunkGroupState
        pilot_user_calling_line_asserted_identity_policy:
            pilotUserCallingLineAssertedIdentityPolicy
        use_system_calling_line_asserted_identity_policy:
            useSystemCallingLineAssertedIdentityPolicy
        total_active_incoming_calls: totalActiveIncomingCalls
        total_active_outgoing_calls: totalActiveOutgoingCalls
        pilot_user_call_optimization_policy: pilotUserCallOptimizationPolicy
        clid_source_for_screened_calls_policy: clidSourceForScreenedCallsPolicy
        use_system_clid_source_for_screened_calls_policy:
            useSystemCLIDSourceForScreenedCallsPolicy
        user_lookup_policy: userLookupPolicy
        use_system_user_lookup_policy: useSystemUserLookupPolicy
        pilot_user_calling_line_identity_for_emergency_calls_policy:
            pilotUserCallingLineIdentityForEmergencyCallsPolicy
        implicit_registration_set_support_policy: implicitRegistrationSetSupportPolicy
        use_system_implicit_registration_set_support_policy:
            useSystemImplicitRegistrationSetSupportPolicy
        sip_identity_for_pilot_and_proxy_trunk_modes_policy:
            sipIdentityForPilotAndProxyTrunkModesPolicy
        use_system_sip_identity_for_pilot_and_proxy_trunk_modes_policy:
            useSystemSIPIdentityForPilotAndProxyTrunkModesPolicy
        use_system_support_connected_identity_policy:
            useSystemSupportConnectedIdentityPolicy
        support_connected_identity_policy: supportConnectedIdentityPolicy
        use_system_options_message_response_status_codes:
            useSystemOptionsMessageResponseStatusCodes
        options_message_response_status_code: optionsMessageResponseStatusCode
    """

    _ELEMENTS = (
        E("pilot_user_id", "pilotUserId", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("access_device", "accessDevice", OCI.AccessDevice, is_complex=True),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey", OCI.TrunkGroupKey,
            is_complex=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
        E("hosted_user_table", "hostedUserTable", list, is_complex=True, is_table=True),
        E("trunk_group_identity", "trunkGroupIdentity", str),
        E("otg_dtg_identity", "otgDtgIdentity", str),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity", bool, is_required=True,
        ),
        E(
            "allow_termination_to_dtg_identity", "allowTerminationToDtgIdentity", bool,
            is_required=True,
        ),
        E(
            "include_trunk_group_identity", "includeTrunkGroupIdentity", bool,
            is_required=True,
        ),
        E("include_dtg_identity", "includeDtgIdentity", bool, is_required=True),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls", bool, is_required=True,
        ),
        E(
            "include_otg_identity_for_network_calls", "includeOtgIdentityForNetworkCalls",
            bool, is_required=True,
        ),
        E(
            "enable_network_address_identity", "enableNetworkAddressIdentity", bool,
            is_required=True,
        ),
        E("allow_unscreened_calls", "allowUnscreenedCalls", bool, is_required=True),
        E(
            "allow_unscreened_emergency_calls", "allowUnscreenedEmergencyCalls", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_for_external_calls_policy",
            "pilotUserCallingLineIdentityForExternalCallsPolicy", str, is_required=True,
        ),
        E(
            "pilot_user_charge_number_policy", "pilotUserChargeNumberPolicy", str,
            is_required=True,
        ),
        E("call_forwarding_always_action", "callForwardingAlwaysAction", str),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress", str,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey", OCI.TrunkGroupKey, is_complex=True,
        ),
        E("peering_domain", "peeringDomain", str),
        E("route_to_peering_domain", "routeToPeeringDomain", bool, is_required=True),
        E("prefix_enabled", "prefixEnabled", bool, is_required=True),
        E("prefix", "prefix", str),
        E("stateful_rerouting_enabled", "statefulReroutingEnabled", bool, is_required=True),
        E(
            "send_continuous_options_message", "sendContinuousOptionsMessage", bool,
            is_required=True,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds", int, is_required=True,
        ),
        E("failure_threshold_counter", "failureThresholdCounter", int, is_required=True),
        E("success_threshold_counter", "successThresholdCounter", int, is_required=True),
        E(
            "invite_failure_threshold_counter", "inviteFailureThresholdCounter", int,
            is_required=True,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds", int, is_required=True,
        ),
        E("trunk_group_state", "trunkGroupState", str, is_required=True),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy", str, is_required=True,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy", bool, is_required=True,
        ),
        E("total_active_incoming_calls", "totalActiveIncomingCalls", int, is_required=True),
        E("total_active_outgoing_calls", "totalActiveOutgoingCalls", int, is_required=True),
        E(
            "pilot_user_call_optimization_policy", "pilotUserCallOptimizationPolicy", str,
            is_required=True,
        ),
        E(
            "clid_source_for_screened_calls_policy", "clidSourceForScreenedCallsPolicy",
            str, is_required=True,
        ),
        E(
            "use_system_clid_source_for_screened_calls_policy",
            "useSystemCLIDSourceForScreenedCallsPolicy", bool, is_required=True,
        ),
        E("user_lookup_policy", "userLookupPolicy", str, is_required=True),
        E(
            "use_system_user_lookup_policy", "useSystemUserLookupPolicy", bool,
            is_required=True,
        ),
        E(
            "pilot_user_calling_line_identity_for_emergency_calls_policy",
            "pilotUserCallingLineIdentityForEmergencyCallsPolicy", str, is_required=True,
        ),
        E(
            "implicit_registration_set_support_policy",
            "implicitRegistrationSetSupportPolicy", str, is_required=True,
        ),
        E(
            "use_system_implicit_registration_set_support_policy",
            "useSystemImplicitRegistrationSetSupportPolicy", bool, is_required=True,
        ),
        E(
            "sip_identity_for_pilot_and_proxy_trunk_modes_policy",
            "sipIdentityForPilotAndProxyTrunkModesPolicy", str, is_required=True,
        ),
        E(
            "use_system_sip_identity_for_pilot_and_proxy_trunk_modes_policy",
            "useSystemSIPIdentityForPilotAndProxyTrunkModesPolicy", bool, is_required=True,
        ),
        E(
            "use_system_support_connected_identity_policy",
            "useSystemSupportConnectedIdentityPolicy", bool, is_required=True,
        ),
        E(
            "support_connected_identity_policy", "supportConnectedIdentityPolicy", str,
            is_required=True,
        ),
        E(
            "use_system_options_message_response_status_codes",
            "useSystemOptionsMessageResponseStatusCodes", bool, is_required=True,
        ),
        E(
            "options_message_response_status_code", "optionsMessageResponseStatusCode",
            str, is_array=True,
        ),
    )

    pilot_user_id: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    access_device: "OCI.AccessDevice" = Field(
        type=OCI.AccessDevice, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)
    hosted_user_table: "list" = Field(type=list, required=False, mutable=False)
    trunk_group_identity: str = Field(type=str, required=False, mutable=False)
    otg_dtg_identity: str = Field(type=str, required=False, mutable=False)
    allow_termination_to_trunk_group_identity: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_termination_to_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity: bool = Field(type=bool, required=True, mutable=False)
    include_dtg_identity: bool = Field(type=bool, required=True, mutable=False)
    include_trunk_group_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    include_otg_identity_for_network_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_network_address_identity: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_calls: bool = Field(type=bool, required=True, mutable=False)
    allow_unscreened_emergency_calls: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_for_external_calls_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    pilot_user_charge_number_policy: str = Field(type=str, required=True, mutable=False)
    call_forwarding_always_action: str = Field(type=str, required=False, mutable=False)
    call_forwarding_always_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    call_forwarding_always_reroute_trunk_group_key: "OCI.TrunkGroupKey" = Field(
        type=OCI.TrunkGroupKey, required=False, mutable=False,
    )
    peering_domain: str = Field(type=str, required=False, mutable=False)
    route_to_peering_domain: bool = Field(type=bool, required=True, mutable=False)
    prefix_enabled: bool = Field(type=bool, required=True, mutable=False)
    prefix: str = Field(type=str, required=False, mutable=False)
    stateful_rerouting_enabled: bool = Field(type=bool, required=True, mutable=False)
    send_continuous_options_message: bool = Field(type=bool, required=True, mutable=False)
    continuous_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_options_sending_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    success_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_counter: int = Field(type=int, required=True, mutable=False)
    invite_failure_threshold_window_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    trunk_group_state: str = Field(type=str, required=True, mutable=False)
    pilot_user_calling_line_asserted_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_system_calling_line_asserted_identity_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    total_active_incoming_calls: int = Field(type=int, required=True, mutable=False)
    total_active_outgoing_calls: int = Field(type=int, required=True, mutable=False)
    pilot_user_call_optimization_policy: str = Field(type=str, required=True, mutable=False)
    clid_source_for_screened_calls_policy: str = Field(type=str, required=True, mutable=False)
    use_system_clid_source_for_screened_calls_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    user_lookup_policy: str = Field(type=str, required=True, mutable=False)
    use_system_user_lookup_policy: bool = Field(type=bool, required=True, mutable=False)
    pilot_user_calling_line_identity_for_emergency_calls_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    implicit_registration_set_support_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_system_implicit_registration_set_support_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    sip_identity_for_pilot_and_proxy_trunk_modes_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    use_system_sip_identity_for_pilot_and_proxy_trunk_modes_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_system_support_connected_identity_policy: bool = Field(
        type=bool, required=True, mutable=False,
    )
    support_connected_identity_policy: str = Field(type=str, required=True, mutable=False)
    use_system_options_message_response_status_codes: bool = Field(
        type=bool, required=True, mutable=False,
    )
    options_message_response_status_code: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupTrunkGroupGetResponse(OCIResponse):
    """
    Response to the ``GroupTrunkGroupGetRequest()``.

    The response contains the maximum permissible active trunk group calls for the group.

    Attributes:
        max_active_calls: maxActiveCalls
        max_available_active_calls: maxAvailableActiveCalls
    """

    _ELEMENTS = (
        E(
            "max_active_calls", "maxActiveCalls", OCI.UnboundedNonNegativeInt,
            is_complex=True, is_required=True,
        ),
        E(
            "max_available_active_calls", "maxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt, is_complex=True, is_required=True,
        ),
    )

    max_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )
    max_available_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )


class GroupTrunkGroupGetResponse14sp1(OCIResponse):
    """
    Response to the ``GroupTrunkGroupGetRequest14sp1()``.

    The response contains the maximum and bursting maximum permissible active trunk group
    calls for the group.

    Attributes:
        max_active_calls: maxActiveCalls
        max_available_active_calls: maxAvailableActiveCalls
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_available_active_calls: burstingMaxAvailableActiveCalls
    """

    _ELEMENTS = (
        E(
            "max_active_calls", "maxActiveCalls", OCI.UnboundedNonNegativeInt,
            is_complex=True, is_required=True,
        ),
        E(
            "max_available_active_calls", "maxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt, is_complex=True, is_required=True,
        ),
        E(
            "bursting_max_active_calls", "burstingMaxActiveCalls",
            OCI.UnboundedNonNegativeInt, is_complex=True, is_required=True,
        ),
        E(
            "bursting_max_available_active_calls", "burstingMaxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt, is_complex=True, is_required=True,
        ),
    )

    max_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )
    max_available_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )
    bursting_max_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )
    bursting_max_available_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )


class GroupTrunkGroupGetResponse14sp9(OCIResponse):
    """
    Response to the ``GroupTrunkGroupGetRequest14sp9()``.

    The response contains the maximum and bursting maximum permissible active trunk group
    calls for the group.

    Attributes:
        max_active_calls: maxActiveCalls
        max_available_active_calls: maxAvailableActiveCalls
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_available_active_calls: burstingMaxAvailableActiveCalls
    """

    _ELEMENTS = (
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E(
            "max_available_active_calls", "maxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt, is_complex=True, is_required=True,
        ),
        E(
            "bursting_max_active_calls", "burstingMaxActiveCalls",
            OCI.UnboundedNonNegativeInt, is_complex=True, is_required=True,
        ),
        E(
            "bursting_max_available_active_calls", "burstingMaxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt, is_complex=True, is_required=True,
        ),
    )

    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_available_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )
    bursting_max_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )
    bursting_max_available_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )


class GroupVoiceMessagingGroupGetVoicePortalBrandingResponse20(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalBrandingRequest20()``.


    Attributes:
        voice_portal_greeting_selection: voicePortalGreetingSelection
        voice_portal_greeting_file: voicePortalGreetingFile
        voice_messaging_greeting_selection: voiceMessagingGreetingSelection
        voice_messaging_greeting_file: voiceMessagingGreetingFile
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection", "voicePortalGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_portal_greeting_file", "voicePortalGreetingFile",
            OCI.AnnouncementFileKey, is_complex=True,
        ),
        E(
            "voice_messaging_greeting_selection", "voiceMessagingGreetingSelection", str,
            is_required=True,
        ),
        E(
            "voice_messaging_greeting_file", "voiceMessagingGreetingFile",
            OCI.AnnouncementFileKey, is_complex=True,
        ),
    )

    voice_portal_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_portal_greeting_file: "OCI.AnnouncementFileKey" = Field(
        type=OCI.AnnouncementFileKey, required=False, mutable=False,
    )
    voice_messaging_greeting_selection: str = Field(type=str, required=True, mutable=False)
    voice_messaging_greeting_file: "OCI.AnnouncementFileKey" = Field(
        type=OCI.AnnouncementFileKey, required=False, mutable=False,
    )


class ServiceProviderAccessDeviceGetResponse14(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetRequest14()``.

    Replaced By: ``ServiceProviderAccessDeviceGetResponse14sp3()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAccessDeviceGetResponse14sp3(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetRequest14sp3()``.

    Replaced By: ``ServiceProviderAccessDeviceGetRequest14sp6()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )


class ServiceProviderAccessDeviceGetResponse14sp6(OCIResponse):
    """
    Response to: ``ServiceProviderAccessDeviceGetRequest14sp6()`` Replaced by:
    ``ServiceProviderAccessDeviceGetRequest16()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
        use_custom_user_name_password: useCustomUserNamePassword
        user_name: userName
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
        E("use_custom_user_name_password", "useCustomUserNamePassword", bool),
        E("user_name", "userName", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    use_custom_user_name_password: bool = Field(type=bool, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAccessDeviceGetResponse16(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetRequest16()``.


    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
        use_custom_user_name_password: useCustomUserNamePassword
        user_name: userName
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
        E("use_custom_user_name_password", "useCustomUserNamePassword", bool),
        E("user_name", "userName", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    use_custom_user_name_password: bool = Field(type=bool, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)


class ServiceProviderAccessDeviceGetResponse18sp1(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetRequest18sp1()``.


    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
        use_custom_user_name_password: useCustomUserNamePassword
        user_name: userName
        version: version
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
        E("use_custom_user_name_password", "useCustomUserNamePassword", bool),
        E("user_name", "userName", str),
        E("version", "version", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    use_custom_user_name_password: bool = Field(type=bool, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)
    version: str = Field(type=str, required=False, mutable=False)


class ServiceProviderCommunicationBarringProfileGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderCommunicationBarringProfileGetRequest()``.

    The response contains the Communication Barring Profile information.  The incoming,
    originating and redirecting rules are returned in ascending priority order.

    Attributes:
        description: description
        originating_default_action: originatingDefaultAction
        originating_default_treatment_id: originatingDefaultTreatmentId
        originating_default_transfer_number: originatingDefaultTransferNumber
        originating_default_call_timeout: originatingDefaultCallTimeout
        originating_rule: originatingRule
        redirecting_default_action: redirectingDefaultAction
        redirecting_default_call_timeout: redirectingDefaultCallTimeout
        redirecting_rule: redirectingRule
        incoming_default_action: incomingDefaultAction
        incoming_default_call_timeout: incomingDefaultCallTimeout
        incoming_rule: incomingRule
        is_default: isDefault
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("originating_default_action", "originatingDefaultAction", str, is_required=True),
        E("originating_default_treatment_id", "originatingDefaultTreatmentId", str),
        E("originating_default_transfer_number", "originatingDefaultTransferNumber", str),
        E("originating_default_call_timeout", "originatingDefaultCallTimeout", int),
        E(
            "originating_rule", "originatingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule,
            is_complex=True, is_array=True,
        ),
        E("redirecting_default_action", "redirectingDefaultAction", str, is_required=True),
        E("redirecting_default_call_timeout", "redirectingDefaultCallTimeout", int),
        E(
            "redirecting_rule", "redirectingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule,
            is_complex=True, is_array=True,
        ),
        E("incoming_default_action", "incomingDefaultAction", str, is_required=True),
        E("incoming_default_call_timeout", "incomingDefaultCallTimeout", int),
        E(
            "incoming_rule", "incomingRule", OCI.CommunicationBarringIncomingRule,
            is_complex=True, is_array=True,
        ),
        E("is_default", "isDefault", bool, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    originating_default_action: str = Field(type=str, required=True, mutable=False)
    originating_default_treatment_id: str = Field(type=str, required=False, mutable=False)
    originating_default_transfer_number: str = Field(type=str, required=False, mutable=False)
    originating_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    originating_rule: "List[OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    redirecting_default_action: str = Field(type=str, required=True, mutable=False)
    redirecting_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    redirecting_rule: "List[OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    incoming_default_action: str = Field(type=str, required=True, mutable=False)
    incoming_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    incoming_rule: "List[OCI.CommunicationBarringIncomingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    is_default: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderCommunicationBarringProfileGetResponse17sp3(OCIResponse):
    """
    Response to the ``ServiceProviderCommunicationBarringProfileGetRequest17sp3()``.

    The response contains the Communication Barring Profile information.  The incoming,
    originating, redirecting and call me now rules are returned in ascending priority
    order.  The following elements are only used in AS data mode: callMeNowDefaultAction
    callMeNowDefaultCallTimeout callMeNowRule

    Attributes:
        description: description
        originating_default_action: originatingDefaultAction
        originating_default_treatment_id: originatingDefaultTreatmentId
        originating_default_transfer_number: originatingDefaultTransferNumber
        originating_default_call_timeout: originatingDefaultCallTimeout
        originating_rule: originatingRule
        redirecting_default_action: redirectingDefaultAction
        redirecting_default_call_timeout: redirectingDefaultCallTimeout
        redirecting_rule: redirectingRule
        call_me_now_default_action: callMeNowDefaultAction
        call_me_now_default_call_timeout: callMeNowDefaultCallTimeout
        call_me_now_rule: callMeNowRule
        incoming_default_action: incomingDefaultAction
        incoming_default_call_timeout: incomingDefaultCallTimeout
        incoming_rule: incomingRule
        is_default: isDefault
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("originating_default_action", "originatingDefaultAction", str, is_required=True),
        E("originating_default_treatment_id", "originatingDefaultTreatmentId", str),
        E("originating_default_transfer_number", "originatingDefaultTransferNumber", str),
        E("originating_default_call_timeout", "originatingDefaultCallTimeout", int),
        E(
            "originating_rule", "originatingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule,
            is_complex=True, is_array=True,
        ),
        E("redirecting_default_action", "redirectingDefaultAction", str, is_required=True),
        E("redirecting_default_call_timeout", "redirectingDefaultCallTimeout", int),
        E(
            "redirecting_rule", "redirectingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule,
            is_complex=True, is_array=True,
        ),
        E("call_me_now_default_action", "callMeNowDefaultAction", str, is_required=True),
        E("call_me_now_default_call_timeout", "callMeNowDefaultCallTimeout", int),
        E(
            "call_me_now_rule", "callMeNowRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule,
            is_complex=True, is_array=True,
        ),
        E("incoming_default_action", "incomingDefaultAction", str, is_required=True),
        E("incoming_default_call_timeout", "incomingDefaultCallTimeout", int),
        E(
            "incoming_rule", "incomingRule", OCI.CommunicationBarringIncomingRule,
            is_complex=True, is_array=True,
        ),
        E("is_default", "isDefault", bool, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    originating_default_action: str = Field(type=str, required=True, mutable=False)
    originating_default_treatment_id: str = Field(type=str, required=False, mutable=False)
    originating_default_transfer_number: str = Field(type=str, required=False, mutable=False)
    originating_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    originating_rule: "List[OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    redirecting_default_action: str = Field(type=str, required=True, mutable=False)
    redirecting_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    redirecting_rule: "List[OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    call_me_now_default_action: str = Field(type=str, required=True, mutable=False)
    call_me_now_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    call_me_now_rule: "List[OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule]" = Field(
        type=list, required=False, mutable=False,
    )
    incoming_default_action: str = Field(type=str, required=True, mutable=False)
    incoming_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    incoming_rule: "List[OCI.CommunicationBarringIncomingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    is_default: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderCommunicationBarringProfileGetResponse19sp1(OCIResponse):
    """
    Response to the ``ServiceProviderCommunicationBarringProfileGetRequest19sp1()``.

    The response contains the Communication Barring Profile information.  The incoming,
    originating, redirecting and call me now rules are returned in ascending priority
    order.  The following elements are only used in AS data mode: callMeNowDefaultAction
    callMeNowDefaultCallTimeout callMeNowRule applyToAttendedCallTransfers

    Attributes:
        description: description
        originating_default_action: originatingDefaultAction
        originating_default_treatment_id: originatingDefaultTreatmentId
        originating_default_transfer_number: originatingDefaultTransferNumber
        originating_default_call_timeout: originatingDefaultCallTimeout
        originating_rule: originatingRule
        redirecting_default_action: redirectingDefaultAction
        redirecting_default_call_timeout: redirectingDefaultCallTimeout
        redirecting_rule: redirectingRule
        call_me_now_default_action: callMeNowDefaultAction
        call_me_now_default_call_timeout: callMeNowDefaultCallTimeout
        call_me_now_rule: callMeNowRule
        incoming_default_action: incomingDefaultAction
        incoming_default_call_timeout: incomingDefaultCallTimeout
        incoming_rule: incomingRule
        is_default: isDefault
        apply_to_attended_call_transfers: applyToAttendedCallTransfers
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("originating_default_action", "originatingDefaultAction", str, is_required=True),
        E("originating_default_treatment_id", "originatingDefaultTreatmentId", str),
        E("originating_default_transfer_number", "originatingDefaultTransferNumber", str),
        E("originating_default_call_timeout", "originatingDefaultCallTimeout", int),
        E(
            "originating_rule", "originatingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule,
            is_complex=True, is_array=True,
        ),
        E("redirecting_default_action", "redirectingDefaultAction", str, is_required=True),
        E("redirecting_default_call_timeout", "redirectingDefaultCallTimeout", int),
        E(
            "redirecting_rule", "redirectingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule,
            is_complex=True, is_array=True,
        ),
        E("call_me_now_default_action", "callMeNowDefaultAction", str, is_required=True),
        E("call_me_now_default_call_timeout", "callMeNowDefaultCallTimeout", int),
        E(
            "call_me_now_rule", "callMeNowRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule,
            is_complex=True, is_array=True,
        ),
        E("incoming_default_action", "incomingDefaultAction", str, is_required=True),
        E("incoming_default_call_timeout", "incomingDefaultCallTimeout", int),
        E(
            "incoming_rule", "incomingRule", OCI.CommunicationBarringIncomingRule,
            is_complex=True, is_array=True,
        ),
        E("is_default", "isDefault", bool, is_required=True),
        E(
            "apply_to_attended_call_transfers", "applyToAttendedCallTransfers", bool,
            is_required=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    originating_default_action: str = Field(type=str, required=True, mutable=False)
    originating_default_treatment_id: str = Field(type=str, required=False, mutable=False)
    originating_default_transfer_number: str = Field(type=str, required=False, mutable=False)
    originating_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    originating_rule: "List[OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    redirecting_default_action: str = Field(type=str, required=True, mutable=False)
    redirecting_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    redirecting_rule: "List[OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    call_me_now_default_action: str = Field(type=str, required=True, mutable=False)
    call_me_now_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    call_me_now_rule: "List[OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule]" = Field(
        type=list, required=False, mutable=False,
    )
    incoming_default_action: str = Field(type=str, required=True, mutable=False)
    incoming_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    incoming_rule: "List[OCI.CommunicationBarringIncomingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    is_default: bool = Field(type=bool, required=True, mutable=False)
    apply_to_attended_call_transfers: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderFeatureAccessCodeGetListResponse(OCIResponse):
    """
    Response to the ``ServiceProviderFeatureAccessCodeGetListRequest()``.


    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class ServiceProviderFeatureAccessCodeGetListResponse20(OCIResponse):
    """
    Response to the ``ServiceProviderFeatureAccessCodeGetListRequest20()``.

    In release 20 the "Call Recording" FAC name is changed to "Call Recording - Start".
    Replaced by: ``ServiceProviderFeatureAccessCodeGetListResponse21()``

    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class ServiceProviderFeatureAccessCodeGetListResponse21(OCIResponse):
    """
    Response to the ``ServiceProviderFeatureAccessCodeGetListRequest20()``.

    In release 20 the "Call Recording" FAC name is changed to "Call Recording - Start".

    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeReadEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeReadEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class ServiceProviderGetResponse13mp2(OCIResponse):
    """
    Response to the ``ServiceProviderGetRequest13mp2()``.

    The response contains the service provider or enterprise's profile information.
    Replaced by: ``ServiceProviderGetResponse17sp1()``

    Attributes:
        is_enterprise: isEnterprise
        use_custom_routing_profile: useCustomRoutingProfile
        default_domain: defaultDomain
        service_provider_name: serviceProviderName
        support_email: supportEmail
        contact: contact
        address: address
    """

    _ELEMENTS = (
        E("is_enterprise", "isEnterprise", bool),
        E("use_custom_routing_profile", "useCustomRoutingProfile", bool),
        E("default_domain", "defaultDomain", str, is_required=True),
        E("service_provider_name", "serviceProviderName", str),
        E("support_email", "supportEmail", str),
        E("contact", "contact", OCI.Contact, is_complex=True),
        E("address", "address", OCI.StreetAddress, is_complex=True),
    )

    is_enterprise: bool = Field(type=bool, required=False, mutable=False)
    use_custom_routing_profile: bool = Field(type=bool, required=False, mutable=False)
    default_domain: str = Field(type=str, required=True, mutable=False)
    service_provider_name: str = Field(type=str, required=False, mutable=False)
    support_email: str = Field(type=str, required=False, mutable=False)
    contact: "OCI.Contact" = Field(type=OCI.Contact, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )


class ServiceProviderGetResponse17sp1(OCIResponse):
    """
    Response to the ``ServiceProviderGetRequest17sp1()``.

    The response contains the service provider or enterprise's profile information.

    Attributes:
        is_enterprise: isEnterprise
        use_custom_routing_profile: useCustomRoutingProfile
        default_domain: defaultDomain
        service_provider_name: serviceProviderName
        support_email: supportEmail
        contact: contact
        address: address
        use_service_provider_languages: useServiceProviderLanguages
    """

    _ELEMENTS = (
        E("is_enterprise", "isEnterprise", bool),
        E("use_custom_routing_profile", "useCustomRoutingProfile", bool),
        E("default_domain", "defaultDomain", str, is_required=True),
        E("service_provider_name", "serviceProviderName", str),
        E("support_email", "supportEmail", str),
        E("contact", "contact", OCI.Contact, is_complex=True),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E(
            "use_service_provider_languages", "useServiceProviderLanguages", bool,
            is_required=True,
        ),
    )

    is_enterprise: bool = Field(type=bool, required=False, mutable=False)
    use_custom_routing_profile: bool = Field(type=bool, required=False, mutable=False)
    default_domain: str = Field(type=str, required=True, mutable=False)
    service_provider_name: str = Field(type=str, required=False, mutable=False)
    support_email: str = Field(type=str, required=False, mutable=False)
    contact: "OCI.Contact" = Field(type=OCI.Contact, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    use_service_provider_languages: bool = Field(type=bool, required=True, mutable=False)


class ServiceProviderMeetMeConferencingGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderMeetMeConferencingGetRequest()``.


    Attributes:
        allocated_ports: allocatedPorts
    """

    _ELEMENTS = (
        E(
            "allocated_ports", "allocatedPorts", OCI.MeetMeConferencingConferencePorts,
            is_complex=True, is_required=True,
        ),
    )

    allocated_ports: "OCI.MeetMeConferencingConferencePorts" = Field(
        type=OCI.MeetMeConferencingConferencePorts, required=True, mutable=False,
    )


class ServiceProviderScheduleGetEventResponse(OCIResponse):
    """
    Response to ``ServiceProviderScheduleGetEventRequest()``.

    The response contains the event of the service provider schedule.

    Attributes:
        start_date: startDate
        all_day_event: allDayEvent
        start_time: startTime
        end_time: endTime
        end_date: endDate
        recurrence: recurrence
    """

    _ELEMENTS = (
        E("start_date", "startDate", str, is_required=True),
        E("all_day_event", "allDayEvent", bool),
        E("start_time", "startTime", OCI.HourMinute, is_complex=True, is_required=True),
        E("end_time", "endTime", OCI.HourMinute, is_complex=True, is_required=True),
        E("end_date", "endDate", str, is_required=True),
        E("recurrence", "recurrence", OCI.Recurrence, is_complex=True),
    )

    start_date: str = Field(type=str, required=True, mutable=False)
    all_day_event: bool = Field(type=bool, required=False, mutable=False)
    start_time: "OCI.HourMinute" = Field(type=OCI.HourMinute, required=True, mutable=False)
    end_time: "OCI.HourMinute" = Field(type=OCI.HourMinute, required=True, mutable=False)
    end_date: str = Field(type=str, required=True, mutable=False)
    recurrence: "OCI.Recurrence" = Field(type=OCI.Recurrence, required=False, mutable=False)


class ServiceProviderScheduleGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderScheduleGetListRequest()``.

    The response contains a list of service provider schedules.

    Attributes:
        schedule_key: scheduleKey
    """

    _ELEMENTS = (
        E("schedule_key", "scheduleKey", OCI.ScheduleKey, is_complex=True, is_array=True),
    )

    schedule_key: "List[OCI.ScheduleKey]" = Field(type=list, required=False, mutable=False)


class ServiceProviderServicePackGetDetailListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackGetDetailListRequest()``.

    It contains the service pack details and the list of services in a table format.  The
    column headings are "Service", "Authorized" "Allocated" and "Available".

    Attributes:
        service_pack_name: servicePackName
        service_pack_description: servicePackDescription
        is_available_for_use: isAvailableForUse
        service_pack_quantity: servicePackQuantity
        assigned_quantity: assignedQuantity
        allowed_quantity: allowedQuantity
        user_service_table: userServiceTable
    """

    _ELEMENTS = (
        E("service_pack_name", "servicePackName", str, is_required=True),
        E("service_pack_description", "servicePackDescription", str),
        E("is_available_for_use", "isAvailableForUse", bool, is_required=True),
        E(
            "service_pack_quantity", "servicePackQuantity", OCI.UnboundedPositiveInt,
            is_complex=True, is_required=True,
        ),
        E(
            "assigned_quantity", "assignedQuantity", OCI.UnboundedNonNegativeInt,
            is_complex=True, is_required=True,
        ),
        E(
            "allowed_quantity", "allowedQuantity", OCI.UnboundedPositiveInt,
            is_complex=True, is_required=True,
        ),
        E(
            "user_service_table", "userServiceTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    service_pack_name: str = Field(type=str, required=True, mutable=False)
    service_pack_description: str = Field(type=str, required=False, mutable=False)
    is_available_for_use: bool = Field(type=bool, required=True, mutable=False)
    service_pack_quantity: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    assigned_quantity: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )
    allowed_quantity: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    user_service_table: "list" = Field(type=list, required=True, mutable=False)


class ServiceProviderTrunkGroupGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderTrunkGroupGetRequest()``.

    The response contains the maximum permissible active trunk group calls for the service
    provider.

    Attributes:
        max_active_calls: maxActiveCalls
    """

    _ELEMENTS = (
        E(
            "max_active_calls", "maxActiveCalls", OCI.UnboundedNonNegativeInt,
            is_complex=True, is_required=True,
        ),
    )

    max_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )


class ServiceProviderTrunkGroupGetResponse14sp1(OCIResponse):
    """
    Response to the ``ServiceProviderTrunkGroupGetRequest14sp1()``.

    The response contains the maximum and bursting maximum permissible active trunk group
    calls for the service provider.

    Attributes:
        max_active_calls: maxActiveCalls
        bursting_max_active_calls: burstingMaxActiveCalls
    """

    _ELEMENTS = (
        E(
            "max_active_calls", "maxActiveCalls", OCI.UnboundedNonNegativeInt,
            is_complex=True, is_required=True,
        ),
        E(
            "bursting_max_active_calls", "burstingMaxActiveCalls",
            OCI.UnboundedNonNegativeInt, is_complex=True, is_required=True,
        ),
    )

    max_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )
    bursting_max_active_calls: "OCI.UnboundedNonNegativeInt" = Field(
        type=OCI.UnboundedNonNegativeInt, required=True, mutable=False,
    )


class SystemAccessDeviceGetResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetRequest()``.

    Replaced By: ``SystemAccessDeviceGetResponse14sp3()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)


class SystemAccessDeviceGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetRequest14sp3()``

    Replaced By: ``SystemAccessDeviceGetResponse14sp6()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )


class SystemAccessDeviceGetResponse14sp6(OCIResponse):
    """
    Response to: ``SystemAccessDeviceGetRequest14sp6()`` Replaced by:
    ``SystemAccessDeviceGetRequest16()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
        use_custom_user_name_password: useCustomUserNamePassword
        user_name: userName
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
        E("use_custom_user_name_password", "useCustomUserNamePassword", bool),
        E("user_name", "userName", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    use_custom_user_name_password: bool = Field(type=bool, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)


class SystemAccessDeviceGetResponse16(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetRequest16()``

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
        use_custom_user_name_password: useCustomUserNamePassword
        user_name: userName
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
        E("use_custom_user_name_password", "useCustomUserNamePassword", bool),
        E("user_name", "userName", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    use_custom_user_name_password: bool = Field(type=bool, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)


class SystemAccessDeviceGetResponse18sp1(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetRequest18sp1()`` The following elements are only
    used in AS data mode: version

    Attributes:
        device_type: deviceType
        protocol: protocol
        net_address: netAddress
        port: port
        outbound_proxy_server_net_address: outboundProxyServerNetAddress
        stun_server_net_address: stunServerNetAddress
        mac_address: macAddress
        serial_number: serialNumber
        description: description
        number_of_ports: numberOfPorts
        number_of_assigned_ports: numberOfAssignedPorts
        status: status
        physical_location: physicalLocation
        transport_protocol: transportProtocol
        mobility_manager_provisioning_url: mobilityManagerProvisioningURL
        mobility_manager_provisioning_user_name: mobilityManagerProvisioningUserName
        mobility_manager_default_originating_service_key:
            mobilityManagerDefaultOriginatingServiceKey
        mobility_manager_default_terminating_service_key:
            mobilityManagerDefaultTerminatingServiceKey
        use_custom_user_name_password: useCustomUserNamePassword
        user_name: userName
        version: version
    """

    _ELEMENTS = (
        E("device_type", "deviceType", str, is_required=True),
        E("protocol", "protocol", str, is_required=True),
        E("net_address", "netAddress", str),
        E("port", "port", int),
        E("outbound_proxy_server_net_address", "outboundProxyServerNetAddress", str),
        E("stun_server_net_address", "stunServerNetAddress", str),
        E("mac_address", "macAddress", str),
        E("serial_number", "serialNumber", str),
        E("description", "description", str),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("number_of_assigned_ports", "numberOfAssignedPorts", int, is_required=True),
        E("status", "status", str, is_required=True),
        E("physical_location", "physicalLocation", str),
        E("transport_protocol", "transportProtocol", str),
        E("mobility_manager_provisioning_url", "mobilityManagerProvisioningURL", str),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName", str,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey", int,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey", int,
        ),
        E("use_custom_user_name_password", "useCustomUserNamePassword", bool),
        E("user_name", "userName", str),
        E("version", "version", str),
    )

    device_type: str = Field(type=str, required=True, mutable=False)
    protocol: str = Field(type=str, required=True, mutable=False)
    net_address: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    outbound_proxy_server_net_address: str = Field(type=str, required=False, mutable=False)
    stun_server_net_address: str = Field(type=str, required=False, mutable=False)
    mac_address: str = Field(type=str, required=False, mutable=False)
    serial_number: str = Field(type=str, required=False, mutable=False)
    description: str = Field(type=str, required=False, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    number_of_assigned_ports: int = Field(type=int, required=True, mutable=False)
    status: str = Field(type=str, required=True, mutable=False)
    physical_location: str = Field(type=str, required=False, mutable=False)
    transport_protocol: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_url: str = Field(type=str, required=False, mutable=False)
    mobility_manager_provisioning_user_name: str = Field(
        type=str, required=False, mutable=False,
    )
    mobility_manager_default_originating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    mobility_manager_default_terminating_service_key: int = Field(
        type=int, required=False, mutable=False,
    )
    use_custom_user_name_password: bool = Field(type=bool, required=False, mutable=False)
    user_name: str = Field(type=str, required=False, mutable=False)
    version: str = Field(type=str, required=False, mutable=False)


class SystemCallCenterEnhancedReportingDataTemplateGetListResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingDataTemplateGetListRequest()``.


    Attributes:
        info: info
    """

    _ELEMENTS = (
        E(
            "info", "info", OCI.CallCenterReportDataTemplateInfo, is_complex=True,
            is_array=True,
        ),
    )

    info: "List[OCI.CallCenterReportDataTemplateInfo]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemCollaborateGetResponse(OCIResponse):
    """
    Response to ``SystemCollaborateGetRequest()``.


    Attributes:
        collaborate_room_id_length: collaborateRoomIdLength
        instant_room_idle_timeout_seconds: instantRoomIdleTimeoutSeconds
        collaborate_room_maximum_duration_minutes: collaborateRoomMaximumDurationMinutes
        support_outdial: supportOutdial
        max_collaborate_room_participants: maxCollaborateRoomParticipants
        collaborate_active_talker_refresh_interval_seconds:
            collaborateActiveTalkerRefreshIntervalSeconds
        terminate_collaborate_after_grace_period: terminateCollaborateAfterGracePeriod
        collaborate_grace_period: collaborateGracePeriod
        enable_active_collaborate_notification: enableActiveCollaborateNotification
        collaborate_from_address: collaborateFromAddress
    """

    _ELEMENTS = (
        E("collaborate_room_id_length", "collaborateRoomIdLength", int, is_required=True),
        E(
            "instant_room_idle_timeout_seconds", "instantRoomIdleTimeoutSeconds", int,
            is_required=True,
        ),
        E(
            "collaborate_room_maximum_duration_minutes",
            "collaborateRoomMaximumDurationMinutes", int, is_required=True,
        ),
        E("support_outdial", "supportOutdial", bool, is_required=True),
        E(
            "max_collaborate_room_participants", "maxCollaborateRoomParticipants", int,
            is_required=True,
        ),
        E(
            "collaborate_active_talker_refresh_interval_seconds",
            "collaborateActiveTalkerRefreshIntervalSeconds", int, is_required=True,
        ),
        E(
            "terminate_collaborate_after_grace_period",
            "terminateCollaborateAfterGracePeriod", bool, is_required=True,
        ),
        E(
            "collaborate_grace_period", "collaborateGracePeriod",
            OCI.CollaborateGracePeriodDuration, is_complex=True, is_required=True,
        ),
        E(
            "enable_active_collaborate_notification",
            "enableActiveCollaborateNotification", bool, is_required=True,
        ),
        E("collaborate_from_address", "collaborateFromAddress", str),
    )

    collaborate_room_id_length: int = Field(type=int, required=True, mutable=False)
    instant_room_idle_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    collaborate_room_maximum_duration_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    support_outdial: bool = Field(type=bool, required=True, mutable=False)
    max_collaborate_room_participants: int = Field(type=int, required=True, mutable=False)
    collaborate_active_talker_refresh_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    terminate_collaborate_after_grace_period: bool = Field(
        type=bool, required=True, mutable=False,
    )
    collaborate_grace_period: "OCI.CollaborateGracePeriodDuration" = Field(
        type=OCI.CollaborateGracePeriodDuration, required=True, mutable=False,
    )
    enable_active_collaborate_notification: bool = Field(
        type=bool, required=True, mutable=False,
    )
    collaborate_from_address: str = Field(type=str, required=False, mutable=False)


class SystemCommunicationBarringProfileGetResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringProfileGetRequest()``.

    The response contains the Communication Barring Profile information.  Replaced by:
    ``SystemCommunicationBarringProfileGetResponse16()``

    Attributes:
        description: description
        originating_default_action: originatingDefaultAction
        originating_default_treatment_id: originatingDefaultTreatmentId
        originating_default_transfer_number: originatingDefaultTransferNumber
        originating_rule: originatingRule
        redirecting_default_action: redirectingDefaultAction
        redirecting_rule: redirectingRule
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("originating_default_action", "originatingDefaultAction", str, is_required=True),
        E("originating_default_treatment_id", "originatingDefaultTreatmentId", str),
        E("originating_default_transfer_number", "originatingDefaultTransferNumber", str),
        E(
            "originating_rule", "originatingRule",
            OCI.CommunicationBarringOriginatingRule15sp2, is_complex=True, is_array=True,
        ),
        E("redirecting_default_action", "redirectingDefaultAction", str, is_required=True),
        E(
            "redirecting_rule", "redirectingRule",
            OCI.CommunicationBarringRedirectingRule15sp2, is_complex=True, is_array=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    originating_default_action: str = Field(type=str, required=True, mutable=False)
    originating_default_treatment_id: str = Field(type=str, required=False, mutable=False)
    originating_default_transfer_number: str = Field(type=str, required=False, mutable=False)
    originating_rule: "List[OCI.CommunicationBarringOriginatingRule15sp2]" = Field(
        type=list, required=False, mutable=False,
    )
    redirecting_default_action: str = Field(type=str, required=True, mutable=False)
    redirecting_rule: "List[OCI.CommunicationBarringRedirectingRule15sp2]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemCommunicationBarringProfileGetResponse16(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringProfileGetRequest16()``.

    The response contains the Communication Barring Profile information.

    Attributes:
        description: description
        originating_default_action: originatingDefaultAction
        originating_default_treatment_id: originatingDefaultTreatmentId
        originating_default_transfer_number: originatingDefaultTransferNumber
        originating_default_call_timeout: originatingDefaultCallTimeout
        originating_rule: originatingRule
        redirecting_default_action: redirectingDefaultAction
        redirecting_default_call_timeout: redirectingDefaultCallTimeout
        redirecting_rule: redirectingRule
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("originating_default_action", "originatingDefaultAction", str, is_required=True),
        E("originating_default_treatment_id", "originatingDefaultTreatmentId", str),
        E("originating_default_transfer_number", "originatingDefaultTransferNumber", str),
        E("originating_default_call_timeout", "originatingDefaultCallTimeout", int),
        E(
            "originating_rule", "originatingRule",
            OCI.CommunicationBarringOriginatingRule, is_complex=True, is_array=True,
        ),
        E("redirecting_default_action", "redirectingDefaultAction", str, is_required=True),
        E("redirecting_default_call_timeout", "redirectingDefaultCallTimeout", int),
        E(
            "redirecting_rule", "redirectingRule",
            OCI.CommunicationBarringRedirectingRule, is_complex=True, is_array=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    originating_default_action: str = Field(type=str, required=True, mutable=False)
    originating_default_treatment_id: str = Field(type=str, required=False, mutable=False)
    originating_default_transfer_number: str = Field(type=str, required=False, mutable=False)
    originating_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    originating_rule: "List[OCI.CommunicationBarringOriginatingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    redirecting_default_action: str = Field(type=str, required=True, mutable=False)
    redirecting_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    redirecting_rule: "List[OCI.CommunicationBarringRedirectingRule]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemCommunicationBarringProfileGetResponse17sp1(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringProfileGetRequest17sp1()``.

    The response contains the Communication Barring Profile information.  The incoming
    rules are returned in ascending priority order.  The following elements are only used
    in HSS data mode: incomingDefaultAction incomingDefaultCallTimeout incomingRule

    Attributes:
        description: description
        originating_default_action: originatingDefaultAction
        originating_default_treatment_id: originatingDefaultTreatmentId
        originating_default_transfer_number: originatingDefaultTransferNumber
        originating_default_call_timeout: originatingDefaultCallTimeout
        originating_rule: originatingRule
        redirecting_default_action: redirectingDefaultAction
        redirecting_default_call_timeout: redirectingDefaultCallTimeout
        redirecting_rule: redirectingRule
        incoming_default_action: incomingDefaultAction
        incoming_default_call_timeout: incomingDefaultCallTimeout
        incoming_rule: incomingRule
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("originating_default_action", "originatingDefaultAction", str, is_required=True),
        E("originating_default_treatment_id", "originatingDefaultTreatmentId", str),
        E("originating_default_transfer_number", "originatingDefaultTransferNumber", str),
        E("originating_default_call_timeout", "originatingDefaultCallTimeout", int),
        E(
            "originating_rule", "originatingRule",
            OCI.CommunicationBarringOriginatingRule, is_complex=True, is_array=True,
        ),
        E("redirecting_default_action", "redirectingDefaultAction", str, is_required=True),
        E("redirecting_default_call_timeout", "redirectingDefaultCallTimeout", int),
        E(
            "redirecting_rule", "redirectingRule",
            OCI.CommunicationBarringRedirectingRule, is_complex=True, is_array=True,
        ),
        E("incoming_default_action", "incomingDefaultAction", str, is_required=True),
        E("incoming_default_call_timeout", "incomingDefaultCallTimeout", int),
        E(
            "incoming_rule", "incomingRule", OCI.CommunicationBarringIncomingRule,
            is_complex=True, is_array=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    originating_default_action: str = Field(type=str, required=True, mutable=False)
    originating_default_treatment_id: str = Field(type=str, required=False, mutable=False)
    originating_default_transfer_number: str = Field(type=str, required=False, mutable=False)
    originating_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    originating_rule: "List[OCI.CommunicationBarringOriginatingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    redirecting_default_action: str = Field(type=str, required=True, mutable=False)
    redirecting_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    redirecting_rule: "List[OCI.CommunicationBarringRedirectingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    incoming_default_action: str = Field(type=str, required=True, mutable=False)
    incoming_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    incoming_rule: "List[OCI.CommunicationBarringIncomingRule]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemCommunicationBarringProfileGetResponse17sp3(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringProfileGetRequest17sp3()``.

    The response contains the Communication Barring Profile information.  The incoming
    rules are returned in ascending priority order.  The following elements are only used
    in AS data mode: callMeNowDefaultAction callMeNowDefaultCallTimeout callMeNowRule

    Attributes:
        description: description
        originating_default_action: originatingDefaultAction
        originating_default_treatment_id: originatingDefaultTreatmentId
        originating_default_transfer_number: originatingDefaultTransferNumber
        originating_default_call_timeout: originatingDefaultCallTimeout
        originating_rule: originatingRule
        redirecting_default_action: redirectingDefaultAction
        redirecting_default_call_timeout: redirectingDefaultCallTimeout
        redirecting_rule: redirectingRule
        incoming_default_action: incomingDefaultAction
        incoming_default_call_timeout: incomingDefaultCallTimeout
        incoming_rule: incomingRule
        call_me_now_default_action: callMeNowDefaultAction
        call_me_now_default_call_timeout: callMeNowDefaultCallTimeout
        call_me_now_rule: callMeNowRule
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("originating_default_action", "originatingDefaultAction", str, is_required=True),
        E("originating_default_treatment_id", "originatingDefaultTreatmentId", str),
        E("originating_default_transfer_number", "originatingDefaultTransferNumber", str),
        E("originating_default_call_timeout", "originatingDefaultCallTimeout", int),
        E(
            "originating_rule", "originatingRule",
            OCI.CommunicationBarringOriginatingRule, is_complex=True, is_array=True,
        ),
        E("redirecting_default_action", "redirectingDefaultAction", str, is_required=True),
        E("redirecting_default_call_timeout", "redirectingDefaultCallTimeout", int),
        E(
            "redirecting_rule", "redirectingRule",
            OCI.CommunicationBarringRedirectingRule, is_complex=True, is_array=True,
        ),
        E("incoming_default_action", "incomingDefaultAction", str, is_required=True),
        E("incoming_default_call_timeout", "incomingDefaultCallTimeout", int),
        E(
            "incoming_rule", "incomingRule", OCI.CommunicationBarringIncomingRule,
            is_complex=True, is_array=True,
        ),
        E("call_me_now_default_action", "callMeNowDefaultAction", str, is_required=True),
        E("call_me_now_default_call_timeout", "callMeNowDefaultCallTimeout", int),
        E(
            "call_me_now_rule", "callMeNowRule", OCI.CommunicationBarringCallMeNowRule,
            is_complex=True, is_array=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    originating_default_action: str = Field(type=str, required=True, mutable=False)
    originating_default_treatment_id: str = Field(type=str, required=False, mutable=False)
    originating_default_transfer_number: str = Field(type=str, required=False, mutable=False)
    originating_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    originating_rule: "List[OCI.CommunicationBarringOriginatingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    redirecting_default_action: str = Field(type=str, required=True, mutable=False)
    redirecting_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    redirecting_rule: "List[OCI.CommunicationBarringRedirectingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    incoming_default_action: str = Field(type=str, required=True, mutable=False)
    incoming_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    incoming_rule: "List[OCI.CommunicationBarringIncomingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    call_me_now_default_action: str = Field(type=str, required=True, mutable=False)
    call_me_now_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    call_me_now_rule: "List[OCI.CommunicationBarringCallMeNowRule]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemCommunicationBarringProfileGetResponse19sp1(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringProfileGetRequest19sp1()``.

    The response contains the Communication Barring Profile information.  The incoming
    rules are returned in ascending priority order.  The following elements are only used
    in AS data mode: callMeNowDefaultAction callMeNowDefaultCallTimeout callMeNowRule
    applyToAttendedCallTransfers

    Attributes:
        description: description
        originating_default_action: originatingDefaultAction
        originating_default_treatment_id: originatingDefaultTreatmentId
        originating_default_transfer_number: originatingDefaultTransferNumber
        originating_default_call_timeout: originatingDefaultCallTimeout
        originating_rule: originatingRule
        redirecting_default_action: redirectingDefaultAction
        redirecting_default_call_timeout: redirectingDefaultCallTimeout
        redirecting_rule: redirectingRule
        incoming_default_action: incomingDefaultAction
        incoming_default_call_timeout: incomingDefaultCallTimeout
        incoming_rule: incomingRule
        call_me_now_default_action: callMeNowDefaultAction
        call_me_now_default_call_timeout: callMeNowDefaultCallTimeout
        call_me_now_rule: callMeNowRule
        apply_to_attended_call_transfers: applyToAttendedCallTransfers
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("originating_default_action", "originatingDefaultAction", str, is_required=True),
        E("originating_default_treatment_id", "originatingDefaultTreatmentId", str),
        E("originating_default_transfer_number", "originatingDefaultTransferNumber", str),
        E("originating_default_call_timeout", "originatingDefaultCallTimeout", int),
        E(
            "originating_rule", "originatingRule",
            OCI.CommunicationBarringOriginatingRule, is_complex=True, is_array=True,
        ),
        E("redirecting_default_action", "redirectingDefaultAction", str, is_required=True),
        E("redirecting_default_call_timeout", "redirectingDefaultCallTimeout", int),
        E(
            "redirecting_rule", "redirectingRule",
            OCI.CommunicationBarringRedirectingRule, is_complex=True, is_array=True,
        ),
        E("incoming_default_action", "incomingDefaultAction", str, is_required=True),
        E("incoming_default_call_timeout", "incomingDefaultCallTimeout", int),
        E(
            "incoming_rule", "incomingRule", OCI.CommunicationBarringIncomingRule,
            is_complex=True, is_array=True,
        ),
        E("call_me_now_default_action", "callMeNowDefaultAction", str, is_required=True),
        E("call_me_now_default_call_timeout", "callMeNowDefaultCallTimeout", int),
        E(
            "call_me_now_rule", "callMeNowRule", OCI.CommunicationBarringCallMeNowRule,
            is_complex=True, is_array=True,
        ),
        E(
            "apply_to_attended_call_transfers", "applyToAttendedCallTransfers", bool,
            is_required=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    originating_default_action: str = Field(type=str, required=True, mutable=False)
    originating_default_treatment_id: str = Field(type=str, required=False, mutable=False)
    originating_default_transfer_number: str = Field(type=str, required=False, mutable=False)
    originating_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    originating_rule: "List[OCI.CommunicationBarringOriginatingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    redirecting_default_action: str = Field(type=str, required=True, mutable=False)
    redirecting_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    redirecting_rule: "List[OCI.CommunicationBarringRedirectingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    incoming_default_action: str = Field(type=str, required=True, mutable=False)
    incoming_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    incoming_rule: "List[OCI.CommunicationBarringIncomingRule]" = Field(
        type=list, required=False, mutable=False,
    )
    call_me_now_default_action: str = Field(type=str, required=True, mutable=False)
    call_me_now_default_call_timeout: int = Field(type=int, required=False, mutable=False)
    call_me_now_rule: "List[OCI.CommunicationBarringCallMeNowRule]" = Field(
        type=list, required=False, mutable=False,
    )
    apply_to_attended_call_transfers: bool = Field(type=bool, required=True, mutable=False)


class SystemDeviceTypeGetResponse(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest()``.

    Replaced By: ``SystemDeviceTypeGetResponse14sp3()``

    Attributes:
        is_obsolete: isObsolete
        profile: profile
        web_based_config_url: webBasedConfigURL
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        is_ip_address_optional: isIpAddressOptional
        use_domain: useDomain
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E("profile", "profile", str, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E("cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptions, is_complex=True),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("is_ip_address_optional", "isIpAddressOptional", bool, is_required=True),
        E("use_domain", "useDomain", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    profile: str = Field(type=str, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptions" = Field(
        type=OCI.CPEDeviceOptions, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    is_ip_address_optional: bool = Field(type=bool, required=True, mutable=False)
    use_domain: bool = Field(type=bool, required=True, mutable=False)


class SystemDeviceTypeGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest14sp3()``.

    Replaced By: ``SystemDeviceTypeGetResponse14sp6()``

    Attributes:
        is_obsolete: isObsolete
        profile: profile
        web_based_config_url: webBasedConfigURL
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        is_ip_address_optional: isIpAddressOptional
        use_domain: useDomain
        is_mobility_manager_device: isMobilityManagerDevice
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E("profile", "profile", str, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E("cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptions, is_complex=True),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("is_ip_address_optional", "isIpAddressOptional", bool, is_required=True),
        E("use_domain", "useDomain", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    profile: str = Field(type=str, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptions" = Field(
        type=OCI.CPEDeviceOptions, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    is_ip_address_optional: bool = Field(type=bool, required=True, mutable=False)
    use_domain: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)


class SystemFeatureAccessCodeGetListResponse(OCIResponse):
    """
    Response to the ``SystemFeatureAccessCodeGetListRequest()``.


    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemFeatureAccessCodeGetListResponse20(OCIResponse):
    """
    Response to the ``SystemFeatureAccessCodeGetListRequest20()``.

    In release 20 the "Call Recording" FAC name is changed to "Call Recording - Start".
    Replaced by: ``SystemFeatureAccessCodeGetListResponse21()``

    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemFeatureAccessCodeGetListResponse21(OCIResponse):
    """
    Response to the ``SystemFeatureAccessCodeGetListRequest21()``.

    In release 20 the "Call Recording" FAC name is changed to "Call Recording - Start".

    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeReadEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeReadEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemFileRepositoryDeviceGetResponse(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceGetRequest()``.


    Attributes:
        root_directory: rootDirectory
        port: port
        protocol_web_dav: protocolWebDAV
        protocol_ftp: protocolFTP
    """

    _ELEMENTS = (
        E("root_directory", "rootDirectory", str),
        E("port", "port", int),
        E(
            "protocol_web_dav", "protocolWebDAV", OCI.FileRepositoryProtocolWebDAV,
            is_complex=True,
        ),
        E("protocol_ftp", "protocolFTP", OCI.FileRepositoryProtocolFTP, is_complex=True),
    )

    root_directory: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    protocol_web_dav: "OCI.FileRepositoryProtocolWebDAV" = Field(
        type=OCI.FileRepositoryProtocolWebDAV, required=False, mutable=False,
    )
    protocol_ftp: "OCI.FileRepositoryProtocolFTP" = Field(
        type=OCI.FileRepositoryProtocolFTP, required=False, mutable=False,
    )


class SystemFileRepositoryDeviceGetResponse16(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceGetRequest16()``.


    Attributes:
        root_directory: rootDirectory
        port: port
        protocol_web_dav: protocolWebDAV
        protocol_ftp: protocolFTP
    """

    _ELEMENTS = (
        E("root_directory", "rootDirectory", str),
        E("port", "port", int),
        E(
            "protocol_web_dav", "protocolWebDAV", OCI.FileRepositoryProtocolWebDAV,
            is_complex=True,
        ),
        E("protocol_ftp", "protocolFTP", OCI.FileRepositoryProtocolFTP16, is_complex=True),
    )

    root_directory: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    protocol_web_dav: "OCI.FileRepositoryProtocolWebDAV" = Field(
        type=OCI.FileRepositoryProtocolWebDAV, required=False, mutable=False,
    )
    protocol_ftp: "OCI.FileRepositoryProtocolFTP16" = Field(
        type=OCI.FileRepositoryProtocolFTP16, required=False, mutable=False,
    )


class SystemFileRepositoryDeviceGetResponse20(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceGetRequest20()``.


    Attributes:
        root_directory: rootDirectory
        port: port
        protocol_web_dav: protocolWebDAV
        protocol_ftp: protocolFTP
    """

    _ELEMENTS = (
        E("root_directory", "rootDirectory", str),
        E("port", "port", int),
        E(
            "protocol_web_dav", "protocolWebDAV", OCI.FileRepositoryProtocolWebDAV20,
            is_complex=True,
        ),
        E("protocol_ftp", "protocolFTP", OCI.FileRepositoryProtocolFTP16, is_complex=True),
    )

    root_directory: str = Field(type=str, required=False, mutable=False)
    port: int = Field(type=int, required=False, mutable=False)
    protocol_web_dav: "OCI.FileRepositoryProtocolWebDAV20" = Field(
        type=OCI.FileRepositoryProtocolWebDAV20, required=False, mutable=False,
    )
    protocol_ftp: "OCI.FileRepositoryProtocolFTP16" = Field(
        type=OCI.FileRepositoryProtocolFTP16, required=False, mutable=False,
    )


class SystemHolidayScheduleGetResponse(OCIResponse):
    """
    Response to the ``SystemHolidayScheduleGetRequest()``.

    The response contains the system holiday schedule information.

    Attributes:
        holiday01: holiday01
        holiday02: holiday02
        holiday03: holiday03
        holiday04: holiday04
        holiday05: holiday05
        holiday06: holiday06
        holiday07: holiday07
        holiday08: holiday08
        holiday09: holiday09
        holiday10: holiday10
        holiday11: holiday11
        holiday12: holiday12
        holiday13: holiday13
        holiday14: holiday14
        holiday15: holiday15
        holiday16: holiday16
        holiday17: holiday17
        holiday18: holiday18
        holiday19: holiday19
        holiday20: holiday20
    """

    _ELEMENTS = (
        E("holiday01", "holiday01", OCI.Holiday, is_complex=True),
        E("holiday02", "holiday02", OCI.Holiday, is_complex=True),
        E("holiday03", "holiday03", OCI.Holiday, is_complex=True),
        E("holiday04", "holiday04", OCI.Holiday, is_complex=True),
        E("holiday05", "holiday05", OCI.Holiday, is_complex=True),
        E("holiday06", "holiday06", OCI.Holiday, is_complex=True),
        E("holiday07", "holiday07", OCI.Holiday, is_complex=True),
        E("holiday08", "holiday08", OCI.Holiday, is_complex=True),
        E("holiday09", "holiday09", OCI.Holiday, is_complex=True),
        E("holiday10", "holiday10", OCI.Holiday, is_complex=True),
        E("holiday11", "holiday11", OCI.Holiday, is_complex=True),
        E("holiday12", "holiday12", OCI.Holiday, is_complex=True),
        E("holiday13", "holiday13", OCI.Holiday, is_complex=True),
        E("holiday14", "holiday14", OCI.Holiday, is_complex=True),
        E("holiday15", "holiday15", OCI.Holiday, is_complex=True),
        E("holiday16", "holiday16", OCI.Holiday, is_complex=True),
        E("holiday17", "holiday17", OCI.Holiday, is_complex=True),
        E("holiday18", "holiday18", OCI.Holiday, is_complex=True),
        E("holiday19", "holiday19", OCI.Holiday, is_complex=True),
        E("holiday20", "holiday20", OCI.Holiday, is_complex=True),
    )

    holiday01: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday02: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday03: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday04: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday05: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday06: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday07: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday08: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday09: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday10: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday11: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday12: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday13: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday14: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday15: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday16: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday17: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday18: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday19: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday20: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)


class SystemInterceptUserGetDnListResponse(OCIResponse):
    """
    Response to ``SystemInterceptUserGetDnListRequest()``.

    The Intercept User DN List.

    Attributes:
        intercept_user_list: interceptUserList
    """

    _ELEMENTS = (
        E(
            "intercept_user_list", "interceptUserList", OCI.InterceptDNListEntry,
            is_complex=True, is_array=True,
        ),
    )

    intercept_user_list: "List[OCI.InterceptDNListEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemMGCPDeviceTypeGetResponse(OCIResponse):
    """
    Response to ``SystemMGCPDeviceTypeGetRequest()``.


    Attributes:
        is_obsolete: isObsolete
        profile: profile
        number_of_ports: numberOfPorts
        protocol_choice: protocolChoice
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E("profile", "profile", str, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    profile: str = Field(type=str, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)


class SystemMeetMeConferencingGetResponse18(OCIResponse):
    """
    Response to ``SystemMeetMeConferencingGetRequest18()``.


    Attributes:
        conference_id_length: conferenceIdLength
        moderator_pin_length: moderatorPinLength
        enable_conference_end_date_restriction: enableConferenceEndDateRestriction
        conference_end_date_restriction_months: conferenceEndDateRestrictionMonths
        delete_expired_conferences_after_hold_period:
            deleteExpiredConferencesAfterHoldPeriod
        expired_conference_hold_period_days: expiredConferenceHoldPeriodDays
        recording_web_app_url: recordingWebAppURL
        recording_file_format: recordingFileFormat
        terminate_after_grace_period: terminateAfterGracePeriod
        conference_grace_period_minutes: conferenceGracePeriodMinutes
        conference_participant_early_entry_minutes: conferenceParticipantEarlyEntryMinutes
        enable_conference_expiry_notification: enableConferenceExpiryNotification
        enable_active_conference_notification: enableActiveConferenceNotification
        conference_from_address: conferenceFromAddress
    """

    _ELEMENTS = (
        E("conference_id_length", "conferenceIdLength", int, is_required=True),
        E("moderator_pin_length", "moderatorPinLength", int, is_required=True),
        E(
            "enable_conference_end_date_restriction",
            "enableConferenceEndDateRestriction", bool, is_required=True,
        ),
        E(
            "conference_end_date_restriction_months",
            "conferenceEndDateRestrictionMonths", int, is_required=True,
        ),
        E(
            "delete_expired_conferences_after_hold_period",
            "deleteExpiredConferencesAfterHoldPeriod", bool, is_required=True,
        ),
        E(
            "expired_conference_hold_period_days", "expiredConferenceHoldPeriodDays", int,
            is_required=True,
        ),
        E("recording_web_app_url", "recordingWebAppURL", str),
        E("recording_file_format", "recordingFileFormat", str, is_required=True),
        E(
            "terminate_after_grace_period", "terminateAfterGracePeriod", bool,
            is_required=True,
        ),
        E(
            "conference_grace_period_minutes", "conferenceGracePeriodMinutes",
            OCI.MeetMeConferencingConferenceDuration, is_complex=True, is_required=True,
        ),
        E(
            "conference_participant_early_entry_minutes",
            "conferenceParticipantEarlyEntryMinutes", int, is_required=True,
        ),
        E(
            "enable_conference_expiry_notification", "enableConferenceExpiryNotification",
            bool, is_required=True,
        ),
        E(
            "enable_active_conference_notification", "enableActiveConferenceNotification",
            bool, is_required=True,
        ),
        E("conference_from_address", "conferenceFromAddress", str, is_required=True),
    )

    conference_id_length: int = Field(type=int, required=True, mutable=False)
    moderator_pin_length: int = Field(type=int, required=True, mutable=False)
    enable_conference_end_date_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    conference_end_date_restriction_months: int = Field(
        type=int, required=True, mutable=False,
    )
    delete_expired_conferences_after_hold_period: bool = Field(
        type=bool, required=True, mutable=False,
    )
    expired_conference_hold_period_days: int = Field(type=int, required=True, mutable=False)
    recording_web_app_url: str = Field(type=str, required=False, mutable=False)
    recording_file_format: str = Field(type=str, required=True, mutable=False)
    terminate_after_grace_period: bool = Field(type=bool, required=True, mutable=False)
    conference_grace_period_minutes: "OCI.MeetMeConferencingConferenceDuration" = Field(
        type=OCI.MeetMeConferencingConferenceDuration, required=True, mutable=False,
    )
    conference_participant_early_entry_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    enable_conference_expiry_notification: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_active_conference_notification: bool = Field(
        type=bool, required=True, mutable=False,
    )
    conference_from_address: str = Field(type=str, required=True, mutable=False)


class SystemMeetMeConferencingGetResponse19(OCIResponse):
    """
    Response to ``SystemMeetMeConferencingGetRequest19()``.


    Attributes:
        conference_id_length: conferenceIdLength
        moderator_pin_length: moderatorPinLength
        enable_conference_end_date_restriction: enableConferenceEndDateRestriction
        conference_end_date_restriction_months: conferenceEndDateRestrictionMonths
        delete_expired_conferences_after_hold_period:
            deleteExpiredConferencesAfterHoldPeriod
        expired_conference_hold_period_days: expiredConferenceHoldPeriodDays
        recording_web_app_url: recordingWebAppURL
        recording_file_format: recordingFileFormat
        terminate_after_grace_period: terminateAfterGracePeriod
        conference_grace_period_minutes: conferenceGracePeriodMinutes
        conference_participant_early_entry_minutes: conferenceParticipantEarlyEntryMinutes
        enable_conference_expiry_notification: enableConferenceExpiryNotification
        enable_active_conference_notification: enableActiveConferenceNotification
        conference_from_address: conferenceFromAddress
        conference_active_talker_refresh_interval_seconds:
            conferenceActiveTalkerRefreshIntervalSeconds
    """

    _ELEMENTS = (
        E("conference_id_length", "conferenceIdLength", int, is_required=True),
        E("moderator_pin_length", "moderatorPinLength", int, is_required=True),
        E(
            "enable_conference_end_date_restriction",
            "enableConferenceEndDateRestriction", bool, is_required=True,
        ),
        E(
            "conference_end_date_restriction_months",
            "conferenceEndDateRestrictionMonths", int, is_required=True,
        ),
        E(
            "delete_expired_conferences_after_hold_period",
            "deleteExpiredConferencesAfterHoldPeriod", bool, is_required=True,
        ),
        E(
            "expired_conference_hold_period_days", "expiredConferenceHoldPeriodDays", int,
            is_required=True,
        ),
        E("recording_web_app_url", "recordingWebAppURL", str),
        E("recording_file_format", "recordingFileFormat", str, is_required=True),
        E(
            "terminate_after_grace_period", "terminateAfterGracePeriod", bool,
            is_required=True,
        ),
        E(
            "conference_grace_period_minutes", "conferenceGracePeriodMinutes",
            OCI.MeetMeConferencingConferenceDuration, is_complex=True, is_required=True,
        ),
        E(
            "conference_participant_early_entry_minutes",
            "conferenceParticipantEarlyEntryMinutes", int, is_required=True,
        ),
        E(
            "enable_conference_expiry_notification", "enableConferenceExpiryNotification",
            bool, is_required=True,
        ),
        E(
            "enable_active_conference_notification", "enableActiveConferenceNotification",
            bool, is_required=True,
        ),
        E("conference_from_address", "conferenceFromAddress", str, is_required=True),
        E(
            "conference_active_talker_refresh_interval_seconds",
            "conferenceActiveTalkerRefreshIntervalSeconds", int, is_required=True,
        ),
    )

    conference_id_length: int = Field(type=int, required=True, mutable=False)
    moderator_pin_length: int = Field(type=int, required=True, mutable=False)
    enable_conference_end_date_restriction: bool = Field(
        type=bool, required=True, mutable=False,
    )
    conference_end_date_restriction_months: int = Field(
        type=int, required=True, mutable=False,
    )
    delete_expired_conferences_after_hold_period: bool = Field(
        type=bool, required=True, mutable=False,
    )
    expired_conference_hold_period_days: int = Field(type=int, required=True, mutable=False)
    recording_web_app_url: str = Field(type=str, required=False, mutable=False)
    recording_file_format: str = Field(type=str, required=True, mutable=False)
    terminate_after_grace_period: bool = Field(type=bool, required=True, mutable=False)
    conference_grace_period_minutes: "OCI.MeetMeConferencingConferenceDuration" = Field(
        type=OCI.MeetMeConferencingConferenceDuration, required=True, mutable=False,
    )
    conference_participant_early_entry_minutes: int = Field(
        type=int, required=True, mutable=False,
    )
    enable_conference_expiry_notification: bool = Field(
        type=bool, required=True, mutable=False,
    )
    enable_active_conference_notification: bool = Field(
        type=bool, required=True, mutable=False,
    )
    conference_from_address: str = Field(type=str, required=True, mutable=False)
    conference_active_talker_refresh_interval_seconds: int = Field(
        type=int, required=True, mutable=False,
    )


class SystemNetworkClassOfServiceGetResponse(OCIResponse):
    """
    Response to the ``SystemNetworkClassOfServiceGetRequest()``.

    The response contains the Network Class of Service information.  Replaced by:
    ``SystemNetworkClassOfServiceGetResponse17()``

    Attributes:
        description: description
        communication_barring_profile0: communicationBarringProfile0
        communication_barring_profile1: communicationBarringProfile1
        communication_barring_profile2: communicationBarringProfile2
        communication_barring_profile3: communicationBarringProfile3
        communication_barring_profile4: communicationBarringProfile4
        communication_barring_profile5: communicationBarringProfile5
        communication_barring_profile6: communicationBarringProfile6
        communication_barring_profile7: communicationBarringProfile7
        communication_barring_profile8: communicationBarringProfile8
        communication_barring_profile9: communicationBarringProfile9
    """

    _ELEMENTS = (
        E("description", "description", str),
        E(
            "communication_barring_profile0", "communicationBarringProfile0",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile1", "communicationBarringProfile1",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile2", "communicationBarringProfile2",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile3", "communicationBarringProfile3",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile4", "communicationBarringProfile4",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile5", "communicationBarringProfile5",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile6", "communicationBarringProfile6",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile7", "communicationBarringProfile7",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile8", "communicationBarringProfile8",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile9", "communicationBarringProfile9",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
    )

    description: str = Field(type=str, required=False, mutable=False)
    communication_barring_profile0: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile1: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile2: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile3: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile4: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile5: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile6: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile7: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile8: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile9: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )


class SystemNetworkClassOfServiceGetResponse17(OCIResponse):
    """
    Response to the ``SystemNetworkClassOfServiceGetRequest17()``.

    The response contains the Network Class of Service information.  Replaced by
    ``SystemNetworkClassOfServiceGetResponse19sp1()``

    Attributes:
        description: description
        communication_barring_profile0: communicationBarringProfile0
        communication_barring_profile1: communicationBarringProfile1
        communication_barring_profile2: communicationBarringProfile2
        communication_barring_profile3: communicationBarringProfile3
        communication_barring_profile4: communicationBarringProfile4
        communication_barring_profile5: communicationBarringProfile5
        communication_barring_profile6: communicationBarringProfile6
        communication_barring_profile7: communicationBarringProfile7
        communication_barring_profile8: communicationBarringProfile8
        communication_barring_profile9: communicationBarringProfile9
        network_translation_index: networkTranslationIndex
    """

    _ELEMENTS = (
        E("description", "description", str),
        E(
            "communication_barring_profile0", "communicationBarringProfile0",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile1", "communicationBarringProfile1",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile2", "communicationBarringProfile2",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile3", "communicationBarringProfile3",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile4", "communicationBarringProfile4",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile5", "communicationBarringProfile5",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile6", "communicationBarringProfile6",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile7", "communicationBarringProfile7",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile8", "communicationBarringProfile8",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile9", "communicationBarringProfile9",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E("network_translation_index", "networkTranslationIndex", str),
    )

    description: str = Field(type=str, required=False, mutable=False)
    communication_barring_profile0: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile1: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile2: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile3: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile4: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile5: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile6: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile7: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile8: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile9: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    network_translation_index: str = Field(type=str, required=False, mutable=False)


class SystemNetworkClassOfServiceGetResponse19sp1(OCIResponse):
    """
    Response to the ``SystemNetworkClassOfServiceGetRequest19sp1()``.

    The response contains the Network Class of Service information.

    Attributes:
        description: description
        communication_barring_profile0: communicationBarringProfile0
        communication_barring_profile1: communicationBarringProfile1
        communication_barring_profile2: communicationBarringProfile2
        communication_barring_profile3: communicationBarringProfile3
        communication_barring_profile4: communicationBarringProfile4
        communication_barring_profile5: communicationBarringProfile5
        communication_barring_profile6: communicationBarringProfile6
        communication_barring_profile7: communicationBarringProfile7
        communication_barring_profile8: communicationBarringProfile8
        communication_barring_profile9: communicationBarringProfile9
        network_translation_index: networkTranslationIndex
        call_processing_policy_profile_name: callProcessingPolicyProfileName
    """

    _ELEMENTS = (
        E("description", "description", str),
        E(
            "communication_barring_profile0", "communicationBarringProfile0",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile1", "communicationBarringProfile1",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile2", "communicationBarringProfile2",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile3", "communicationBarringProfile3",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile4", "communicationBarringProfile4",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile5", "communicationBarringProfile5",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile6", "communicationBarringProfile6",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile7", "communicationBarringProfile7",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile8", "communicationBarringProfile8",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E(
            "communication_barring_profile9", "communicationBarringProfile9",
            OCI.NetworkClassOfServiceCommunicationBarringProfile, is_complex=True,
        ),
        E("network_translation_index", "networkTranslationIndex", str),
        E("call_processing_policy_profile_name", "callProcessingPolicyProfileName", str),
    )

    description: str = Field(type=str, required=False, mutable=False)
    communication_barring_profile0: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile1: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile2: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile3: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile4: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile5: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile6: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile7: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile8: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    communication_barring_profile9: "OCI.NetworkClassOfServiceCommunicationBarringProfile" = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile, required=False,
        mutable=False,
    )
    network_translation_index: str = Field(type=str, required=False, mutable=False)
    call_processing_policy_profile_name: str = Field(type=str, required=False, mutable=False)


class SystemSIPDeviceTypeGetResponse(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest()``.


    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        authentication_override: authenticationOverride
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        use_business_trunking_contact: useBusinessTrunkingContact
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("authentication_override", "authenticationOverride", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E(
            "use_business_trunking_contact", "useBusinessTrunkingContact", bool,
            is_required=True,
        ),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E("cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptions, is_complex=True),
        E("protocol_choice", "protocolChoice", str, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    authentication_override: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    use_business_trunking_contact: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptions" = Field(
        type=OCI.CPEDeviceOptions, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse14sp1(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest14sp1()``.


    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        authentication_override: authenticationOverride
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        use_business_trunking_contact: useBusinessTrunkingContact
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("authentication_override", "authenticationOverride", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E(
            "use_business_trunking_contact", "useBusinessTrunkingContact", bool,
            is_required=True,
        ),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E("cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptions, is_complex=True),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    authentication_override: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    use_business_trunking_contact: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptions" = Field(
        type=OCI.CPEDeviceOptions, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse14sp2(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest14sp2()``.

    Replaced By: ``SystemSIPDeviceTypeGetResponse14sp3()``

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        use_business_trunking_contact: useBusinessTrunkingContact
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E(
            "use_business_trunking_contact", "useBusinessTrunkingContact", bool,
            is_required=True,
        ),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E("cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptions, is_complex=True),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    use_business_trunking_contact: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptions" = Field(
        type=OCI.CPEDeviceOptions, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest14sp3()``.

    Replaced by: ``SystemSIPDeviceTypeGetResponse14sp6()``

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        use_business_trunking_contact: useBusinessTrunkingContact
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        tdm_overlay: tdmOverlay
        supports_broad_works_info_for_call_waiting: supportsBroadWorksINFOForCallWaiting
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E(
            "use_business_trunking_contact", "useBusinessTrunkingContact", bool,
            is_required=True,
        ),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E("cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptions, is_complex=True),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E("tdm_overlay", "tdmOverlay", bool, is_required=True),
        E(
            "supports_broad_works_info_for_call_waiting",
            "supportsBroadWorksINFOForCallWaiting", bool, is_required=True,
        ),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    use_business_trunking_contact: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptions" = Field(
        type=OCI.CPEDeviceOptions, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    tdm_overlay: bool = Field(type=bool, required=True, mutable=False)
    supports_broad_works_info_for_call_waiting: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemScheduleGetEventResponse(OCIResponse):
    """
    Response to ``SystemScheduleGetEventRequest()``.

    The response contains the event of the system schedulable.

    Attributes:
        start_date: startDate
        all_day_event: allDayEvent
        start_time: startTime
        end_time: endTime
        end_date: endDate
        recurrence: recurrence
    """

    _ELEMENTS = (
        E("start_date", "startDate", str, is_required=True),
        E("all_day_event", "allDayEvent", bool),
        E("start_time", "startTime", OCI.HourMinute, is_complex=True, is_required=True),
        E("end_time", "endTime", OCI.HourMinute, is_complex=True, is_required=True),
        E("end_date", "endDate", str, is_required=True),
        E("recurrence", "recurrence", OCI.Recurrence, is_complex=True),
    )

    start_date: str = Field(type=str, required=True, mutable=False)
    all_day_event: bool = Field(type=bool, required=False, mutable=False)
    start_time: "OCI.HourMinute" = Field(type=OCI.HourMinute, required=True, mutable=False)
    end_time: "OCI.HourMinute" = Field(type=OCI.HourMinute, required=True, mutable=False)
    end_date: str = Field(type=str, required=True, mutable=False)
    recurrence: "OCI.Recurrence" = Field(type=OCI.Recurrence, required=False, mutable=False)


class SystemTimeScheduleGetResponse(OCIResponse):
    """
    Response to the ``SystemTimeScheduleGetRequest()``.

    The response contains the system time schedule's information.

    Attributes:
        time_interval01: timeInterval01
        time_interval02: timeInterval02
        time_interval03: timeInterval03
        time_interval04: timeInterval04
        time_interval05: timeInterval05
        time_interval06: timeInterval06
        time_interval07: timeInterval07
        time_interval08: timeInterval08
        time_interval09: timeInterval09
        time_interval10: timeInterval10
        time_interval11: timeInterval11
        time_interval12: timeInterval12
        time_interval13: timeInterval13
        time_interval14: timeInterval14
        time_interval15: timeInterval15
        time_interval16: timeInterval16
        time_interval17: timeInterval17
        time_interval18: timeInterval18
        time_interval19: timeInterval19
        time_interval20: timeInterval20
    """

    _ELEMENTS = (
        E("time_interval01", "timeInterval01", OCI.TimeInterval, is_complex=True),
        E("time_interval02", "timeInterval02", OCI.TimeInterval, is_complex=True),
        E("time_interval03", "timeInterval03", OCI.TimeInterval, is_complex=True),
        E("time_interval04", "timeInterval04", OCI.TimeInterval, is_complex=True),
        E("time_interval05", "timeInterval05", OCI.TimeInterval, is_complex=True),
        E("time_interval06", "timeInterval06", OCI.TimeInterval, is_complex=True),
        E("time_interval07", "timeInterval07", OCI.TimeInterval, is_complex=True),
        E("time_interval08", "timeInterval08", OCI.TimeInterval, is_complex=True),
        E("time_interval09", "timeInterval09", OCI.TimeInterval, is_complex=True),
        E("time_interval10", "timeInterval10", OCI.TimeInterval, is_complex=True),
        E("time_interval11", "timeInterval11", OCI.TimeInterval, is_complex=True),
        E("time_interval12", "timeInterval12", OCI.TimeInterval, is_complex=True),
        E("time_interval13", "timeInterval13", OCI.TimeInterval, is_complex=True),
        E("time_interval14", "timeInterval14", OCI.TimeInterval, is_complex=True),
        E("time_interval15", "timeInterval15", OCI.TimeInterval, is_complex=True),
        E("time_interval16", "timeInterval16", OCI.TimeInterval, is_complex=True),
        E("time_interval17", "timeInterval17", OCI.TimeInterval, is_complex=True),
        E("time_interval18", "timeInterval18", OCI.TimeInterval, is_complex=True),
        E("time_interval19", "timeInterval19", OCI.TimeInterval, is_complex=True),
        E("time_interval20", "timeInterval20", OCI.TimeInterval, is_complex=True),
    )

    time_interval01: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval02: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval03: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval04: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval05: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval06: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval07: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval08: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval09: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval10: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval11: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval12: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval13: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval14: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval15: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval16: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval17: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval18: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval19: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval20: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )


class SystemZoneCallingRestrictionsNetAddressGetListResponse(OCIResponse):
    """
    Response to ``SystemZoneCallingRestrictionsNetAddressGetListRequest()``.

    Replaced by: ``SystemZoneNetAddressGetListResponse()``

    Attributes:
        net_address: netAddress
        net_address_range: netAddressRange
    """

    _ELEMENTS = (
        E("net_address", "netAddress", str, is_array=True),
        E(
            "net_address_range", "netAddressRange", OCI.IPAddressRange, is_complex=True,
            is_array=True,
        ),
    )

    net_address: "List[str]" = Field(type=list, required=False, mutable=False)
    net_address_range: "List[OCI.IPAddressRange]" = Field(
        type=list, required=False, mutable=False,
    )


class SystemZoneNetAddressGetListResponse(OCIResponse):
    """
    Response to ``SystemZoneNetAddressGetListRequest()``.


    Attributes:
        net_address: netAddress
        net_address_range: netAddressRange
    """

    _ELEMENTS = (
        E("net_address", "netAddress", str, is_array=True),
        E(
            "net_address_range", "netAddressRange", OCI.IPAddressRange, is_complex=True,
            is_array=True,
        ),
    )

    net_address: "List[str]" = Field(type=list, required=False, mutable=False)
    net_address_range: "List[OCI.IPAddressRange]" = Field(
        type=list, required=False, mutable=False,
    )


class UserAlternateNumbersGetResponse(OCIResponse):
    """
    Response to ``UserAlternateNumbersGetRequest()``.


    Attributes:
        distinctive_ring: distinctiveRing
        alternate_entry01: alternateEntry01
        alternate_entry02: alternateEntry02
        alternate_entry03: alternateEntry03
        alternate_entry04: alternateEntry04
        alternate_entry05: alternateEntry05
        alternate_entry06: alternateEntry06
        alternate_entry07: alternateEntry07
        alternate_entry08: alternateEntry08
        alternate_entry09: alternateEntry09
        alternate_entry10: alternateEntry10
    """

    _ELEMENTS = (
        E("distinctive_ring", "distinctiveRing", bool, is_required=True),
        E("alternate_entry01", "alternateEntry01", OCI.AlternateNumberEntry, is_complex=True),
        E("alternate_entry02", "alternateEntry02", OCI.AlternateNumberEntry, is_complex=True),
        E("alternate_entry03", "alternateEntry03", OCI.AlternateNumberEntry, is_complex=True),
        E("alternate_entry04", "alternateEntry04", OCI.AlternateNumberEntry, is_complex=True),
        E("alternate_entry05", "alternateEntry05", OCI.AlternateNumberEntry, is_complex=True),
        E("alternate_entry06", "alternateEntry06", OCI.AlternateNumberEntry, is_complex=True),
        E("alternate_entry07", "alternateEntry07", OCI.AlternateNumberEntry, is_complex=True),
        E("alternate_entry08", "alternateEntry08", OCI.AlternateNumberEntry, is_complex=True),
        E("alternate_entry09", "alternateEntry09", OCI.AlternateNumberEntry, is_complex=True),
        E("alternate_entry10", "alternateEntry10", OCI.AlternateNumberEntry, is_complex=True),
    )

    distinctive_ring: bool = Field(type=bool, required=True, mutable=False)
    alternate_entry01: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )
    alternate_entry02: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )
    alternate_entry03: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )
    alternate_entry04: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )
    alternate_entry05: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )
    alternate_entry06: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )
    alternate_entry07: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )
    alternate_entry08: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )
    alternate_entry09: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )
    alternate_entry10: "OCI.AlternateNumberEntry" = Field(
        type=OCI.AlternateNumberEntry, required=False, mutable=False,
    )


class UserAlternateNumbersGetResponse17(OCIResponse):
    """
    Response to ``UserAlternateNumbersGetRequest17()``.

    Replaced by: ``UserAlternateNumbersGetResponse21()``

    Attributes:
        distinctive_ring: distinctiveRing
        alternate_entry01: alternateEntry01
        alternate_entry02: alternateEntry02
        alternate_entry03: alternateEntry03
        alternate_entry04: alternateEntry04
        alternate_entry05: alternateEntry05
        alternate_entry06: alternateEntry06
        alternate_entry07: alternateEntry07
        alternate_entry08: alternateEntry08
        alternate_entry09: alternateEntry09
        alternate_entry10: alternateEntry10
    """

    _ELEMENTS = (
        E("distinctive_ring", "distinctiveRing", bool, is_required=True),
        E(
            "alternate_entry01", "alternateEntry01", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
        E(
            "alternate_entry02", "alternateEntry02", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
        E(
            "alternate_entry03", "alternateEntry03", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
        E(
            "alternate_entry04", "alternateEntry04", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
        E(
            "alternate_entry05", "alternateEntry05", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
        E(
            "alternate_entry06", "alternateEntry06", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
        E(
            "alternate_entry07", "alternateEntry07", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
        E(
            "alternate_entry08", "alternateEntry08", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
        E(
            "alternate_entry09", "alternateEntry09", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
        E(
            "alternate_entry10", "alternateEntry10", OCI.AlternateNumberEntry17,
            is_complex=True,
        ),
    )

    distinctive_ring: bool = Field(type=bool, required=True, mutable=False)
    alternate_entry01: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )
    alternate_entry02: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )
    alternate_entry03: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )
    alternate_entry04: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )
    alternate_entry05: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )
    alternate_entry06: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )
    alternate_entry07: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )
    alternate_entry08: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )
    alternate_entry09: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )
    alternate_entry10: "OCI.AlternateNumberEntry17" = Field(
        type=OCI.AlternateNumberEntry17, required=False, mutable=False,
    )


class UserAlternateNumbersGetResponse21(OCIResponse):
    """
    Response to ``UserAlternateNumbersGetRequest21()``.


    Attributes:
        distinctive_ring: distinctiveRing
        alternate_entry01: alternateEntry01
        alternate_entry02: alternateEntry02
        alternate_entry03: alternateEntry03
        alternate_entry04: alternateEntry04
        alternate_entry05: alternateEntry05
        alternate_entry06: alternateEntry06
        alternate_entry07: alternateEntry07
        alternate_entry08: alternateEntry08
        alternate_entry09: alternateEntry09
        alternate_entry10: alternateEntry10
    """

    _ELEMENTS = (
        E("distinctive_ring", "distinctiveRing", bool, is_required=True),
        E(
            "alternate_entry01", "alternateEntry01", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
        E(
            "alternate_entry02", "alternateEntry02", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
        E(
            "alternate_entry03", "alternateEntry03", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
        E(
            "alternate_entry04", "alternateEntry04", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
        E(
            "alternate_entry05", "alternateEntry05", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
        E(
            "alternate_entry06", "alternateEntry06", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
        E(
            "alternate_entry07", "alternateEntry07", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
        E(
            "alternate_entry08", "alternateEntry08", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
        E(
            "alternate_entry09", "alternateEntry09", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
        E(
            "alternate_entry10", "alternateEntry10", OCI.AlternateNumberEntry21,
            is_complex=True,
        ),
    )

    distinctive_ring: bool = Field(type=bool, required=True, mutable=False)
    alternate_entry01: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )
    alternate_entry02: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )
    alternate_entry03: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )
    alternate_entry04: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )
    alternate_entry05: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )
    alternate_entry06: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )
    alternate_entry07: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )
    alternate_entry08: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )
    alternate_entry09: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )
    alternate_entry10: "OCI.AlternateNumberEntry21" = Field(
        type=OCI.AlternateNumberEntry21, required=False, mutable=False,
    )


class UserAssignedServicesGetListResponse(OCIResponse):
    """
    Response to ``UserAssignedServicesGetListRequest()``.

    A user can have both user services and group services because of music on hold.

    Attributes:
        group_service_entry: groupServiceEntry
        user_service_entry: userServiceEntry
    """

    _ELEMENTS = (
        E(
            "group_service_entry", "groupServiceEntry", OCI.AssignedGroupServicesEntry,
            is_complex=True, is_array=True,
        ),
        E(
            "user_service_entry", "userServiceEntry", OCI.AssignedUserServicesEntry,
            is_complex=True, is_array=True,
        ),
    )

    group_service_entry: "List[OCI.AssignedGroupServicesEntry]" = Field(
        type=list, required=False, mutable=False,
    )
    user_service_entry: "List[OCI.AssignedUserServicesEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class UserBasicCallLogsGetListResponse(OCIResponse):
    """
    Response to ``UserBasicCallLogsGetListRequest()``.

    Replaced By: ``UserBasicCallLogsGetListResponse14sp4()``

    Attributes:
        placed: placed
        received: received
        missed: missed
    """

    _ELEMENTS = (
        E("placed", "placed", OCI.BasicCallLogsEntry, is_complex=True, is_array=True),
        E("received", "received", OCI.BasicCallLogsEntry, is_complex=True, is_array=True),
        E("missed", "missed", OCI.BasicCallLogsEntry, is_complex=True, is_array=True),
    )

    placed: "List[OCI.BasicCallLogsEntry]" = Field(type=list, required=False, mutable=False)
    received: "List[OCI.BasicCallLogsEntry]" = Field(type=list, required=False, mutable=False)
    missed: "List[OCI.BasicCallLogsEntry]" = Field(type=list, required=False, mutable=False)


class UserBasicCallLogsGetListResponse14sp4(OCIResponse):
    """
    Response to ``UserBasicCallLogsGetListRequest14sp4()``.


    Attributes:
        placed: placed
        received: received
        missed: missed
    """

    _ELEMENTS = (
        E("placed", "placed", OCI.CallLogsEntry, is_complex=True, is_array=True),
        E("received", "received", OCI.CallLogsEntry, is_complex=True, is_array=True),
        E("missed", "missed", OCI.CallLogsEntry, is_complex=True, is_array=True),
    )

    placed: "List[OCI.CallLogsEntry]" = Field(type=list, required=False, mutable=False)
    received: "List[OCI.CallLogsEntry]" = Field(type=list, required=False, mutable=False)
    missed: "List[OCI.CallLogsEntry]" = Field(type=list, required=False, mutable=False)


class UserBroadWorksAnywhereGetSelectiveCriteriaResponse(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetSelectiveCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserBroadWorksAnywhereGetSelectiveCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetSelectiveCriteriaRequest16()``.

    Replaced by: ``UserBroadWorksAnywhereGetSelectiveCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserBroadWorksAnywhereGetSelectiveCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetSelectiveCriteriaRequest21()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserBroadWorksMobilityGetResponse21(OCIResponse):
    """
    Response to a ``UserBroadWorksMobilityGetRequest21()``.


    Attributes:
        is_active: isActive
        use_mobile_identity_call_anchoring: useMobileIdentityCallAnchoring
        prevent_calls_to_own_mobiles: preventCallsToOwnMobiles
        mobile_identity: mobileIdentity
        profile_identity_devices_to_ring: profileIdentityDevicesToRing
        profile_identity_include_shared_call_appearance:
            profileIdentityIncludeSharedCallAppearance
        profile_identity_include_broadworks_anywhere:
            profileIdentityIncludeBroadworksAnywhere
        profile_identity_include_executive_assistant:
            profileIdentityIncludeExecutiveAssistant
        profile_identity_mobile_number_alerted: profileIdentityMobileNumberAlerted
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "use_mobile_identity_call_anchoring", "useMobileIdentityCallAnchoring", bool,
            is_required=True,
        ),
        E("prevent_calls_to_own_mobiles", "preventCallsToOwnMobiles", bool, is_required=True),
        E(
            "mobile_identity", "mobileIdentity",
            OCI.BroadWorksMobilityUserMobileIdentityEntry, is_complex=True, is_array=True,
        ),
        E(
            "profile_identity_devices_to_ring", "profileIdentityDevicesToRing", str,
            is_required=True,
        ),
        E(
            "profile_identity_include_shared_call_appearance",
            "profileIdentityIncludeSharedCallAppearance", bool, is_required=True,
        ),
        E(
            "profile_identity_include_broadworks_anywhere",
            "profileIdentityIncludeBroadworksAnywhere", bool, is_required=True,
        ),
        E(
            "profile_identity_include_executive_assistant",
            "profileIdentityIncludeExecutiveAssistant", bool, is_required=True,
        ),
        E(
            "profile_identity_mobile_number_alerted",
            "profileIdentityMobileNumberAlerted", str, is_array=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    use_mobile_identity_call_anchoring: bool = Field(type=bool, required=True, mutable=False)
    prevent_calls_to_own_mobiles: bool = Field(type=bool, required=True, mutable=False)
    mobile_identity: "List[OCI.BroadWorksMobilityUserMobileIdentityEntry]" = Field(
        type=list, required=False, mutable=False,
    )
    profile_identity_devices_to_ring: str = Field(type=str, required=True, mutable=False)
    profile_identity_include_shared_call_appearance: bool = Field(
        type=bool, required=True, mutable=False,
    )
    profile_identity_include_broadworks_anywhere: bool = Field(
        type=bool, required=True, mutable=False,
    )
    profile_identity_include_executive_assistant: bool = Field(
        type=bool, required=True, mutable=False,
    )
    profile_identity_mobile_number_alerted: "List[str]" = Field(
        type=list, required=False, mutable=False,
    )


class UserCallCenterGetAvailableDNISListResponse(OCIResponse):
    """
    Response to ``UserCallCenterGetAvailableDNISListRequest()``.

    Contains a list of available DNIS for agent to select.

    Attributes:
        available_dnis: availableDNIS
    """

    _ELEMENTS = (
        E("available_dnis", "availableDNIS", OCI.DNISKey, is_complex=True, is_array=True),
    )

    available_dnis: "List[OCI.DNISKey]" = Field(type=list, required=False, mutable=False)


class UserCallCenterGetResponse17(OCIResponse):
    """
    Response to the ``UserCallCenterGetRequest17()``.

    Contains the user's call center settings.  Indicates whether the agent is current
    available (logged in) to each call center in the list.  Contains a table with column
    headings: "Service User Id", "Phone Number", "Extension", "Available", "Logoff
    Allowed", "Type", and "Priority". Replaced by ``UserCallCenterGetResponse17sp4()``.

    Attributes:
        agent_acd_state: agentACDState
        agent_unavailable_code: agentUnavailableCode
        use_default_guard_timer: useDefaultGuardTimer
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        use_system_default_unavailable_settings: useSystemDefaultUnavailableSettings
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_unavailable_on_personal_calls: forceUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        make_outgoing_calls_as_call_center: makeOutgoingCallsAsCallCenter
        outgoing_call_dnis: outgoingCallDNIS
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E("agent_acd_state", "agentACDState", str),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E("use_default_guard_timer", "useDefaultGuardTimer", bool, is_required=True),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings", bool,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool,
        ),
        E("force_unavailable_on_personal_calls", "forceUnavailableOnPersonalCalls", bool),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int,
        ),
        E("make_outgoing_calls_as_call_center", "makeOutgoingCallsAsCallCenter", bool),
        E("outgoing_call_dnis", "outgoingCallDNIS", OCI.DNISKey, is_complex=True),
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    agent_acd_state: str = Field(type=str, required=False, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    use_default_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    use_system_default_unavailable_settings: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_unavailable_on_personal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=False, mutable=False,
    )
    make_outgoing_calls_as_call_center: bool = Field(type=bool, required=False, mutable=False)
    outgoing_call_dnis: "OCI.DNISKey" = Field(type=OCI.DNISKey, required=False, mutable=False)
    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterGetResponse17sp4(OCIResponse):
    """
    Response to the ``UserCallCenterGetRequest17sp4()``.

    Contains the user's call center settings.  Indicates whether the agent is current
    available (logged in) to each call center in the list.  Contains a table with column
    headings: "Service User Id", "Phone Number", "Extension", "Available", "Logoff
    Allowed", "Type", and "Priority". Replaced by ``UserCallCenterGetResponse19()``

    Attributes:
        agent_acd_state: agentACDState
        agent_unavailable_code: agentUnavailableCode
        use_default_guard_timer: useDefaultGuardTimer
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        use_system_default_unavailable_settings: useSystemDefaultUnavailableSettings
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        force_agent_unavailable_on_not_reachable: forceAgentUnavailableOnNotReachable
        make_outgoing_calls_as_call_center: makeOutgoingCallsAsCallCenter
        outgoing_call_dnis: outgoingCallDNIS
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E("agent_acd_state", "agentACDState", str),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E("use_default_guard_timer", "useDefaultGuardTimer", bool, is_required=True),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings", bool,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable", bool,
        ),
        E("make_outgoing_calls_as_call_center", "makeOutgoingCallsAsCallCenter", bool),
        E("outgoing_call_dnis", "outgoingCallDNIS", OCI.DNISKey, is_complex=True),
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    agent_acd_state: str = Field(type=str, required=False, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    use_default_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    use_system_default_unavailable_settings: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=False, mutable=False,
    )
    force_agent_unavailable_on_not_reachable: bool = Field(
        type=bool, required=False, mutable=False,
    )
    make_outgoing_calls_as_call_center: bool = Field(type=bool, required=False, mutable=False)
    outgoing_call_dnis: "OCI.DNISKey" = Field(type=OCI.DNISKey, required=False, mutable=False)
    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallCenterGetResponse19(OCIResponse):
    """
    Response to the ``UserCallCenterGetRequest19()``.

    Contains the user's call center settings.  Indicates whether the agent is current
    available (logged in) to each call center in the list.  Contains a table with column
    headings: "Service User Id", "Phone Number", "Extension", "Available", "Logoff
    Allowed", "Type", "Priority","Routing Policy" and "Skill Level". The valid "Routing
    Type" values are "Priority Based" and "Skill Based". This column is only populated for
    Premium Call Centers.  The valid "Skill Level" values are of from 1-20. This column is
    only populated for Premium Skill Based Call Centers.

    Attributes:
        agent_acd_state: agentACDState
        agent_threshold_profile_name: agentThresholdProfileName
        agent_unavailable_code: agentUnavailableCode
        use_default_guard_timer: useDefaultGuardTimer
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        use_system_default_unavailable_settings: useSystemDefaultUnavailableSettings
        force_agent_unavailable_on_dnd_activation: forceAgentUnavailableOnDNDActivation
        force_agent_unavailable_on_personal_calls: forceAgentUnavailableOnPersonalCalls
        force_agent_unavailable_on_bounced_call_limit:
            forceAgentUnavailableOnBouncedCallLimit
        number_consecutive_bounced_calls_to_force_agent_unavailable:
            numberConsecutiveBouncedCallsToForceAgentUnavailable
        force_agent_unavailable_on_not_reachable: forceAgentUnavailableOnNotReachable
        make_outgoing_calls_as_call_center: makeOutgoingCallsAsCallCenter
        outgoing_call_dnis: outgoingCallDNIS
        call_center_table: callCenterTable
    """

    _ELEMENTS = (
        E("agent_acd_state", "agentACDState", str),
        E("agent_threshold_profile_name", "agentThresholdProfileName", str),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E("use_default_guard_timer", "useDefaultGuardTimer", bool, is_required=True),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings", bool,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation", bool,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls", bool,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit", bool,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable", int,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable", bool,
        ),
        E("make_outgoing_calls_as_call_center", "makeOutgoingCallsAsCallCenter", bool),
        E("outgoing_call_dnis", "outgoingCallDNIS", OCI.DNISKey, is_complex=True),
        E(
            "call_center_table", "callCenterTable", list, is_complex=True,
            is_required=True, is_table=True,
        ),
    )

    agent_acd_state: str = Field(type=str, required=False, mutable=False)
    agent_threshold_profile_name: str = Field(type=str, required=False, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    use_default_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    use_system_default_unavailable_settings: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_dnd_activation: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_personal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    force_agent_unavailable_on_bounced_call_limit: bool = Field(
        type=bool, required=False, mutable=False,
    )
    number_consecutive_bounced_calls_to_force_agent_unavailable: int = Field(
        type=int, required=False, mutable=False,
    )
    force_agent_unavailable_on_not_reachable: bool = Field(
        type=bool, required=False, mutable=False,
    )
    make_outgoing_calls_as_call_center: bool = Field(type=bool, required=False, mutable=False)
    outgoing_call_dnis: "OCI.DNISKey" = Field(type=OCI.DNISKey, required=False, mutable=False)
    call_center_table: "list" = Field(type=list, required=True, mutable=False)


class UserCallForwardingSelectiveGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserCallForwardingSelectiveGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        forward_to_number_selection: forwardToNumberSelection
        forward_to_phone_number: forwardToPhoneNumber
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("forward_to_number_selection", "forwardToNumberSelection", str, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    forward_to_number_selection: str = Field(type=str, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserCallForwardingSelectiveGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserCallForwardingSelectiveGetCriteriaRequest16()``.

    Replaced by: ``UserCallForwardingSelectiveGetCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        forward_to_number_selection: forwardToNumberSelection
        forward_to_phone_number: forwardToPhoneNumber
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("forward_to_number_selection", "forwardToNumberSelection", str, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    forward_to_number_selection: str = Field(type=str, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserCallForwardingSelectiveGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserCallForwardingSelectiveGetCriteriaRequest21()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        forward_to_number_selection: forwardToNumberSelection
        forward_to_phone_number: forwardToPhoneNumber
        from_dn_criteria: fromDnCriteria
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("forward_to_number_selection", "forwardToNumberSelection", str, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    forward_to_number_selection: str = Field(type=str, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserCallMeNowGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserCallMeNowGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        reject_call: rejectCall
        to_dn_criteria: toDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("reject_call", "rejectCall", bool, is_required=True),
        E(
            "to_dn_criteria", "toDnCriteria", OCI.CallMeNowToDnCriteria, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    reject_call: bool = Field(type=bool, required=True, mutable=False)
    to_dn_criteria: "OCI.CallMeNowToDnCriteria" = Field(
        type=OCI.CallMeNowToDnCriteria, required=True, mutable=False,
    )


class UserCallNotifyGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserCallNotifyGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserCallNotifyGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserCallNotifyGetCriteriaRequest16()``.

    Replaced by: ``UserCallNotifyGetCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserCallNotifyGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserCallNotifyGetCriteriaRequest21()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserCallToNumberGetAvailableListResponse(OCIResponse):
    """
    Response to the ``UserCallToNumberGetAvailableListRequest()``.

    Contains a list of the user available Call to Numbers".

    Attributes:
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserCollaborateBridgeGetResponse(OCIResponse):
    """
    The system-level collaborate supportOutdial setting is returned in the response when
    the system-level collaborate supportOutdial setting is disabled.

    Response to ``UserCollaborateBridgeGetRequest()``.

    Attributes:
        bridge_id: bridgeId
        bridge_name: bridgeName
        phone_number: phoneNumber
        extension: extension
        alternate_number_entry: alternateNumberEntry
        support_out_dial: supportOutDial
        max_collaborate_room_participants: maxCollaborateRoomParticipants
    """

    _ELEMENTS = (
        E("bridge_id", "bridgeId", str, is_required=True),
        E("bridge_name", "bridgeName", str, is_required=True),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E(
            "alternate_number_entry", "alternateNumberEntry", OCI.AlternateNumberEntry21,
            is_complex=True, is_array=True,
        ),
        E("support_out_dial", "supportOutDial", bool, is_required=True),
        E(
            "max_collaborate_room_participants", "maxCollaborateRoomParticipants", int,
            is_required=True,
        ),
    )

    bridge_id: str = Field(type=str, required=True, mutable=False)
    bridge_name: str = Field(type=str, required=True, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    alternate_number_entry: "List[OCI.AlternateNumberEntry21]" = Field(
        type=list, required=False, mutable=False,
    )
    support_out_dial: bool = Field(type=bool, required=True, mutable=False)
    max_collaborate_room_participants: int = Field(type=int, required=True, mutable=False)


class UserCollaborateProjectRoomGetResponse(OCIResponse):
    """
    Response to ``UserCollaborateProjectRoomGetRequest()``.


    Attributes:
        room_name: roomName
        attendee_notification: attendeeNotification
        end_collaborate_room_session_on_owner_exit: endCollaborateRoomSessionOnOwnerExit
        owner_required: ownerRequired
        room_schedule: roomSchedule
    """

    _ELEMENTS = (
        E("room_name", "roomName", str, is_required=True),
        E("attendee_notification", "attendeeNotification", str, is_required=True),
        E(
            "end_collaborate_room_session_on_owner_exit",
            "endCollaborateRoomSessionOnOwnerExit", bool, is_required=True,
        ),
        E("owner_required", "ownerRequired", bool, is_required=True),
        E(
            "room_schedule", "roomSchedule", OCI.CollaborateRoomSchedule, is_complex=True,
            is_required=True,
        ),
    )

    room_name: str = Field(type=str, required=True, mutable=False)
    attendee_notification: str = Field(type=str, required=True, mutable=False)
    end_collaborate_room_session_on_owner_exit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    owner_required: bool = Field(type=bool, required=True, mutable=False)
    room_schedule: "OCI.CollaborateRoomSchedule" = Field(
        type=OCI.CollaborateRoomSchedule, required=True, mutable=False,
    )


class UserCommunicationBarringAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``UserCommunicationBarringAuthorizationCodeGetListRequest()``.

    Contains a list of Communication Barring Authorization Codes assigned to the user.

    Attributes:
        code: code
    """

    _ELEMENTS = (
        E(
            "code", "code", OCI.CommunicationBarringAuthorizationCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    code: "List[OCI.CommunicationBarringAuthorizationCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class UserCustomRingbackUserGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
        audio_selection: audioSelection
        audio_file_description: audioFileDescription
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file_description: videoFileDescription
        video_file_url: videoFileUrl
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file_description", "videoFileDescription", str),
        E("video_file_url", "videoFileUrl", str),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)


class UserCustomRingbackUserGetCriteriaResponse15sp2(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest15sp2()``.

    Replaced By: ``UserCustomRingbackUserAddCriteriaResponse16()``

    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
        audio_selection: audioSelection
        audio_file_description: audioFileDescription
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file_description: videoFileDescription
        video_file_url: videoFileUrl
        call_waiting_audio_selection: callWaitingAudioSelection
        call_waiting_audio_file_description: callWaitingAudioFileDescription
        call_waiting_audio_file_url: callWaitingAudioFileUrl
        call_waiting_video_selection: callWaitingVideoSelection
        call_waiting_video_file_description: callWaitingVideoFileDescription
        call_waiting_video_file_url: callWaitingVideoFileUrl
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file_description", "videoFileDescription", str),
        E("video_file_url", "videoFileUrl", str),
        E("call_waiting_audio_selection", "callWaitingAudioSelection", str),
        E("call_waiting_audio_file_description", "callWaitingAudioFileDescription", str),
        E("call_waiting_audio_file_url", "callWaitingAudioFileUrl", str),
        E("call_waiting_video_selection", "callWaitingVideoSelection", str),
        E("call_waiting_video_file_description", "callWaitingVideoFileDescription", str),
        E("call_waiting_video_file_url", "callWaitingVideoFileUrl", str),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_selection: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_file_description: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_file_url: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_selection: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_file_description: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_file_url: str = Field(type=str, required=False, mutable=False)


class UserCustomRingbackUserGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest16()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
        audio_selection: audioSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        video_file_url: videoFileUrl
        call_waiting_audio_selection: callWaitingAudioSelection
        call_waiting_audio_file_description: callWaitingAudioFileDescription
        call_waiting_audio_media_type: callWaitingAudioMediaType
        call_waiting_audio_file_url: callWaitingAudioFileUrl
        call_waiting_video_selection: callWaitingVideoSelection
        call_waiting_video_file_description: callWaitingVideoFileDescription
        call_waiting_video_media_type: callWaitingVideoMediaType
        call_waiting_video_file_url: callWaitingVideoFileUrl
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E("video_file_url", "videoFileUrl", str),
        E("call_waiting_audio_selection", "callWaitingAudioSelection", str),
        E("call_waiting_audio_file_description", "callWaitingAudioFileDescription", str),
        E("call_waiting_audio_media_type", "callWaitingAudioMediaType", str),
        E("call_waiting_audio_file_url", "callWaitingAudioFileUrl", str),
        E("call_waiting_video_selection", "callWaitingVideoSelection", str),
        E("call_waiting_video_file_description", "callWaitingVideoFileDescription", str),
        E("call_waiting_video_media_type", "callWaitingVideoMediaType", str),
        E("call_waiting_video_file_url", "callWaitingVideoFileUrl", str),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_url: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_selection: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_file_description: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_media_type: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_file_url: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_selection: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_file_description: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_media_type: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_file_url: str = Field(type=str, required=False, mutable=False)


class UserCustomRingbackUserGetCriteriaResponse20(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest20()``.

    Replaced by: ``UserCustomRingbackUserGetCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
        audio_selection: audioSelection
        audio_file: audioFile
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file: videoFile
        video_file_url: videoFileUrl
        call_waiting_audio_selection: callWaitingAudioSelection
        call_waiting_audio_file: callWaitingAudioFile
        call_waiting_audio_file_url: callWaitingAudioFileUrl
        call_waiting_video_selection: callWaitingVideoSelection
        call_waiting_video_file: callWaitingVideoFile
        call_waiting_video_file_url: callWaitingVideoFileUrl
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file", "audioFile", OCI.AnnouncementFileLevelKey, is_complex=True),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file", "videoFile", OCI.AnnouncementFileLevelKey, is_complex=True),
        E("video_file_url", "videoFileUrl", str),
        E("call_waiting_audio_selection", "callWaitingAudioSelection", str),
        E(
            "call_waiting_audio_file", "callWaitingAudioFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E("call_waiting_audio_file_url", "callWaitingAudioFileUrl", str),
        E("call_waiting_video_selection", "callWaitingVideoSelection", str),
        E(
            "call_waiting_video_file", "callWaitingVideoFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E("call_waiting_video_file_url", "callWaitingVideoFileUrl", str),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    video_file_url: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_selection: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    call_waiting_audio_file_url: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_selection: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    call_waiting_video_file_url: str = Field(type=str, required=False, mutable=False)


class UserCustomRingbackUserGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest21()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
        call_to_number: callToNumber
        audio_selection: audioSelection
        audio_file: audioFile
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file: videoFile
        video_file_url: videoFileUrl
        call_waiting_audio_selection: callWaitingAudioSelection
        call_waiting_audio_file: callWaitingAudioFile
        call_waiting_audio_file_url: callWaitingAudioFileUrl
        call_waiting_video_selection: callWaitingVideoSelection
        call_waiting_video_file: callWaitingVideoFile
        call_waiting_video_file_url: callWaitingVideoFileUrl
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file", "audioFile", OCI.AnnouncementFileLevelKey, is_complex=True),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file", "videoFile", OCI.AnnouncementFileLevelKey, is_complex=True),
        E("video_file_url", "videoFileUrl", str),
        E("call_waiting_audio_selection", "callWaitingAudioSelection", str),
        E(
            "call_waiting_audio_file", "callWaitingAudioFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E("call_waiting_audio_file_url", "callWaitingAudioFileUrl", str),
        E("call_waiting_video_selection", "callWaitingVideoSelection", str),
        E(
            "call_waiting_video_file", "callWaitingVideoFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E("call_waiting_video_file_url", "callWaitingVideoFileUrl", str),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    video_file_url: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_selection: str = Field(type=str, required=False, mutable=False)
    call_waiting_audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    call_waiting_audio_file_url: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_selection: str = Field(type=str, required=False, mutable=False)
    call_waiting_video_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    call_waiting_video_file_url: str = Field(type=str, required=False, mutable=False)


class UserEnhancedCallLogsGetListResponse(OCIResponse):
    """
    Response to ``UserEnhancedCallLogsGetListRequest()``.

    Replaced By: ``UserEnhancedCallLogsGetListResponse14sp4()``

    Attributes:
        placed: placed
        received: received
        missed: missed
    """

    _ELEMENTS = (
        E("placed", "placed", OCI.EnhancedCallLogsEntry, is_complex=True, is_array=True),
        E("received", "received", OCI.EnhancedCallLogsEntry, is_complex=True, is_array=True),
        E("missed", "missed", OCI.EnhancedCallLogsEntry, is_complex=True, is_array=True),
    )

    placed: "List[OCI.EnhancedCallLogsEntry]" = Field(
        type=list, required=False, mutable=False,
    )
    received: "List[OCI.EnhancedCallLogsEntry]" = Field(
        type=list, required=False, mutable=False,
    )
    missed: "List[OCI.EnhancedCallLogsEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class UserEnhancedCallLogsGetListResponse14sp4(OCIResponse):
    """
    Response to ``UserEnhancedCallLogsGetListRequest14sp4()``.

    Replaced by: ``UserEnhancedCallLogsGetListResponse16()``

    Attributes:
        placed: placed
        received: received
        missed: missed
    """

    _ELEMENTS = (
        E("placed", "placed", OCI.CallLogsEntry, is_complex=True, is_array=True),
        E("received", "received", OCI.CallLogsEntry, is_complex=True, is_array=True),
        E("missed", "missed", OCI.CallLogsEntry, is_complex=True, is_array=True),
    )

    placed: "List[OCI.CallLogsEntry]" = Field(type=list, required=False, mutable=False)
    received: "List[OCI.CallLogsEntry]" = Field(type=list, required=False, mutable=False)
    missed: "List[OCI.CallLogsEntry]" = Field(type=list, required=False, mutable=False)


class UserEnhancedCallLogsGetListResponse16(OCIResponse):
    """
    Response to ``UserEnhancedCallLogsGetListRequest16()``.

    Total numbers of rows is: - the total number of retrievable logs of the call log type
    that was specified in the ``UserEnhancedCallLogsGetListRequest16()``, if a call log
    type was specified in the request.  - the total number of retrievable logs, if no call
    log type was specified in the request.  Replaced by
    ``UserEnhancedCallLogsGetListResponse17sp4()``

    Attributes:
        total_number_of_rows: totalNumberOfRows
        call_log: callLog
    """

    _ELEMENTS = (
        E("total_number_of_rows", "totalNumberOfRows", int, is_required=True),
        E("call_log", "callLog", OCI.MixedCallLogsEntry, is_complex=True, is_array=True),
    )

    total_number_of_rows: int = Field(type=int, required=True, mutable=False)
    call_log: "List[OCI.MixedCallLogsEntry]" = Field(type=list, required=False, mutable=False)


class UserExecutiveGetFilteringSelectiveCriteriaResponse(OCIResponse):
    """
    Response to the ``UserExecutiveGetFilteringSelectiveCriteriaRequest()``.

    Replaced by: ``UserExecutiveGetFilteringSelectiveCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        filter: filter
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("filter", "filter", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria",
            OCI.ExecutiveCallFilteringCriteriaFromDn, is_complex=True, is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    filter: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.ExecutiveCallFilteringCriteriaFromDn" = Field(
        type=OCI.ExecutiveCallFilteringCriteriaFromDn, required=True, mutable=False,
    )


class UserExecutiveGetFilteringSelectiveCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserExecutiveGetFilteringSelectiveCriteriaRequest21()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        filter: filter
        from_dn_criteria: fromDnCriteria
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("filter", "filter", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria",
            OCI.ExecutiveCallFilteringCriteriaFromDn, is_complex=True, is_required=True,
        ),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    filter: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.ExecutiveCallFilteringCriteriaFromDn" = Field(
        type=OCI.ExecutiveCallFilteringCriteriaFromDn, required=True, mutable=False,
    )
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserFeatureAccessCodeGetListResponse(OCIResponse):
    """
    Response to the ``UserFeatureAccessCodeGetListRequest()``.


    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class UserFeatureAccessCodeGetListResponse20(OCIResponse):
    """
    Response to the ``UserFeatureAccessCodeGetListRequest20()``.

    In release 20 the "Call Recording" FAC name is changed to "Call Recording Start".
    Replaced by: ``UserFeatureAccessCodeGetListResponse21()``

    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class UserFeatureAccessCodeGetListResponse21(OCIResponse):
    """
    Response to the ``UserFeatureAccessCodeGetListRequest21()``.

    In release 20 the "Call Recording" FAC name is changed to "Call Recording Start".

    Attributes:
        feature_access_code: featureAccessCode
    """

    _ELEMENTS = (
        E(
            "feature_access_code", "featureAccessCode", OCI.FeatureAccessCodeReadEntry,
            is_complex=True, is_array=True,
        ),
    )

    feature_access_code: "List[OCI.FeatureAccessCodeReadEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class UserGroupNightForwardingGetResponse(OCIResponse):
    """
    Response to ``UserGroupNightForwardingGetRequest()``.

    businessHours and holidaySchedule are returned in the response only when
    groupNightForwarding is ‘Auto On’.

    Attributes:
        night_forwarding: nightForwarding
        group_night_forwarding: groupNightForwarding
        business_hours: businessHours
        holiday_schedule: holidaySchedule
    """

    _ELEMENTS = (
        E("night_forwarding", "nightForwarding", str, is_required=True),
        E("group_night_forwarding", "groupNightForwarding", str, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
    )

    night_forwarding: str = Field(type=str, required=True, mutable=False)
    group_night_forwarding: str = Field(type=str, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )


class UserHolidayScheduleGetResponse(OCIResponse):
    """
    Response to the ``UserHolidayScheduleGetRequest()``.

    The response contains the user?s holiday schedule information.

    Attributes:
        holiday_schedule_name: holidayScheduleName
        holiday01: holiday01
        holiday02: holiday02
        holiday03: holiday03
        holiday04: holiday04
        holiday05: holiday05
        holiday06: holiday06
        holiday07: holiday07
        holiday08: holiday08
        holiday09: holiday09
        holiday10: holiday10
        holiday11: holiday11
        holiday12: holiday12
        holiday13: holiday13
        holiday14: holiday14
        holiday15: holiday15
        holiday16: holiday16
        holiday17: holiday17
        holiday18: holiday18
        holiday19: holiday19
        holiday20: holiday20
    """

    _ELEMENTS = (
        E("holiday_schedule_name", "holidayScheduleName", str, is_required=True),
        E("holiday01", "holiday01", OCI.Holiday, is_complex=True),
        E("holiday02", "holiday02", OCI.Holiday, is_complex=True),
        E("holiday03", "holiday03", OCI.Holiday, is_complex=True),
        E("holiday04", "holiday04", OCI.Holiday, is_complex=True),
        E("holiday05", "holiday05", OCI.Holiday, is_complex=True),
        E("holiday06", "holiday06", OCI.Holiday, is_complex=True),
        E("holiday07", "holiday07", OCI.Holiday, is_complex=True),
        E("holiday08", "holiday08", OCI.Holiday, is_complex=True),
        E("holiday09", "holiday09", OCI.Holiday, is_complex=True),
        E("holiday10", "holiday10", OCI.Holiday, is_complex=True),
        E("holiday11", "holiday11", OCI.Holiday, is_complex=True),
        E("holiday12", "holiday12", OCI.Holiday, is_complex=True),
        E("holiday13", "holiday13", OCI.Holiday, is_complex=True),
        E("holiday14", "holiday14", OCI.Holiday, is_complex=True),
        E("holiday15", "holiday15", OCI.Holiday, is_complex=True),
        E("holiday16", "holiday16", OCI.Holiday, is_complex=True),
        E("holiday17", "holiday17", OCI.Holiday, is_complex=True),
        E("holiday18", "holiday18", OCI.Holiday, is_complex=True),
        E("holiday19", "holiday19", OCI.Holiday, is_complex=True),
        E("holiday20", "holiday20", OCI.Holiday, is_complex=True),
    )

    holiday_schedule_name: str = Field(type=str, required=True, mutable=False)
    holiday01: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday02: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday03: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday04: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday05: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday06: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday07: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday08: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday09: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday10: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday11: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday12: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday13: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday14: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday15: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday16: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday17: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday18: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday19: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)
    holiday20: "OCI.Holiday" = Field(type=OCI.Holiday, required=False, mutable=False)


class UserLDAPIntegrationGetDirectoryEntryResponse(OCIResponse):
    """
    Response to ``UserLDAPIntegrationGetDirectoryEntryRequest()``.


    Attributes:
        data: data
    """

    _ELEMENTS = (
        E("data", "data", OCI.LDAPEntryField, is_complex=True, is_array=True),
    )

    data: "List[OCI.LDAPEntryField]" = Field(type=list, required=False, mutable=False)


class UserMaliciousCallTraceGetResponse(OCIResponse):
    """
    Response to ``UserMaliciousCallTraceGetRequest()``.


    Attributes:
        is_active: isActive
        trace_type_selection: traceTypeSelection
        trace_for_time_period: traceForTimePeriod
        trace_time_period: traceTimePeriod
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("trace_type_selection", "traceTypeSelection", str, is_required=True),
        E("trace_for_time_period", "traceForTimePeriod", bool, is_required=True),
        E(
            "trace_time_period", "traceTimePeriod", OCI.MaliciousCallTraceTimePeriod,
            is_complex=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    trace_type_selection: str = Field(type=str, required=True, mutable=False)
    trace_for_time_period: bool = Field(type=bool, required=True, mutable=False)
    trace_time_period: "OCI.MaliciousCallTraceTimePeriod" = Field(
        type=OCI.MaliciousCallTraceTimePeriod, required=False, mutable=False,
    )


class UserMeetMeConferencingGetConferenceGreetingResponse20(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceGreetingRequest20()``.

    Contains the information of a conference custom greeting.

    Attributes:
        play_entrance_greeting: playEntranceGreeting
        entrance_greeting_file: entranceGreetingFile
    """

    _ELEMENTS = (
        E("play_entrance_greeting", "playEntranceGreeting", bool, is_required=True),
        E(
            "entrance_greeting_file", "entranceGreetingFile", OCI.AnnouncementFileKey,
            is_complex=True,
        ),
    )

    play_entrance_greeting: bool = Field(type=bool, required=True, mutable=False)
    entrance_greeting_file: "OCI.AnnouncementFileKey" = Field(
        type=OCI.AnnouncementFileKey, required=False, mutable=False,
    )


class UserMeetMeConferencingGetConferenceResponse(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceRequest()``.

    Contains the information of a conference.

    Attributes:
        title: title
        estimated_participants: estimatedParticipants
        restrict_participants: restrictParticipants
        max_participants: maxParticipants
        account_code: accountCode
        mute_all_attendees_on_entry: muteAllAttendeesOnEntry
        end_conference_on_moderator_exit: endConferenceOnModeratorExit
        moderator_required: moderatorRequired
        attendee_notification: attendeeNotification
        conference_schedule: conferenceSchedule
        moderator_pin: moderatorPin
    """

    _ELEMENTS = (
        E("title", "title", str, is_required=True),
        E("estimated_participants", "estimatedParticipants", int),
        E("restrict_participants", "restrictParticipants", bool),
        E("max_participants", "maxParticipants", int),
        E("account_code", "accountCode", str),
        E("mute_all_attendees_on_entry", "muteAllAttendeesOnEntry", bool, is_required=True),
        E(
            "end_conference_on_moderator_exit", "endConferenceOnModeratorExit", bool,
            is_required=True,
        ),
        E("moderator_required", "moderatorRequired", bool, is_required=True),
        E("attendee_notification", "attendeeNotification", str, is_required=True),
        E(
            "conference_schedule", "conferenceSchedule",
            OCI.MeetMeConferencingConferenceSchedule, is_complex=True, is_required=True,
        ),
        E("moderator_pin", "moderatorPin", str, is_required=True),
    )

    title: str = Field(type=str, required=True, mutable=False)
    estimated_participants: int = Field(type=int, required=False, mutable=False)
    restrict_participants: bool = Field(type=bool, required=False, mutable=False)
    max_participants: int = Field(type=int, required=False, mutable=False)
    account_code: str = Field(type=str, required=False, mutable=False)
    mute_all_attendees_on_entry: bool = Field(type=bool, required=True, mutable=False)
    end_conference_on_moderator_exit: bool = Field(type=bool, required=True, mutable=False)
    moderator_required: bool = Field(type=bool, required=True, mutable=False)
    attendee_notification: str = Field(type=str, required=True, mutable=False)
    conference_schedule: "OCI.MeetMeConferencingConferenceSchedule" = Field(
        type=OCI.MeetMeConferencingConferenceSchedule, required=True, mutable=False,
    )
    moderator_pin: str = Field(type=str, required=True, mutable=False)


class UserMeetMeConferencingGetConferenceResponse19(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceRequest19()``.

    Contains the information of a conference.

    Attributes:
        title: title
        estimated_participants: estimatedParticipants
        restrict_participants: restrictParticipants
        max_participants: maxParticipants
        account_code: accountCode
        mute_all_attendees_on_entry: muteAllAttendeesOnEntry
        end_conference_on_moderator_exit: endConferenceOnModeratorExit
        moderator_required: moderatorRequired
        require_security_pin: requireSecurityPin
        security_pin: securityPin
        allow_unique_identifier: allowUniqueIdentifier
        attendee_notification: attendeeNotification
        conference_schedule: conferenceSchedule
        moderator_pin: moderatorPin
    """

    _ELEMENTS = (
        E("title", "title", str, is_required=True),
        E("estimated_participants", "estimatedParticipants", int),
        E("restrict_participants", "restrictParticipants", bool),
        E("max_participants", "maxParticipants", int),
        E("account_code", "accountCode", str),
        E("mute_all_attendees_on_entry", "muteAllAttendeesOnEntry", bool, is_required=True),
        E(
            "end_conference_on_moderator_exit", "endConferenceOnModeratorExit", bool,
            is_required=True,
        ),
        E("moderator_required", "moderatorRequired", bool, is_required=True),
        E("require_security_pin", "requireSecurityPin", bool, is_required=True),
        E("security_pin", "securityPin", str),
        E("allow_unique_identifier", "allowUniqueIdentifier", bool, is_required=True),
        E("attendee_notification", "attendeeNotification", str, is_required=True),
        E(
            "conference_schedule", "conferenceSchedule",
            OCI.MeetMeConferencingConferenceSchedule, is_complex=True, is_required=True,
        ),
        E("moderator_pin", "moderatorPin", str, is_required=True),
    )

    title: str = Field(type=str, required=True, mutable=False)
    estimated_participants: int = Field(type=int, required=False, mutable=False)
    restrict_participants: bool = Field(type=bool, required=False, mutable=False)
    max_participants: int = Field(type=int, required=False, mutable=False)
    account_code: str = Field(type=str, required=False, mutable=False)
    mute_all_attendees_on_entry: bool = Field(type=bool, required=True, mutable=False)
    end_conference_on_moderator_exit: bool = Field(type=bool, required=True, mutable=False)
    moderator_required: bool = Field(type=bool, required=True, mutable=False)
    require_security_pin: bool = Field(type=bool, required=True, mutable=False)
    security_pin: str = Field(type=str, required=False, mutable=False)
    allow_unique_identifier: bool = Field(type=bool, required=True, mutable=False)
    attendee_notification: str = Field(type=str, required=True, mutable=False)
    conference_schedule: "OCI.MeetMeConferencingConferenceSchedule" = Field(
        type=OCI.MeetMeConferencingConferenceSchedule, required=True, mutable=False,
    )
    moderator_pin: str = Field(type=str, required=True, mutable=False)


class UserMeetMeConferencingGetConferenceResponse20(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceRequest20()``.

    Contains the information of a conference.

    Attributes:
        title: title
        estimated_participants: estimatedParticipants
        restrict_participants: restrictParticipants
        max_participants: maxParticipants
        account_code: accountCode
        mute_all_attendees_on_entry: muteAllAttendeesOnEntry
        end_conference_on_moderator_exit: endConferenceOnModeratorExit
        moderator_required: moderatorRequired
        require_security_pin: requireSecurityPin
        security_pin: securityPin
        allow_unique_identifier: allowUniqueIdentifier
        attendee_notification: attendeeNotification
        conference_schedule: conferenceSchedule
        moderator_pin: moderatorPin
        host_time_zone: hostTimeZone
    """

    _ELEMENTS = (
        E("title", "title", str, is_required=True),
        E("estimated_participants", "estimatedParticipants", int),
        E("restrict_participants", "restrictParticipants", bool),
        E("max_participants", "maxParticipants", int),
        E("account_code", "accountCode", str),
        E("mute_all_attendees_on_entry", "muteAllAttendeesOnEntry", bool, is_required=True),
        E(
            "end_conference_on_moderator_exit", "endConferenceOnModeratorExit", bool,
            is_required=True,
        ),
        E("moderator_required", "moderatorRequired", bool, is_required=True),
        E("require_security_pin", "requireSecurityPin", bool, is_required=True),
        E("security_pin", "securityPin", str),
        E("allow_unique_identifier", "allowUniqueIdentifier", bool, is_required=True),
        E("attendee_notification", "attendeeNotification", str, is_required=True),
        E(
            "conference_schedule", "conferenceSchedule",
            OCI.MeetMeConferencingConferenceSchedule, is_complex=True, is_required=True,
        ),
        E("moderator_pin", "moderatorPin", str, is_required=True),
        E("host_time_zone", "hostTimeZone", str, is_required=True),
    )

    title: str = Field(type=str, required=True, mutable=False)
    estimated_participants: int = Field(type=int, required=False, mutable=False)
    restrict_participants: bool = Field(type=bool, required=False, mutable=False)
    max_participants: int = Field(type=int, required=False, mutable=False)
    account_code: str = Field(type=str, required=False, mutable=False)
    mute_all_attendees_on_entry: bool = Field(type=bool, required=True, mutable=False)
    end_conference_on_moderator_exit: bool = Field(type=bool, required=True, mutable=False)
    moderator_required: bool = Field(type=bool, required=True, mutable=False)
    require_security_pin: bool = Field(type=bool, required=True, mutable=False)
    security_pin: str = Field(type=str, required=False, mutable=False)
    allow_unique_identifier: bool = Field(type=bool, required=True, mutable=False)
    attendee_notification: str = Field(type=str, required=True, mutable=False)
    conference_schedule: "OCI.MeetMeConferencingConferenceSchedule" = Field(
        type=OCI.MeetMeConferencingConferenceSchedule, required=True, mutable=False,
    )
    moderator_pin: str = Field(type=str, required=True, mutable=False)
    host_time_zone: str = Field(type=str, required=True, mutable=False)


class UserMusicOnHoldUserGetResponse(OCIResponse):
    """
    Response to ``UserMusicOnHoldUserGetRequest()``.

    Replaced By: ``UserMusicOnHoldUserGetResponse16()``

    Attributes:
        enable_video: enableVideo
        source: source
        use_alternate_source_for_internal_calls: useAlternateSourceForInternalCalls
        internal_source: internalSource
    """

    _ELEMENTS = (
        E("enable_video", "enableVideo", bool, is_required=True),
        E(
            "source", "source", OCI.MusicOnHoldUserSourceRead, is_complex=True,
            is_required=True,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls", bool, is_required=True,
        ),
        E(
            "internal_source", "internalSource", OCI.MusicOnHoldUserSourceRead,
            is_complex=True,
        ),
    )

    enable_video: bool = Field(type=bool, required=True, mutable=False)
    source: "OCI.MusicOnHoldUserSourceRead" = Field(
        type=OCI.MusicOnHoldUserSourceRead, required=True, mutable=False,
    )
    use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    internal_source: "OCI.MusicOnHoldUserSourceRead" = Field(
        type=OCI.MusicOnHoldUserSourceRead, required=False, mutable=False,
    )


class UserMusicOnHoldUserGetResponse16(OCIResponse):
    """
    Response to ``UserMusicOnHoldUserGetRequest16()``.


    Attributes:
        enable_video: enableVideo
        source: source
        use_alternate_source_for_internal_calls: useAlternateSourceForInternalCalls
        internal_source: internalSource
    """

    _ELEMENTS = (
        E("enable_video", "enableVideo", bool, is_required=True),
        E(
            "source", "source", OCI.MusicOnHoldUserSourceRead16, is_complex=True,
            is_required=True,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls", bool, is_required=True,
        ),
        E(
            "internal_source", "internalSource", OCI.MusicOnHoldUserSourceRead16,
            is_complex=True,
        ),
    )

    enable_video: bool = Field(type=bool, required=True, mutable=False)
    source: "OCI.MusicOnHoldUserSourceRead16" = Field(
        type=OCI.MusicOnHoldUserSourceRead16, required=True, mutable=False,
    )
    use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    internal_source: "OCI.MusicOnHoldUserSourceRead16" = Field(
        type=OCI.MusicOnHoldUserSourceRead16, required=False, mutable=False,
    )


class UserMusicOnHoldUserGetResponse20(OCIResponse):
    """
    Response to ``UserMusicOnHoldUserGetRequest20()``.


    Attributes:
        enable_video: enableVideo
        source: source
        use_alternate_source_for_internal_calls: useAlternateSourceForInternalCalls
        internal_source: internalSource
    """

    _ELEMENTS = (
        E("enable_video", "enableVideo", bool, is_required=True),
        E(
            "source", "source", OCI.MusicOnHoldUserSourceRead20, is_complex=True,
            is_required=True,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls", bool, is_required=True,
        ),
        E(
            "internal_source", "internalSource", OCI.MusicOnHoldUserSourceRead20,
            is_complex=True,
        ),
    )

    enable_video: bool = Field(type=bool, required=True, mutable=False)
    source: "OCI.MusicOnHoldUserSourceRead20" = Field(
        type=OCI.MusicOnHoldUserSourceRead20, required=True, mutable=False,
    )
    use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    internal_source: "OCI.MusicOnHoldUserSourceRead20" = Field(
        type=OCI.MusicOnHoldUserSourceRead20, required=False, mutable=False,
    )


class UserOutgoingCallingPlanAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanAuthorizationCodeGetListRequest()``.


    Attributes:
        code_entry: codeEntry
    """

    _ELEMENTS = (
        E(
            "code_entry", "codeEntry", OCI.OutgoingCallingPlanAuthorizationCodeEntry,
            is_complex=True, is_array=True,
        ),
    )

    code_entry: "List[OCI.OutgoingCallingPlanAuthorizationCodeEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class UserOutgoingCallingPlanCallMeNowGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanCallMeNowGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingCallingPlanCallMeNowPermissions, is_complex=True, is_required=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingCallingPlanCallMeNowPermissions" = Field(
        type=OCI.OutgoingCallingPlanCallMeNowPermissions, required=True, mutable=False,
    )


class UserOutgoingCallingPlanOriginatingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanOriginatingGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingCallingPlanOriginatingPermissions, is_complex=True,
            is_required=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingCallingPlanOriginatingPermissions" = Field(
        type=OCI.OutgoingCallingPlanOriginatingPermissions, required=True, mutable=False,
    )


class UserOutgoingCallingPlanRedirectedGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanRedirectedGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingCallingPlanRedirectedPermissions, is_complex=True,
            is_required=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingCallingPlanRedirectedPermissions" = Field(
        type=OCI.OutgoingCallingPlanRedirectedPermissions, required=True, mutable=False,
    )


class UserOutgoingCallingPlanRedirectingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanRedirectingGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingCallingPlanRedirectingPermissions, is_complex=True,
            is_required=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingCallingPlanRedirectingPermissions" = Field(
        type=OCI.OutgoingCallingPlanRedirectingPermissions, required=True, mutable=False,
    )


class UserOutgoingCallingPlanTransferNumbersGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanTransferNumbersGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_numbers: userNumbers
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_numbers", "userNumbers", OCI.OutgoingCallingPlanTransferNumbers,
            is_complex=True, is_required=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_numbers: "OCI.OutgoingCallingPlanTransferNumbers" = Field(
        type=OCI.OutgoingCallingPlanTransferNumbers, required=True, mutable=False,
    )


class UserPersonalAssistantCallToNumberGetListResponse(OCIResponse):
    """
    Response to the ``UserPersonalAssistantCallToNumberGetListRequest()``.

    Contains a list of assigned Call to Numbers".

    Attributes:
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserPersonalPhoneListGetListResponse(OCIResponse):
    """
    Response to the ``UserPersonalPhoneListGetListRequest()``.

    The response contains a user's personal phone list.

    Attributes:
        entry: entry
    """

    _ELEMENTS = (
        E("entry", "entry", OCI.PhoneListEntry, is_complex=True, is_array=True),
    )

    entry: "List[OCI.PhoneListEntry]" = Field(type=list, required=False, mutable=False)


class UserPreAlertingAnnouncementGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserPreAlertingAnnouncementGetCriteriaRequest()``.

    Replaced by: ``UserPreAlertingAnnouncementGetCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserPreAlertingAnnouncementGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserPreAlertingAnnouncementGetCriteriaRequest21()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserPreAlertingAnnouncementGetResponse20(OCIResponse):
    """
    Response to a ``UserPreAlertingAnnouncementGetRequest20()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Blacklisted",
    "Calls From", "Calls To Type", "Calls To Number" and "Calls To Extension". The
    possible values for the "Calls To Type" column are the following or a combination of
    them separated by comma: - Primary - Alternate X (where x is a number between 1 and
    10) - Mobility The possible values for the "Calls To Number" column are the following
    or a combination of them separated by comma: - The value of the phone number for the
    corresponding Calls To Type, when the number is available.  i.e.  Alternate 1 may have
    extension, but no number.  - When no number is available a blank space is provided
    instead.  The possible values for the "Calls To Extension" column are the following or
    a combination of them separated by comma: - The value of the extension for the
    corresponding Calls To Type, when the extension is available.  i.e.  Primary may have
    number, but no extension.  - For Mobility Calls To Type, this is always blank.  - When
    no extension is available a blank space is provided instead.

    Attributes:
        is_active: isActive
        audio_selection: audioSelection
        audio_file: audioFile
        audio_file_url: audioFileUrl
        video_selection: videoSelection
        video_file: videoFile
        video_file_url: videoFileUrl
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("audio_selection", "audioSelection", str, is_required=True),
        E("audio_file", "audioFile", OCI.AnnouncementFileLevelKey, is_complex=True),
        E("audio_file_url", "audioFileUrl", str),
        E("video_selection", "videoSelection", str, is_required=True),
        E("video_file", "videoFile", OCI.AnnouncementFileLevelKey, is_complex=True),
        E("video_file_url", "videoFileUrl", str),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    audio_selection: str = Field(type=str, required=True, mutable=False)
    audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    audio_file_url: str = Field(type=str, required=False, mutable=False)
    video_selection: str = Field(type=str, required=True, mutable=False)
    video_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    video_file_url: str = Field(type=str, required=False, mutable=False)
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserPreferredCarrierUserGetResponse(OCIResponse):
    """
    Response to a ``UserPreferredCarrierUserGetRequest()``.


    Attributes:
        intra_lata_carrier: intraLataCarrier
        inter_lata_carrier: interLataCarrier
        international_carrier: internationalCarrier
    """

    _ELEMENTS = (
        E(
            "intra_lata_carrier", "intraLataCarrier", OCI.UserPreferredCarrierName,
            is_complex=True, is_required=True,
        ),
        E(
            "inter_lata_carrier", "interLataCarrier", OCI.UserPreferredCarrierName,
            is_complex=True, is_required=True,
        ),
        E(
            "international_carrier", "internationalCarrier", OCI.UserPreferredCarrierName,
            is_complex=True, is_required=True,
        ),
    )

    intra_lata_carrier: "OCI.UserPreferredCarrierName" = Field(
        type=OCI.UserPreferredCarrierName, required=True, mutable=False,
    )
    inter_lata_carrier: "OCI.UserPreferredCarrierName" = Field(
        type=OCI.UserPreferredCarrierName, required=True, mutable=False,
    )
    international_carrier: "OCI.UserPreferredCarrierName" = Field(
        type=OCI.UserPreferredCarrierName, required=True, mutable=False,
    )


class UserPriorityAlertGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserPriorityAlertGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.PriorityAlertCriteriaFromDn,
            is_complex=True, is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.PriorityAlertCriteriaFromDn" = Field(
        type=OCI.PriorityAlertCriteriaFromDn, required=True, mutable=False,
    )


class UserPriorityAlertGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserPriorityAlertGetCriteriaRequest16()``.

    Replaced by: ``UserPriorityAlertGetCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.PriorityAlertCriteriaFromDn,
            is_complex=True, is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.PriorityAlertCriteriaFromDn" = Field(
        type=OCI.PriorityAlertCriteriaFromDn, required=True, mutable=False,
    )


class UserPriorityAlertGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserPriorityAlertGetCriteriaRequest21()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.PriorityAlertCriteriaFromDn,
            is_complex=True, is_required=True,
        ),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.PriorityAlertCriteriaFromDn" = Field(
        type=OCI.PriorityAlertCriteriaFromDn, required=True, mutable=False,
    )
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserScheduleGetEventResponse(OCIResponse):
    """
    Response to ``UserScheduleGetEventRequest()``.

    The response contains the event of the user schedule.

    Attributes:
        start_date: startDate
        all_day_event: allDayEvent
        start_time: startTime
        end_time: endTime
        end_date: endDate
        recurrence: recurrence
    """

    _ELEMENTS = (
        E("start_date", "startDate", str, is_required=True),
        E("all_day_event", "allDayEvent", bool),
        E("start_time", "startTime", OCI.HourMinute, is_complex=True, is_required=True),
        E("end_time", "endTime", OCI.HourMinute, is_complex=True, is_required=True),
        E("end_date", "endDate", str, is_required=True),
        E("recurrence", "recurrence", OCI.Recurrence, is_complex=True),
    )

    start_date: str = Field(type=str, required=True, mutable=False)
    all_day_event: bool = Field(type=bool, required=False, mutable=False)
    start_time: "OCI.HourMinute" = Field(type=OCI.HourMinute, required=True, mutable=False)
    end_time: "OCI.HourMinute" = Field(type=OCI.HourMinute, required=True, mutable=False)
    end_date: str = Field(type=str, required=True, mutable=False)
    recurrence: "OCI.Recurrence" = Field(type=OCI.Recurrence, required=False, mutable=False)


class UserSelectiveCallAcceptanceGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSelectiveCallAcceptanceGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserSelectiveCallAcceptanceGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserSelectiveCallAcceptanceGetCriteriaRequest16()``.

    Replaced by: ``UserSelectiveCallAcceptanceGetCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserSelectiveCallAcceptanceGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserSelectiveCallAcceptanceGetCriteriaRequest21()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserSelectiveCallRejectionGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSelectiveCallRejectionGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserSelectiveCallRejectionGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserSelectiveCallRejectionGetCriteriaRequest16()``.

    Replaced by: ``UserSelectiveCallRejectionGetCriteriaResponse16sp1()``

    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
        blacklisted: blacklisted
        holiday_schedule: holidaySchedule
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria",
            OCI.SelectiveCallRejectionCriteriaCallType, is_complex=True, is_required=True,
        ),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.SelectiveCallRejectionCriteriaCallType" = Field(
        type=OCI.SelectiveCallRejectionCriteriaCallType, required=True, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )


class UserSelectiveCallRejectionGetCriteriaResponse16sp1(OCIResponse):
    """
    Response to the ``UserSelectiveCallRejectionGetCriteriaRequest16sp1()``.

    Private Phone Numbers are omitted from the fromDnCriteria.  Replaced by:
    ``UserSelectiveCallRejectionGetCriteriaResponse21()``

    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
        blacklisted: blacklisted
        holiday_schedule: holidaySchedule
        private: private
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria",
            OCI.SelectiveCallRejectionCriteriaCallType, is_complex=True, is_required=True,
        ),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("private", "private", bool, is_required=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.SelectiveCallRejectionCriteriaCallType" = Field(
        type=OCI.SelectiveCallRejectionCriteriaCallType, required=True, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    private: bool = Field(type=bool, required=True, mutable=False)


class UserSelectiveCallRejectionGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserSelectiveCallRejectionGetCriteriaRequest21()``.

    Private Phone Numbers are omitted from the fromDnCriteria.

    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
        blacklisted: blacklisted
        holiday_schedule: holidaySchedule
        private: private
        call_to_number: callToNumber
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria",
            OCI.SelectiveCallRejectionCriteriaCallType, is_complex=True, is_required=True,
        ),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("private", "private", bool, is_required=True),
        E("call_to_number", "callToNumber", OCI.CallToNumber, is_complex=True, is_array=True),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.SelectiveCallRejectionCriteriaCallType" = Field(
        type=OCI.SelectiveCallRejectionCriteriaCallType, required=True, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    private: bool = Field(type=bool, required=True, mutable=False)
    call_to_number: "List[OCI.CallToNumber]" = Field(type=list, required=False, mutable=False)


class UserSequentialRingGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSequentialRingGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserSequentialRingGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserSequentialRingGetCriteriaRequest16()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserSequentialRingGetResponse13mp16(OCIResponse):
    """
    Response to the ``UserSequentialRingGetRequest13mp16()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule" and "Calls From".

    Replaced By: ``UserSequentialRingGetResponse14sp4()``

    Attributes:
        ring_base_location_first: ringBaseLocationFirst
        base_location_number_of_rings: baseLocationNumberOfRings
        continue_if_base_location_is_busy: continueIfBaseLocationIsBusy
        caller_may_stop_search: callerMayStopSearch
        location01: Location01
        location02: Location02
        location03: Location03
        location04: Location04
        location05: Location05
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("ring_base_location_first", "ringBaseLocationFirst", bool, is_required=True),
        E(
            "base_location_number_of_rings", "baseLocationNumberOfRings", int,
            is_required=True,
        ),
        E(
            "continue_if_base_location_is_busy", "continueIfBaseLocationIsBusy", bool,
            is_required=True,
        ),
        E("caller_may_stop_search", "callerMayStopSearch", bool, is_required=True),
        E(
            "location01", "Location01", OCI.SequentialRingLocation, is_complex=True,
            is_required=True,
        ),
        E(
            "location02", "Location02", OCI.SequentialRingLocation, is_complex=True,
            is_required=True,
        ),
        E(
            "location03", "Location03", OCI.SequentialRingLocation, is_complex=True,
            is_required=True,
        ),
        E(
            "location04", "Location04", OCI.SequentialRingLocation, is_complex=True,
            is_required=True,
        ),
        E(
            "location05", "Location05", OCI.SequentialRingLocation, is_complex=True,
            is_required=True,
        ),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    ring_base_location_first: bool = Field(type=bool, required=True, mutable=False)
    base_location_number_of_rings: int = Field(type=int, required=True, mutable=False)
    continue_if_base_location_is_busy: bool = Field(type=bool, required=True, mutable=False)
    caller_may_stop_search: bool = Field(type=bool, required=True, mutable=False)
    location01: "OCI.SequentialRingLocation" = Field(
        type=OCI.SequentialRingLocation, required=True, mutable=False,
    )
    location02: "OCI.SequentialRingLocation" = Field(
        type=OCI.SequentialRingLocation, required=True, mutable=False,
    )
    location03: "OCI.SequentialRingLocation" = Field(
        type=OCI.SequentialRingLocation, required=True, mutable=False,
    )
    location04: "OCI.SequentialRingLocation" = Field(
        type=OCI.SequentialRingLocation, required=True, mutable=False,
    )
    location05: "OCI.SequentialRingLocation" = Field(
        type=OCI.SequentialRingLocation, required=True, mutable=False,
    )
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserSequentialRingGetResponse14sp4(OCIResponse):
    """
    Response to the ``UserSequentialRingGetRequest14sp4()``.

    The criteria table's column headings are: "Is Active", "Criteria Name", "Time
    Schedule", "Calls From", "Blacklisted" and "Holiday Schedule".

    Attributes:
        ring_base_location_first: ringBaseLocationFirst
        base_location_number_of_rings: baseLocationNumberOfRings
        continue_if_base_location_is_busy: continueIfBaseLocationIsBusy
        caller_may_stop_search: callerMayStopSearch
        location01: Location01
        location02: Location02
        location03: Location03
        location04: Location04
        location05: Location05
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("ring_base_location_first", "ringBaseLocationFirst", bool, is_required=True),
        E(
            "base_location_number_of_rings", "baseLocationNumberOfRings", int,
            is_required=True,
        ),
        E(
            "continue_if_base_location_is_busy", "continueIfBaseLocationIsBusy", bool,
            is_required=True,
        ),
        E("caller_may_stop_search", "callerMayStopSearch", bool, is_required=True),
        E(
            "location01", "Location01", OCI.SequentialRingLocation14sp4, is_complex=True,
            is_required=True,
        ),
        E(
            "location02", "Location02", OCI.SequentialRingLocation14sp4, is_complex=True,
            is_required=True,
        ),
        E(
            "location03", "Location03", OCI.SequentialRingLocation14sp4, is_complex=True,
            is_required=True,
        ),
        E(
            "location04", "Location04", OCI.SequentialRingLocation14sp4, is_complex=True,
            is_required=True,
        ),
        E(
            "location05", "Location05", OCI.SequentialRingLocation14sp4, is_complex=True,
            is_required=True,
        ),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    ring_base_location_first: bool = Field(type=bool, required=True, mutable=False)
    base_location_number_of_rings: int = Field(type=int, required=True, mutable=False)
    continue_if_base_location_is_busy: bool = Field(type=bool, required=True, mutable=False)
    caller_may_stop_search: bool = Field(type=bool, required=True, mutable=False)
    location01: "OCI.SequentialRingLocation14sp4" = Field(
        type=OCI.SequentialRingLocation14sp4, required=True, mutable=False,
    )
    location02: "OCI.SequentialRingLocation14sp4" = Field(
        type=OCI.SequentialRingLocation14sp4, required=True, mutable=False,
    )
    location03: "OCI.SequentialRingLocation14sp4" = Field(
        type=OCI.SequentialRingLocation14sp4, required=True, mutable=False,
    )
    location04: "OCI.SequentialRingLocation14sp4" = Field(
        type=OCI.SequentialRingLocation14sp4, required=True, mutable=False,
    )
    location05: "OCI.SequentialRingLocation14sp4" = Field(
        type=OCI.SequentialRingLocation14sp4, required=True, mutable=False,
    )
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserSimultaneousRingFamilyGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingFamilyGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserSimultaneousRingFamilyGetResponse17(OCIResponse):
    """
    Response to the ``UserSimultaneousRingFamilyGetRequest17()``.

    Contains a criteria table wich column heading: "Is Active", "Criteria Name", "Time
    Schedule", "Holiday Schedule", "Calls From" and "Blacklisted".

    Attributes:
        is_active: isActive
        do_not_ring_if_on_call: doNotRingIfOnCall
        simultaneous_ring_number: simultaneousRingNumber
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("do_not_ring_if_on_call", "doNotRingIfOnCall", bool, is_required=True),
        E(
            "simultaneous_ring_number", "simultaneousRingNumber",
            OCI.SimultaneousRingNumber, is_complex=True,
        ),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    do_not_ring_if_on_call: bool = Field(type=bool, required=True, mutable=False)
    simultaneous_ring_number: "OCI.SimultaneousRingNumber" = Field(
        type=OCI.SimultaneousRingNumber, required=False, mutable=False,
    )
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserSimultaneousRingPersonalGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingPersonalGetCriteriaRequest()``.


    Attributes:
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
        blacklisted: blacklisted
        from_dn_criteria: fromDnCriteria
    """

    _ELEMENTS = (
        E("time_schedule", "timeSchedule", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("blacklisted", "blacklisted", bool, is_required=True),
        E(
            "from_dn_criteria", "fromDnCriteria", OCI.CriteriaFromDn, is_complex=True,
            is_required=True,
        ),
    )

    time_schedule: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    blacklisted: bool = Field(type=bool, required=True, mutable=False)
    from_dn_criteria: "OCI.CriteriaFromDn" = Field(
        type=OCI.CriteriaFromDn, required=True, mutable=False,
    )


class UserSimultaneousRingPersonalGetResponse17(OCIResponse):
    """
    Response to the ``UserSimultaneousRingPersonalGetRequest17()``.

    Contains a criteria table with column heading: "Is Active", "Criteria Name", "Time
    Schedule", "Holiday Schedule", "Calls From" and "Blacklisted".

    Attributes:
        is_active: isActive
        do_not_ring_if_on_call: doNotRingIfOnCall
        simultaneous_ring_number: simultaneousRingNumber
        criteria_table: criteriaTable
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("do_not_ring_if_on_call", "doNotRingIfOnCall", bool, is_required=True),
        E(
            "simultaneous_ring_number", "simultaneousRingNumber",
            OCI.SimultaneousRingNumber, is_complex=True,
        ),
        E(
            "criteria_table", "criteriaTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    do_not_ring_if_on_call: bool = Field(type=bool, required=True, mutable=False)
    simultaneous_ring_number: "OCI.SimultaneousRingNumber" = Field(
        type=OCI.SimultaneousRingNumber, required=False, mutable=False,
    )
    criteria_table: "list" = Field(type=list, required=True, mutable=False)


class UserSpeedDial100GetListResponse(OCIResponse):
    """
    Response to the ``UserSpeedDial100GetListRequest()``.


    Attributes:
        prefix: prefix
        speed_dial_entry: speedDialEntry
    """

    _ELEMENTS = (
        E("prefix", "prefix", str, is_required=True),
        E("speed_dial_entry", "speedDialEntry", OCI.SpeedDial100Entry, is_complex=True),
    )

    prefix: str = Field(type=str, required=True, mutable=False)
    speed_dial_entry: "OCI.SpeedDial100Entry" = Field(
        type=OCI.SpeedDial100Entry, required=False, mutable=False,
    )


class UserSpeedDial100GetListResponse17sp1(OCIResponse):
    """
    Response to the ``UserSpeedDial100GetListRequest17sp1()``.


    Attributes:
        prefix: prefix
        speed_dial_entry: speedDialEntry
    """

    _ELEMENTS = (
        E("prefix", "prefix", str),
        E("speed_dial_entry", "speedDialEntry", OCI.SpeedDial100Entry, is_complex=True),
    )

    prefix: str = Field(type=str, required=False, mutable=False)
    speed_dial_entry: "OCI.SpeedDial100Entry" = Field(
        type=OCI.SpeedDial100Entry, required=False, mutable=False,
    )


class UserSpeedDial8GetListResponse(OCIResponse):
    """
    Response to the ``UserSpeedDial8GetListRequest()``.


    Attributes:
        speed_dial_entry: speedDialEntry
    """

    _ELEMENTS = (
        E(
            "speed_dial_entry", "speedDialEntry", OCI.SpeedDial8Entry, is_complex=True,
            is_required=True,
        ),
    )

    speed_dial_entry: "OCI.SpeedDial8Entry" = Field(
        type=OCI.SpeedDial8Entry, required=True, mutable=False,
    )


class UserTimeScheduleGetResponse(OCIResponse):
    """
    Response to the ``UserTimeScheduleGetRequest()``.

    The response contains the requested time schedule information.

    Attributes:
        time_schedule_name: timeScheduleName
        time_interval01: timeInterval01
        time_interval02: timeInterval02
        time_interval03: timeInterval03
        time_interval04: timeInterval04
        time_interval05: timeInterval05
        time_interval06: timeInterval06
        time_interval07: timeInterval07
        time_interval08: timeInterval08
        time_interval09: timeInterval09
        time_interval10: timeInterval10
        time_interval11: timeInterval11
        time_interval12: timeInterval12
        time_interval13: timeInterval13
        time_interval14: timeInterval14
        time_interval15: timeInterval15
        time_interval16: timeInterval16
        time_interval17: timeInterval17
        time_interval18: timeInterval18
        time_interval19: timeInterval19
        time_interval20: timeInterval20
    """

    _ELEMENTS = (
        E("time_schedule_name", "timeScheduleName", str, is_required=True),
        E("time_interval01", "timeInterval01", OCI.TimeInterval, is_complex=True),
        E("time_interval02", "timeInterval02", OCI.TimeInterval, is_complex=True),
        E("time_interval03", "timeInterval03", OCI.TimeInterval, is_complex=True),
        E("time_interval04", "timeInterval04", OCI.TimeInterval, is_complex=True),
        E("time_interval05", "timeInterval05", OCI.TimeInterval, is_complex=True),
        E("time_interval06", "timeInterval06", OCI.TimeInterval, is_complex=True),
        E("time_interval07", "timeInterval07", OCI.TimeInterval, is_complex=True),
        E("time_interval08", "timeInterval08", OCI.TimeInterval, is_complex=True),
        E("time_interval09", "timeInterval09", OCI.TimeInterval, is_complex=True),
        E("time_interval10", "timeInterval10", OCI.TimeInterval, is_complex=True),
        E("time_interval11", "timeInterval11", OCI.TimeInterval, is_complex=True),
        E("time_interval12", "timeInterval12", OCI.TimeInterval, is_complex=True),
        E("time_interval13", "timeInterval13", OCI.TimeInterval, is_complex=True),
        E("time_interval14", "timeInterval14", OCI.TimeInterval, is_complex=True),
        E("time_interval15", "timeInterval15", OCI.TimeInterval, is_complex=True),
        E("time_interval16", "timeInterval16", OCI.TimeInterval, is_complex=True),
        E("time_interval17", "timeInterval17", OCI.TimeInterval, is_complex=True),
        E("time_interval18", "timeInterval18", OCI.TimeInterval, is_complex=True),
        E("time_interval19", "timeInterval19", OCI.TimeInterval, is_complex=True),
        E("time_interval20", "timeInterval20", OCI.TimeInterval, is_complex=True),
    )

    time_schedule_name: str = Field(type=str, required=True, mutable=False)
    time_interval01: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval02: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval03: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval04: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval05: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval06: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval07: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval08: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval09: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval10: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval11: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval12: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval13: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval14: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval15: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval16: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval17: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval18: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval19: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )
    time_interval20: "OCI.TimeInterval" = Field(
        type=OCI.TimeInterval, required=False, mutable=False,
    )


class UserVoiceMessagingUserGetGreetingResponse13mp16(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetGreetingRequest13mp16()``.

    Contains the greeting configuration for a user's voice messaging.

    Replaced By: ``UserVoiceMessagingUserGetGreetingResponse16()``

    Attributes:
        busy_announcement_selection: busyAnnouncementSelection
        busy_personal_audio_file: busyPersonalAudioFile
        busy_personal_video_file: busyPersonalVideoFile
        no_answer_announcement_selection: noAnswerAnnouncementSelection
        no_answer_personal_audio_file: noAnswerPersonalAudioFile
        no_answer_personal_video_file: noAnswerPersonalVideoFile
        no_answer_alternate_greeting01: noAnswerAlternateGreeting01
        no_answer_alternate_greeting02: noAnswerAlternateGreeting02
        no_answer_alternate_greeting03: noAnswerAlternateGreeting03
        no_answer_number_of_rings: noAnswerNumberOfRings
    """

    _ELEMENTS = (
        E("busy_announcement_selection", "busyAnnouncementSelection", str, is_required=True),
        E("busy_personal_audio_file", "busyPersonalAudioFile", str),
        E("busy_personal_video_file", "busyPersonalVideoFile", str),
        E(
            "no_answer_announcement_selection", "noAnswerAnnouncementSelection", str,
            is_required=True,
        ),
        E("no_answer_personal_audio_file", "noAnswerPersonalAudioFile", str),
        E("no_answer_personal_video_file", "noAnswerPersonalVideoFile", str),
        E(
            "no_answer_alternate_greeting01", "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting02", "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting03", "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead, is_complex=True,
        ),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
    )

    busy_announcement_selection: str = Field(type=str, required=True, mutable=False)
    busy_personal_audio_file: str = Field(type=str, required=False, mutable=False)
    busy_personal_video_file: str = Field(type=str, required=False, mutable=False)
    no_answer_announcement_selection: str = Field(type=str, required=True, mutable=False)
    no_answer_personal_audio_file: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_video_file: str = Field(type=str, required=False, mutable=False)
    no_answer_alternate_greeting01: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting02: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting03: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead, required=False,
        mutable=False,
    )
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)


class UserVoiceMessagingUserGetGreetingResponse16(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetGreetingRequest16()``.

    Contains the greeting configuration for a user's voice messaging.

    Attributes:
        busy_announcement_selection: busyAnnouncementSelection
        busy_personal_audio_file: busyPersonalAudioFile
        busy_personal_audio_media_type: busyPersonalAudioMediaType
        busy_personal_video_file: busyPersonalVideoFile
        busy_personal_video_media_type: busyPersonalVideoMediaType
        no_answer_announcement_selection: noAnswerAnnouncementSelection
        no_answer_personal_audio_file: noAnswerPersonalAudioFile
        no_answer_personal_audio_media_type: noAnswerPersonalAudioMediaType
        no_answer_personal_video_file: noAnswerPersonalVideoFile
        no_answer_personal_video_media_type: noAnswerPersonalVideoMediaType
        no_answer_alternate_greeting01: noAnswerAlternateGreeting01
        no_answer_alternate_greeting02: noAnswerAlternateGreeting02
        no_answer_alternate_greeting03: noAnswerAlternateGreeting03
        no_answer_number_of_rings: noAnswerNumberOfRings
    """

    _ELEMENTS = (
        E("busy_announcement_selection", "busyAnnouncementSelection", str, is_required=True),
        E("busy_personal_audio_file", "busyPersonalAudioFile", str),
        E("busy_personal_audio_media_type", "busyPersonalAudioMediaType", str),
        E("busy_personal_video_file", "busyPersonalVideoFile", str),
        E("busy_personal_video_media_type", "busyPersonalVideoMediaType", str),
        E(
            "no_answer_announcement_selection", "noAnswerAnnouncementSelection", str,
            is_required=True,
        ),
        E("no_answer_personal_audio_file", "noAnswerPersonalAudioFile", str),
        E("no_answer_personal_audio_media_type", "noAnswerPersonalAudioMediaType", str),
        E("no_answer_personal_video_file", "noAnswerPersonalVideoFile", str),
        E("no_answer_personal_video_media_type", "noAnswerPersonalVideoMediaType", str),
        E(
            "no_answer_alternate_greeting01", "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting02", "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting03", "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, is_complex=True,
        ),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
    )

    busy_announcement_selection: str = Field(type=str, required=True, mutable=False)
    busy_personal_audio_file: str = Field(type=str, required=False, mutable=False)
    busy_personal_audio_media_type: str = Field(type=str, required=False, mutable=False)
    busy_personal_video_file: str = Field(type=str, required=False, mutable=False)
    busy_personal_video_media_type: str = Field(type=str, required=False, mutable=False)
    no_answer_announcement_selection: str = Field(type=str, required=True, mutable=False)
    no_answer_personal_audio_file: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_audio_media_type: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_video_file: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_video_media_type: str = Field(type=str, required=False, mutable=False)
    no_answer_alternate_greeting01: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead16" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting02: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead16" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting03: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead16" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, required=False,
        mutable=False,
    )
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)


class UserVoiceMessagingUserGetGreetingResponse18(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetGreetingRequest18()``.

    Contains the greeting configuration for a user's voice messaging.  The following
    elements are only used in AS data mode: disableMessageDeposit
    disableMessageDepositAction greetingOnlyForwardDestination Replaced by
    ``UserVoiceMessagingUserGetGreetingResponse18sp1()``

    Attributes:
        busy_announcement_selection: busyAnnouncementSelection
        busy_personal_audio_file: busyPersonalAudioFile
        busy_personal_audio_media_type: busyPersonalAudioMediaType
        busy_personal_video_file: busyPersonalVideoFile
        busy_personal_video_media_type: busyPersonalVideoMediaType
        no_answer_announcement_selection: noAnswerAnnouncementSelection
        no_answer_personal_audio_file: noAnswerPersonalAudioFile
        no_answer_personal_audio_media_type: noAnswerPersonalAudioMediaType
        no_answer_personal_video_file: noAnswerPersonalVideoFile
        no_answer_personal_video_media_type: noAnswerPersonalVideoMediaType
        no_answer_alternate_greeting01: noAnswerAlternateGreeting01
        no_answer_alternate_greeting02: noAnswerAlternateGreeting02
        no_answer_alternate_greeting03: noAnswerAlternateGreeting03
        no_answer_number_of_rings: noAnswerNumberOfRings
        disable_message_deposit: disableMessageDeposit
        disable_message_deposit_action: disableMessageDepositAction
        greeting_only_forward_destination: greetingOnlyForwardDestination
    """

    _ELEMENTS = (
        E("busy_announcement_selection", "busyAnnouncementSelection", str, is_required=True),
        E("busy_personal_audio_file", "busyPersonalAudioFile", str),
        E("busy_personal_audio_media_type", "busyPersonalAudioMediaType", str),
        E("busy_personal_video_file", "busyPersonalVideoFile", str),
        E("busy_personal_video_media_type", "busyPersonalVideoMediaType", str),
        E(
            "no_answer_announcement_selection", "noAnswerAnnouncementSelection", str,
            is_required=True,
        ),
        E("no_answer_personal_audio_file", "noAnswerPersonalAudioFile", str),
        E("no_answer_personal_audio_media_type", "noAnswerPersonalAudioMediaType", str),
        E("no_answer_personal_video_file", "noAnswerPersonalVideoFile", str),
        E("no_answer_personal_video_media_type", "noAnswerPersonalVideoMediaType", str),
        E(
            "no_answer_alternate_greeting01", "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting02", "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting03", "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, is_complex=True,
        ),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("disable_message_deposit", "disableMessageDeposit", bool, is_required=True),
        E(
            "disable_message_deposit_action", "disableMessageDepositAction", str,
            is_required=True,
        ),
        E("greeting_only_forward_destination", "greetingOnlyForwardDestination", str),
    )

    busy_announcement_selection: str = Field(type=str, required=True, mutable=False)
    busy_personal_audio_file: str = Field(type=str, required=False, mutable=False)
    busy_personal_audio_media_type: str = Field(type=str, required=False, mutable=False)
    busy_personal_video_file: str = Field(type=str, required=False, mutable=False)
    busy_personal_video_media_type: str = Field(type=str, required=False, mutable=False)
    no_answer_announcement_selection: str = Field(type=str, required=True, mutable=False)
    no_answer_personal_audio_file: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_audio_media_type: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_video_file: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_video_media_type: str = Field(type=str, required=False, mutable=False)
    no_answer_alternate_greeting01: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead16" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting02: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead16" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting03: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead16" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, required=False,
        mutable=False,
    )
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    disable_message_deposit: bool = Field(type=bool, required=True, mutable=False)
    disable_message_deposit_action: str = Field(type=str, required=True, mutable=False)
    greeting_only_forward_destination: str = Field(type=str, required=False, mutable=False)


class UserVoiceMessagingUserGetGreetingResponse18sp1(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetGreetingRequest18sp1()``.

    Contains the greeting configuration for a user's voice messaging.  The following
    elements are only used in AS data mode: disableMessageDeposit
    disableMessageDepositAction greetingOnlyForwardDestination extendedAwayEnabled
    extendedAwayDisableMessageDeposit extendedAwayAudioFile extendedAwayAudioMediaType
    extendedAwayVideoFile extendedAwayVideoMediaTyp Replaced by
    ``UserVoiceMessagingUserGetGreetingResponse20()``

    Attributes:
        busy_announcement_selection: busyAnnouncementSelection
        busy_personal_audio_file: busyPersonalAudioFile
        busy_personal_audio_media_type: busyPersonalAudioMediaType
        busy_personal_video_file: busyPersonalVideoFile
        busy_personal_video_media_type: busyPersonalVideoMediaType
        no_answer_announcement_selection: noAnswerAnnouncementSelection
        no_answer_personal_audio_file: noAnswerPersonalAudioFile
        no_answer_personal_audio_media_type: noAnswerPersonalAudioMediaType
        no_answer_personal_video_file: noAnswerPersonalVideoFile
        no_answer_personal_video_media_type: noAnswerPersonalVideoMediaType
        extended_away_enabled: extendedAwayEnabled
        extended_away_disable_message_deposit: extendedAwayDisableMessageDeposit
        extended_away_audio_file: extendedAwayAudioFile
        extended_away_audio_media_type: extendedAwayAudioMediaType
        extended_away_video_file: extendedAwayVideoFile
        extended_away_video_media_type: extendedAwayVideoMediaType
        no_answer_alternate_greeting01: noAnswerAlternateGreeting01
        no_answer_alternate_greeting02: noAnswerAlternateGreeting02
        no_answer_alternate_greeting03: noAnswerAlternateGreeting03
        no_answer_number_of_rings: noAnswerNumberOfRings
        disable_message_deposit: disableMessageDeposit
        disable_message_deposit_action: disableMessageDepositAction
        greeting_only_forward_destination: greetingOnlyForwardDestination
    """

    _ELEMENTS = (
        E("busy_announcement_selection", "busyAnnouncementSelection", str, is_required=True),
        E("busy_personal_audio_file", "busyPersonalAudioFile", str),
        E("busy_personal_audio_media_type", "busyPersonalAudioMediaType", str),
        E("busy_personal_video_file", "busyPersonalVideoFile", str),
        E("busy_personal_video_media_type", "busyPersonalVideoMediaType", str),
        E(
            "no_answer_announcement_selection", "noAnswerAnnouncementSelection", str,
            is_required=True,
        ),
        E("no_answer_personal_audio_file", "noAnswerPersonalAudioFile", str),
        E("no_answer_personal_audio_media_type", "noAnswerPersonalAudioMediaType", str),
        E("no_answer_personal_video_file", "noAnswerPersonalVideoFile", str),
        E("no_answer_personal_video_media_type", "noAnswerPersonalVideoMediaType", str),
        E("extended_away_enabled", "extendedAwayEnabled", bool, is_required=True),
        E(
            "extended_away_disable_message_deposit", "extendedAwayDisableMessageDeposit",
            bool, is_required=True,
        ),
        E("extended_away_audio_file", "extendedAwayAudioFile", str),
        E("extended_away_audio_media_type", "extendedAwayAudioMediaType", str),
        E("extended_away_video_file", "extendedAwayVideoFile", str),
        E("extended_away_video_media_type", "extendedAwayVideoMediaType", str),
        E(
            "no_answer_alternate_greeting01", "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting02", "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting03", "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, is_complex=True,
        ),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("disable_message_deposit", "disableMessageDeposit", bool, is_required=True),
        E(
            "disable_message_deposit_action", "disableMessageDepositAction", str,
            is_required=True,
        ),
        E("greeting_only_forward_destination", "greetingOnlyForwardDestination", str),
    )

    busy_announcement_selection: str = Field(type=str, required=True, mutable=False)
    busy_personal_audio_file: str = Field(type=str, required=False, mutable=False)
    busy_personal_audio_media_type: str = Field(type=str, required=False, mutable=False)
    busy_personal_video_file: str = Field(type=str, required=False, mutable=False)
    busy_personal_video_media_type: str = Field(type=str, required=False, mutable=False)
    no_answer_announcement_selection: str = Field(type=str, required=True, mutable=False)
    no_answer_personal_audio_file: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_audio_media_type: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_video_file: str = Field(type=str, required=False, mutable=False)
    no_answer_personal_video_media_type: str = Field(type=str, required=False, mutable=False)
    extended_away_enabled: bool = Field(type=bool, required=True, mutable=False)
    extended_away_disable_message_deposit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    extended_away_audio_file: str = Field(type=str, required=False, mutable=False)
    extended_away_audio_media_type: str = Field(type=str, required=False, mutable=False)
    extended_away_video_file: str = Field(type=str, required=False, mutable=False)
    extended_away_video_media_type: str = Field(type=str, required=False, mutable=False)
    no_answer_alternate_greeting01: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead16" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting02: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead16" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting03: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead16" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16, required=False,
        mutable=False,
    )
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    disable_message_deposit: bool = Field(type=bool, required=True, mutable=False)
    disable_message_deposit_action: str = Field(type=str, required=True, mutable=False)
    greeting_only_forward_destination: str = Field(type=str, required=False, mutable=False)


class UserVoiceMessagingUserGetVoicePortalResponse20(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetVoicePortalRequest20()``.


    Attributes:
        use_personalized_name: usePersonalizedName
        voice_portal_auto_login: voicePortalAutoLogin
        personalized_name_audio_file: personalizedNameAudioFile
    """

    _ELEMENTS = (
        E("use_personalized_name", "usePersonalizedName", bool, is_required=True),
        E("voice_portal_auto_login", "voicePortalAutoLogin", bool, is_required=True),
        E(
            "personalized_name_audio_file", "personalizedNameAudioFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
    )

    use_personalized_name: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_auto_login: bool = Field(type=bool, required=True, mutable=False)
    personalized_name_audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )


class EnterpriseSessionAdmissionControlGetAvailableDeviceListResponse(OCIResponse):
    """
    Response to ``EnterpriseSessionAdmissionControlGetAvailableDeviceListRequest()``.

    Contains a table of devices can be assigned to session admission control group in the
    enterprise.

    Attributes:
        access_device: accessDevice
    """

    _ELEMENTS = (
        E(
            "access_device", "accessDevice", OCI.EnterpriseAccessDevice, is_complex=True,
            is_array=True,
        ),
    )

    access_device: "List[OCI.EnterpriseAccessDevice]" = Field(
        type=list, required=False, mutable=False,
    )


class EnterpriseSessionAdmissionControlGroupGetResponse(OCIResponse):
    """
    Response to ``EnterpriseSessionAdmissionControlGroupGetRequest()``.

    Returns the profile information for the session admission control group.

    Attributes:
        max_session: maxSession
        max_user_originating_sessions: maxUserOriginatingSessions
        max_user_terminating_sessions: maxUserTerminatingSessions
        reserved_session: reservedSession
        reserved_user_originating_sessions: reservedUserOriginatingSessions
        reserved_user_terminating_sessions: reservedUserTerminatingSessions
        default_group: defaultGroup
        count_intra_sac_group_sessions: countIntraSACGroupSessions
        devices: devices
    """

    _ELEMENTS = (
        E("max_session", "maxSession", int, is_required=True),
        E("max_user_originating_sessions", "maxUserOriginatingSessions", int),
        E("max_user_terminating_sessions", "maxUserTerminatingSessions", int),
        E("reserved_session", "reservedSession", int, is_required=True),
        E("reserved_user_originating_sessions", "reservedUserOriginatingSessions", int),
        E("reserved_user_terminating_sessions", "reservedUserTerminatingSessions", int),
        E("default_group", "defaultGroup", bool, is_required=True),
        E(
            "count_intra_sac_group_sessions", "countIntraSACGroupSessions", bool,
            is_required=True,
        ),
        E("devices", "devices", OCI.EnterpriseAccessDevice, is_complex=True, is_array=True),
    )

    max_session: int = Field(type=int, required=True, mutable=False)
    max_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    max_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    reserved_session: int = Field(type=int, required=True, mutable=False)
    reserved_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    reserved_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    default_group: bool = Field(type=bool, required=True, mutable=False)
    count_intra_sac_group_sessions: bool = Field(type=bool, required=True, mutable=False)
    devices: "List[OCI.EnterpriseAccessDevice]" = Field(
        type=list, required=False, mutable=False,
    )


class EnterpriseSessionAdmissionControlGroupGetResponse19sp1(OCIResponse):
    """
    Response to ``EnterpriseSessionAdmissionControlGroupGetRequest19sp1()``.

    Returns the profile information for the session admission control group.

    Attributes:
        max_session: maxSession
        max_user_originating_sessions: maxUserOriginatingSessions
        max_user_terminating_sessions: maxUserTerminatingSessions
        reserved_session: reservedSession
        reserved_user_originating_sessions: reservedUserOriginatingSessions
        reserved_user_terminating_sessions: reservedUserTerminatingSessions
        default_group: defaultGroup
        count_intra_sac_group_sessions: countIntraSACGroupSessions
        devices: devices
        block_emergency_and_repair_calls_due_to_sac_limits:
            blockEmergencyAndRepairCallsDueToSACLimits
    """

    _ELEMENTS = (
        E("max_session", "maxSession", int, is_required=True),
        E("max_user_originating_sessions", "maxUserOriginatingSessions", int),
        E("max_user_terminating_sessions", "maxUserTerminatingSessions", int),
        E("reserved_session", "reservedSession", int, is_required=True),
        E("reserved_user_originating_sessions", "reservedUserOriginatingSessions", int),
        E("reserved_user_terminating_sessions", "reservedUserTerminatingSessions", int),
        E("default_group", "defaultGroup", bool, is_required=True),
        E(
            "count_intra_sac_group_sessions", "countIntraSACGroupSessions", bool,
            is_required=True,
        ),
        E("devices", "devices", OCI.EnterpriseAccessDevice, is_complex=True, is_array=True),
        E(
            "block_emergency_and_repair_calls_due_to_sac_limits",
            "blockEmergencyAndRepairCallsDueToSACLimits", bool, is_required=True,
        ),
    )

    max_session: int = Field(type=int, required=True, mutable=False)
    max_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    max_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    reserved_session: int = Field(type=int, required=True, mutable=False)
    reserved_user_originating_sessions: int = Field(type=int, required=False, mutable=False)
    reserved_user_terminating_sessions: int = Field(type=int, required=False, mutable=False)
    default_group: bool = Field(type=bool, required=True, mutable=False)
    count_intra_sac_group_sessions: bool = Field(type=bool, required=True, mutable=False)
    devices: "List[OCI.EnterpriseAccessDevice]" = Field(
        type=list, required=False, mutable=False,
    )
    block_emergency_and_repair_calls_due_to_sac_limits: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupAutoAttendantSubmenuGetResponse(OCIResponse):
    """
    Response to ``GroupAutoAttendantSubmenuGetRequest()``.

    Contains AutoAttendant submenu information.

    Attributes:
        announcement_selection: announcementSelection
        audio_file_description: audioFileDescription
        audio_media_type: audioMediaType
        video_file_description: videoFileDescription
        video_media_type: videoMediaType
        enable_level_extension_dialing: enableLevelExtensionDialing
        key_configuration: keyConfiguration
    """

    _ELEMENTS = (
        E("announcement_selection", "announcementSelection", str, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("audio_media_type", "audioMediaType", str),
        E("video_file_description", "videoFileDescription", str),
        E("video_media_type", "videoMediaType", str),
        E(
            "enable_level_extension_dialing", "enableLevelExtensionDialing", bool,
            is_required=True,
        ),
        E(
            "key_configuration", "keyConfiguration",
            OCI.AutoAttendantKeyReadConfiguration19, is_complex=True,
        ),
    )

    announcement_selection: str = Field(type=str, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    audio_media_type: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)
    video_media_type: str = Field(type=str, required=False, mutable=False)
    enable_level_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    key_configuration: "OCI.AutoAttendantKeyReadConfiguration19" = Field(
        type=OCI.AutoAttendantKeyReadConfiguration19, required=False, mutable=False,
    )


class GroupBroadWorksAnywhereGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupBroadWorksAnywhereGetInstanceRequest()``.

    Contains the service profile information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        broad_works_anywhere_scope: broadWorksAnywhereScope
        prompt_for_clid: promptForCLID
        silent_prompt_mode: silentPromptMode
        prompt_for_passcode: promptForPasscode
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("broad_works_anywhere_scope", "broadWorksAnywhereScope", str, is_required=True),
        E("prompt_for_clid", "promptForCLID", str, is_required=True),
        E("silent_prompt_mode", "silentPromptMode", bool, is_required=True),
        E("prompt_for_passcode", "promptForPasscode", bool, is_required=True),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    broad_works_anywhere_scope: str = Field(type=str, required=True, mutable=False)
    prompt_for_clid: str = Field(type=str, required=True, mutable=False)
    silent_prompt_mode: bool = Field(type=bool, required=True, mutable=False)
    prompt_for_passcode: bool = Field(type=bool, required=True, mutable=False)


class GroupBroadWorksAnywhereGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupBroadWorksAnywhereGetInstanceRequest17()``.

    Contains the service profile information.  Replaced by:
    ``GroupBroadWorksAnywhereGetInstanceResponse19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        broad_works_anywhere_scope: broadWorksAnywhereScope
        prompt_for_clid: promptForCLID
        silent_prompt_mode: silentPromptMode
        prompt_for_passcode: promptForPasscode
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("broad_works_anywhere_scope", "broadWorksAnywhereScope", str, is_required=True),
        E("prompt_for_clid", "promptForCLID", str, is_required=True),
        E("silent_prompt_mode", "silentPromptMode", bool, is_required=True),
        E("prompt_for_passcode", "promptForPasscode", bool, is_required=True),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    broad_works_anywhere_scope: str = Field(type=str, required=True, mutable=False)
    prompt_for_clid: str = Field(type=str, required=True, mutable=False)
    silent_prompt_mode: bool = Field(type=bool, required=True, mutable=False)
    prompt_for_passcode: bool = Field(type=bool, required=True, mutable=False)


class GroupBroadWorksAnywhereGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupBroadWorksAnywhereGetInstanceRequest19sp1()``.

    Contains the service profile information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        broad_works_anywhere_scope: broadWorksAnywhereScope
        prompt_for_clid: promptForCLID
        silent_prompt_mode: silentPromptMode
        prompt_for_passcode: promptForPasscode
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("broad_works_anywhere_scope", "broadWorksAnywhereScope", str, is_required=True),
        E("prompt_for_clid", "promptForCLID", str, is_required=True),
        E("silent_prompt_mode", "silentPromptMode", bool, is_required=True),
        E("prompt_for_passcode", "promptForPasscode", bool, is_required=True),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    broad_works_anywhere_scope: str = Field(type=str, required=True, mutable=False)
    prompt_for_clid: str = Field(type=str, required=True, mutable=False)
    silent_prompt_mode: bool = Field(type=bool, required=True, mutable=False)
    prompt_for_passcode: bool = Field(type=bool, required=True, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterComfortMessageBypassGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterComfortMessageBypassGetRequest20()``.


    Attributes:
        is_active: isActive
        call_waiting_age_threshold_seconds: callWaitingAgeThresholdSeconds
        play_announcement_after_ringing: playAnnouncementAfterRinging
        ring_time_before_playing_announcement_seconds:
            ringTimeBeforePlayingAnnouncementSeconds
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "call_waiting_age_threshold_seconds", "callWaitingAgeThresholdSeconds", int,
            is_required=True,
        ),
        E(
            "play_announcement_after_ringing", "playAnnouncementAfterRinging", bool,
            is_required=True,
        ),
        E(
            "ring_time_before_playing_announcement_seconds",
            "ringTimeBeforePlayingAnnouncementSeconds", int, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    call_waiting_age_threshold_seconds: int = Field(type=int, required=True, mutable=False)
    play_announcement_after_ringing: bool = Field(type=bool, required=True, mutable=False)
    ring_time_before_playing_announcement_seconds: int = Field(
        type=int, required=True, mutable=False,
    )
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupCallCenterForcedForwardingGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterForcedForwardingGetRequest20()``.


    Attributes:
        is_active: isActive
        forward_to_phone_number: forwardToPhoneNumber
        allow_enable_via_fac: allowEnableViaFAC
        play_announcement_before_forwarding: playAnnouncementBeforeForwarding
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E("allow_enable_via_fac", "allowEnableViaFAC", bool, is_required=True),
        E(
            "play_announcement_before_forwarding", "playAnnouncementBeforeForwarding",
            bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    allow_enable_via_fac: bool = Field(type=bool, required=True, mutable=False)
    play_announcement_before_forwarding: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupCallCenterGetInstanceResponse14(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest14()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight".

    Replaced By: ``GroupCallCenterGetInstanceResponse14sp3()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        enable_video: enableVideo
        queue_length: queueLength
        allow_agent_logoff: allowAgentLogoff
        play_music_on_hold: playMusicOnHold
        play_comfort_message: playComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("queue_length", "queueLength", int, is_required=True),
        E("allow_agent_logoff", "allowAgentLogoff", bool, is_required=True),
        E("play_music_on_hold", "playMusicOnHold", bool, is_required=True),
        E("play_comfort_message", "playComfortMessage", bool, is_required=True),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    allow_agent_logoff: bool = Field(type=bool, required=True, mutable=False)
    play_music_on_hold: bool = Field(type=bool, required=True, mutable=False)
    play_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)


class GroupCallCenterGetInstanceResponse14sp3(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest14sp3()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight".

    Replaced By: ``GroupCallCenterGetInstanceResponse14sp9()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        enable_video: enableVideo
        queue_length: queueLength
        allow_agent_logoff: allowAgentLogoff
        play_music_on_hold: playMusicOnHold
        play_comfort_message: playComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        allow_calls_to_agents_in_wrap_up: allowCallsToAgentsInWrapUp
        enable_call_queue_when_no_agents_available: enableCallQueueWhenNoAgentsAvailable
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("queue_length", "queueLength", int, is_required=True),
        E("allow_agent_logoff", "allowAgentLogoff", bool, is_required=True),
        E("play_music_on_hold", "playMusicOnHold", bool, is_required=True),
        E("play_comfort_message", "playComfortMessage", bool, is_required=True),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up", "allowCallsToAgentsInWrapUp", bool,
            is_required=True,
        ),
        E(
            "enable_call_queue_when_no_agents_available",
            "enableCallQueueWhenNoAgentsAvailable", bool, is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    allow_agent_logoff: bool = Field(type=bool, required=True, mutable=False)
    play_music_on_hold: bool = Field(type=bool, required=True, mutable=False)
    play_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    allow_calls_to_agents_in_wrap_up: bool = Field(type=bool, required=True, mutable=False)
    enable_call_queue_when_no_agents_available: bool = Field(
        type=bool, required=True, mutable=False,
    )


class GroupCallCenterGetInstanceResponse14sp9(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest14sp9()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight".

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        enable_video: enableVideo
        queue_length: queueLength
        allow_agent_logoff: allowAgentLogoff
        play_music_on_hold: playMusicOnHold
        play_comfort_message: playComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        enable_guard_timer: enableGuardTimer
        guard_timer_seconds: guardTimerSeconds
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        allow_calls_to_agents_in_wrap_up: allowCallsToAgentsInWrapUp
        enable_call_queue_when_no_agents_available: enableCallQueueWhenNoAgentsAvailable
        statistics_source: statisticsSource
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("queue_length", "queueLength", int, is_required=True),
        E("allow_agent_logoff", "allowAgentLogoff", bool, is_required=True),
        E("play_music_on_hold", "playMusicOnHold", bool, is_required=True),
        E("play_comfort_message", "playComfortMessage", bool, is_required=True),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E("enable_guard_timer", "enableGuardTimer", bool, is_required=True),
        E("guard_timer_seconds", "guardTimerSeconds", int, is_required=True),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up", "allowCallsToAgentsInWrapUp", bool,
            is_required=True,
        ),
        E(
            "enable_call_queue_when_no_agents_available",
            "enableCallQueueWhenNoAgentsAvailable", bool, is_required=True,
        ),
        E("statistics_source", "statisticsSource", str, is_required=True),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    allow_agent_logoff: bool = Field(type=bool, required=True, mutable=False)
    play_music_on_hold: bool = Field(type=bool, required=True, mutable=False)
    play_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    enable_guard_timer: bool = Field(type=bool, required=True, mutable=False)
    guard_timer_seconds: int = Field(type=int, required=True, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    allow_calls_to_agents_in_wrap_up: bool = Field(type=bool, required=True, mutable=False)
    enable_call_queue_when_no_agents_available: bool = Field(
        type=bool, required=True, mutable=False,
    )
    statistics_source: str = Field(type=str, required=True, mutable=False)


class GroupCallCenterGetInstanceResponse16(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest16()``.


    Attributes:
        service_instance_profile: serviceInstanceProfile
        type: type
        policy: policy
        enable_video: enableVideo
        queue_length: queueLength
        reporting_server_name: reportingServerName
        allow_caller_to_dial_escape_digit: allowCallerToDialEscapeDigit
        escape_digit: escapeDigit
        reset_call_statistics_upon_entry_in_queue: resetCallStatisticsUponEntryInQueue
        allow_agent_logoff: allowAgentLogoff
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        allow_calls_to_agents_in_wrap_up: allowCallsToAgentsInWrapUp
        override_agent_wrap_up_time: overrideAgentWrapUpTime
        wrap_up_seconds: wrapUpSeconds
        force_delivery_of_calls: forceDeliveryOfCalls
        force_delivery_wait_time_seconds: forceDeliveryWaitTimeSeconds
        external_preferred_audio_codec: externalPreferredAudioCodec
        internal_preferred_audio_codec: internalPreferredAudioCodec
        play_ringing_when_offering_call: playRingingWhenOfferingCall
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("type", "type", str, is_required=True),
        E("policy", "policy", str, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("queue_length", "queueLength", int, is_required=True),
        E("reporting_server_name", "reportingServerName", str),
        E(
            "allow_caller_to_dial_escape_digit", "allowCallerToDialEscapeDigit", bool,
            is_required=True,
        ),
        E("escape_digit", "escapeDigit", str, is_required=True),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue", bool,
        ),
        E("allow_agent_logoff", "allowAgentLogoff", bool, is_required=True),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E("allow_calls_to_agents_in_wrap_up", "allowCallsToAgentsInWrapUp", bool),
        E("override_agent_wrap_up_time", "overrideAgentWrapUpTime", bool),
        E("wrap_up_seconds", "wrapUpSeconds", int),
        E("force_delivery_of_calls", "forceDeliveryOfCalls", bool),
        E("force_delivery_wait_time_seconds", "forceDeliveryWaitTimeSeconds", int),
        E(
            "external_preferred_audio_codec", "externalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "internal_preferred_audio_codec", "internalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "play_ringing_when_offering_call", "playRingingWhenOfferingCall", bool,
            is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    type: str = Field(type=str, required=True, mutable=False)
    policy: str = Field(type=str, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    reporting_server_name: str = Field(type=str, required=False, mutable=False)
    allow_caller_to_dial_escape_digit: bool = Field(type=bool, required=True, mutable=False)
    escape_digit: str = Field(type=str, required=True, mutable=False)
    reset_call_statistics_upon_entry_in_queue: bool = Field(
        type=bool, required=False, mutable=False,
    )
    allow_agent_logoff: bool = Field(type=bool, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    allow_calls_to_agents_in_wrap_up: bool = Field(type=bool, required=False, mutable=False)
    override_agent_wrap_up_time: bool = Field(type=bool, required=False, mutable=False)
    wrap_up_seconds: int = Field(type=int, required=False, mutable=False)
    force_delivery_of_calls: bool = Field(type=bool, required=False, mutable=False)
    force_delivery_wait_time_seconds: int = Field(type=int, required=False, mutable=False)
    external_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    internal_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    play_ringing_when_offering_call: bool = Field(type=bool, required=True, mutable=False)


class GroupCallCenterGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest17()``.


    Attributes:
        service_instance_profile: serviceInstanceProfile
        type: type
        policy: policy
        enable_video: enableVideo
        queue_length: queueLength
        reporting_server_name: reportingServerName
        allow_caller_to_dial_escape_digit: allowCallerToDialEscapeDigit
        escape_digit: escapeDigit
        reset_call_statistics_upon_entry_in_queue: resetCallStatisticsUponEntryInQueue
        allow_agent_logoff: allowAgentLogoff
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        allow_calls_to_agents_in_wrap_up: allowCallsToAgentsInWrapUp
        override_agent_wrap_up_time: overrideAgentWrapUpTime
        wrap_up_seconds: wrapUpSeconds
        force_delivery_of_calls: forceDeliveryOfCalls
        force_delivery_wait_time_seconds: forceDeliveryWaitTimeSeconds
        enable_automatic_state_change_for_agents: enableAutomaticStateChangeForAgents
        agent_state_after_call: agentStateAfterCall
        agent_unavailable_code: agentUnavailableCode
        external_preferred_audio_codec: externalPreferredAudioCodec
        internal_preferred_audio_codec: internalPreferredAudioCodec
        play_ringing_when_offering_call: playRingingWhenOfferingCall
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("type", "type", str, is_required=True),
        E("policy", "policy", str, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("queue_length", "queueLength", int, is_required=True),
        E("reporting_server_name", "reportingServerName", str),
        E(
            "allow_caller_to_dial_escape_digit", "allowCallerToDialEscapeDigit", bool,
            is_required=True,
        ),
        E("escape_digit", "escapeDigit", str, is_required=True),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue", bool,
        ),
        E("allow_agent_logoff", "allowAgentLogoff", bool, is_required=True),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E("allow_calls_to_agents_in_wrap_up", "allowCallsToAgentsInWrapUp", bool),
        E("override_agent_wrap_up_time", "overrideAgentWrapUpTime", bool),
        E("wrap_up_seconds", "wrapUpSeconds", int),
        E("force_delivery_of_calls", "forceDeliveryOfCalls", bool),
        E("force_delivery_wait_time_seconds", "forceDeliveryWaitTimeSeconds", int),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents", bool,
        ),
        E("agent_state_after_call", "agentStateAfterCall", str),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E(
            "external_preferred_audio_codec", "externalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "internal_preferred_audio_codec", "internalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "play_ringing_when_offering_call", "playRingingWhenOfferingCall", bool,
            is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    type: str = Field(type=str, required=True, mutable=False)
    policy: str = Field(type=str, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    reporting_server_name: str = Field(type=str, required=False, mutable=False)
    allow_caller_to_dial_escape_digit: bool = Field(type=bool, required=True, mutable=False)
    escape_digit: str = Field(type=str, required=True, mutable=False)
    reset_call_statistics_upon_entry_in_queue: bool = Field(
        type=bool, required=False, mutable=False,
    )
    allow_agent_logoff: bool = Field(type=bool, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    allow_calls_to_agents_in_wrap_up: bool = Field(type=bool, required=False, mutable=False)
    override_agent_wrap_up_time: bool = Field(type=bool, required=False, mutable=False)
    wrap_up_seconds: int = Field(type=int, required=False, mutable=False)
    force_delivery_of_calls: bool = Field(type=bool, required=False, mutable=False)
    force_delivery_wait_time_seconds: int = Field(type=int, required=False, mutable=False)
    enable_automatic_state_change_for_agents: bool = Field(
        type=bool, required=False, mutable=False,
    )
    agent_state_after_call: str = Field(type=str, required=False, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    external_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    internal_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    play_ringing_when_offering_call: bool = Field(type=bool, required=True, mutable=False)


class GroupCallCenterGetInstanceResponse17sp1(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest17sp1()``.


    Attributes:
        service_instance_profile: serviceInstanceProfile
        type: type
        policy: policy
        enable_video: enableVideo
        queue_length: queueLength
        enable_reporting: enableReporting
        reporting_server_name: reportingServerName
        allow_caller_to_dial_escape_digit: allowCallerToDialEscapeDigit
        escape_digit: escapeDigit
        reset_call_statistics_upon_entry_in_queue: resetCallStatisticsUponEntryInQueue
        allow_agent_logoff: allowAgentLogoff
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        allow_calls_to_agents_in_wrap_up: allowCallsToAgentsInWrapUp
        override_agent_wrap_up_time: overrideAgentWrapUpTime
        wrap_up_seconds: wrapUpSeconds
        force_delivery_of_calls: forceDeliveryOfCalls
        force_delivery_wait_time_seconds: forceDeliveryWaitTimeSeconds
        enable_automatic_state_change_for_agents: enableAutomaticStateChangeForAgents
        agent_state_after_call: agentStateAfterCall
        agent_unavailable_code: agentUnavailableCode
        external_preferred_audio_codec: externalPreferredAudioCodec
        internal_preferred_audio_codec: internalPreferredAudioCodec
        play_ringing_when_offering_call: playRingingWhenOfferingCall
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("type", "type", str, is_required=True),
        E("policy", "policy", str, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("queue_length", "queueLength", int, is_required=True),
        E("enable_reporting", "enableReporting", bool),
        E("reporting_server_name", "reportingServerName", str),
        E(
            "allow_caller_to_dial_escape_digit", "allowCallerToDialEscapeDigit", bool,
            is_required=True,
        ),
        E("escape_digit", "escapeDigit", str, is_required=True),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue", bool,
        ),
        E("allow_agent_logoff", "allowAgentLogoff", bool, is_required=True),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E("allow_calls_to_agents_in_wrap_up", "allowCallsToAgentsInWrapUp", bool),
        E("override_agent_wrap_up_time", "overrideAgentWrapUpTime", bool),
        E("wrap_up_seconds", "wrapUpSeconds", int),
        E("force_delivery_of_calls", "forceDeliveryOfCalls", bool),
        E("force_delivery_wait_time_seconds", "forceDeliveryWaitTimeSeconds", int),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents", bool,
        ),
        E("agent_state_after_call", "agentStateAfterCall", str),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E(
            "external_preferred_audio_codec", "externalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "internal_preferred_audio_codec", "internalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "play_ringing_when_offering_call", "playRingingWhenOfferingCall", bool,
            is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    type: str = Field(type=str, required=True, mutable=False)
    policy: str = Field(type=str, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    enable_reporting: bool = Field(type=bool, required=False, mutable=False)
    reporting_server_name: str = Field(type=str, required=False, mutable=False)
    allow_caller_to_dial_escape_digit: bool = Field(type=bool, required=True, mutable=False)
    escape_digit: str = Field(type=str, required=True, mutable=False)
    reset_call_statistics_upon_entry_in_queue: bool = Field(
        type=bool, required=False, mutable=False,
    )
    allow_agent_logoff: bool = Field(type=bool, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    allow_calls_to_agents_in_wrap_up: bool = Field(type=bool, required=False, mutable=False)
    override_agent_wrap_up_time: bool = Field(type=bool, required=False, mutable=False)
    wrap_up_seconds: int = Field(type=int, required=False, mutable=False)
    force_delivery_of_calls: bool = Field(type=bool, required=False, mutable=False)
    force_delivery_wait_time_seconds: int = Field(type=int, required=False, mutable=False)
    enable_automatic_state_change_for_agents: bool = Field(
        type=bool, required=False, mutable=False,
    )
    agent_state_after_call: str = Field(type=str, required=False, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    external_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    internal_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    play_ringing_when_offering_call: bool = Field(type=bool, required=True, mutable=False)


class GroupCallCenterGetInstanceResponse17sp3(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest17sp3()``.

    Replaced by ``GroupCallCenterGetInstanceResponse19()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        type: type
        policy: policy
        enable_video: enableVideo
        queue_length: queueLength
        enable_reporting: enableReporting
        reporting_server_name: reportingServerName
        allow_caller_to_dial_escape_digit: allowCallerToDialEscapeDigit
        escape_digit: escapeDigit
        reset_call_statistics_upon_entry_in_queue: resetCallStatisticsUponEntryInQueue
        allow_agent_logoff: allowAgentLogoff
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        allow_calls_to_agents_in_wrap_up: allowCallsToAgentsInWrapUp
        override_agent_wrap_up_time: overrideAgentWrapUpTime
        wrap_up_seconds: wrapUpSeconds
        force_delivery_of_calls: forceDeliveryOfCalls
        force_delivery_wait_time_seconds: forceDeliveryWaitTimeSeconds
        enable_automatic_state_change_for_agents: enableAutomaticStateChangeForAgents
        agent_state_after_call: agentStateAfterCall
        agent_unavailable_code: agentUnavailableCode
        external_preferred_audio_codec: externalPreferredAudioCodec
        internal_preferred_audio_codec: internalPreferredAudioCodec
        play_ringing_when_offering_call: playRingingWhenOfferingCall
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("type", "type", str, is_required=True),
        E("policy", "policy", str, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("queue_length", "queueLength", int, is_required=True),
        E("enable_reporting", "enableReporting", bool),
        E("reporting_server_name", "reportingServerName", str),
        E(
            "allow_caller_to_dial_escape_digit", "allowCallerToDialEscapeDigit", bool,
            is_required=True,
        ),
        E("escape_digit", "escapeDigit", str, is_required=True),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue", bool, is_required=True,
        ),
        E("allow_agent_logoff", "allowAgentLogoff", bool, is_required=True),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E("allow_calls_to_agents_in_wrap_up", "allowCallsToAgentsInWrapUp", bool),
        E("override_agent_wrap_up_time", "overrideAgentWrapUpTime", bool),
        E("wrap_up_seconds", "wrapUpSeconds", int),
        E("force_delivery_of_calls", "forceDeliveryOfCalls", bool),
        E("force_delivery_wait_time_seconds", "forceDeliveryWaitTimeSeconds", int),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents", bool,
        ),
        E("agent_state_after_call", "agentStateAfterCall", str),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E(
            "external_preferred_audio_codec", "externalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "internal_preferred_audio_codec", "internalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "play_ringing_when_offering_call", "playRingingWhenOfferingCall", bool,
            is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    type: str = Field(type=str, required=True, mutable=False)
    policy: str = Field(type=str, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    enable_reporting: bool = Field(type=bool, required=False, mutable=False)
    reporting_server_name: str = Field(type=str, required=False, mutable=False)
    allow_caller_to_dial_escape_digit: bool = Field(type=bool, required=True, mutable=False)
    escape_digit: str = Field(type=str, required=True, mutable=False)
    reset_call_statistics_upon_entry_in_queue: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_agent_logoff: bool = Field(type=bool, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    allow_calls_to_agents_in_wrap_up: bool = Field(type=bool, required=False, mutable=False)
    override_agent_wrap_up_time: bool = Field(type=bool, required=False, mutable=False)
    wrap_up_seconds: int = Field(type=int, required=False, mutable=False)
    force_delivery_of_calls: bool = Field(type=bool, required=False, mutable=False)
    force_delivery_wait_time_seconds: int = Field(type=int, required=False, mutable=False)
    enable_automatic_state_change_for_agents: bool = Field(
        type=bool, required=False, mutable=False,
    )
    agent_state_after_call: str = Field(type=str, required=False, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    external_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    internal_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    play_ringing_when_offering_call: bool = Field(type=bool, required=True, mutable=False)


class GroupCallCenterGetInstanceResponse19(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest19()``.

    Replaced by: Response to ``GroupCallCenterGetInstanceRequest19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        type: type
        routing_type: routingType
        policy: policy
        enable_video: enableVideo
        queue_length: queueLength
        enable_reporting: enableReporting
        allow_caller_to_dial_escape_digit: allowCallerToDialEscapeDigit
        escape_digit: escapeDigit
        reset_call_statistics_upon_entry_in_queue: resetCallStatisticsUponEntryInQueue
        allow_agent_logoff: allowAgentLogoff
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        allow_calls_to_agents_in_wrap_up: allowCallsToAgentsInWrapUp
        override_agent_wrap_up_time: overrideAgentWrapUpTime
        wrap_up_seconds: wrapUpSeconds
        force_delivery_of_calls: forceDeliveryOfCalls
        force_delivery_wait_time_seconds: forceDeliveryWaitTimeSeconds
        enable_automatic_state_change_for_agents: enableAutomaticStateChangeForAgents
        agent_state_after_call: agentStateAfterCall
        agent_unavailable_code: agentUnavailableCode
        external_preferred_audio_codec: externalPreferredAudioCodec
        internal_preferred_audio_codec: internalPreferredAudioCodec
        play_ringing_when_offering_call: playRingingWhenOfferingCall
        call_center_queue_thresholds_is_active: callCenterQueueThresholdsIsActive
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("type", "type", str, is_required=True),
        E("routing_type", "routingType", str),
        E("policy", "policy", str, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("queue_length", "queueLength", int, is_required=True),
        E("enable_reporting", "enableReporting", bool),
        E(
            "allow_caller_to_dial_escape_digit", "allowCallerToDialEscapeDigit", bool,
            is_required=True,
        ),
        E("escape_digit", "escapeDigit", str, is_required=True),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue", bool, is_required=True,
        ),
        E("allow_agent_logoff", "allowAgentLogoff", bool, is_required=True),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E("allow_calls_to_agents_in_wrap_up", "allowCallsToAgentsInWrapUp", bool),
        E("override_agent_wrap_up_time", "overrideAgentWrapUpTime", bool),
        E("wrap_up_seconds", "wrapUpSeconds", int),
        E("force_delivery_of_calls", "forceDeliveryOfCalls", bool),
        E("force_delivery_wait_time_seconds", "forceDeliveryWaitTimeSeconds", int),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents", bool,
        ),
        E("agent_state_after_call", "agentStateAfterCall", str),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E(
            "external_preferred_audio_codec", "externalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "internal_preferred_audio_codec", "internalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "play_ringing_when_offering_call", "playRingingWhenOfferingCall", bool,
            is_required=True,
        ),
        E(
            "call_center_queue_thresholds_is_active", "callCenterQueueThresholdsIsActive",
            bool,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    type: str = Field(type=str, required=True, mutable=False)
    routing_type: str = Field(type=str, required=False, mutable=False)
    policy: str = Field(type=str, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    enable_reporting: bool = Field(type=bool, required=False, mutable=False)
    allow_caller_to_dial_escape_digit: bool = Field(type=bool, required=True, mutable=False)
    escape_digit: str = Field(type=str, required=True, mutable=False)
    reset_call_statistics_upon_entry_in_queue: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_agent_logoff: bool = Field(type=bool, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    allow_calls_to_agents_in_wrap_up: bool = Field(type=bool, required=False, mutable=False)
    override_agent_wrap_up_time: bool = Field(type=bool, required=False, mutable=False)
    wrap_up_seconds: int = Field(type=int, required=False, mutable=False)
    force_delivery_of_calls: bool = Field(type=bool, required=False, mutable=False)
    force_delivery_wait_time_seconds: int = Field(type=int, required=False, mutable=False)
    enable_automatic_state_change_for_agents: bool = Field(
        type=bool, required=False, mutable=False,
    )
    agent_state_after_call: str = Field(type=str, required=False, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    external_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    internal_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    play_ringing_when_offering_call: bool = Field(type=bool, required=True, mutable=False)
    call_center_queue_thresholds_is_active: bool = Field(
        type=bool, required=False, mutable=False,
    )


class GroupCallCenterGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest19sp1()``.


    Attributes:
        service_instance_profile: serviceInstanceProfile
        type: type
        routing_type: routingType
        policy: policy
        enable_video: enableVideo
        queue_length: queueLength
        enable_reporting: enableReporting
        allow_caller_to_dial_escape_digit: allowCallerToDialEscapeDigit
        escape_digit: escapeDigit
        reset_call_statistics_upon_entry_in_queue: resetCallStatisticsUponEntryInQueue
        allow_agent_logoff: allowAgentLogoff
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        allow_calls_to_agents_in_wrap_up: allowCallsToAgentsInWrapUp
        override_agent_wrap_up_time: overrideAgentWrapUpTime
        wrap_up_seconds: wrapUpSeconds
        force_delivery_of_calls: forceDeliveryOfCalls
        force_delivery_wait_time_seconds: forceDeliveryWaitTimeSeconds
        enable_automatic_state_change_for_agents: enableAutomaticStateChangeForAgents
        agent_state_after_call: agentStateAfterCall
        agent_unavailable_code: agentUnavailableCode
        external_preferred_audio_codec: externalPreferredAudioCodec
        internal_preferred_audio_codec: internalPreferredAudioCodec
        play_ringing_when_offering_call: playRingingWhenOfferingCall
        call_center_queue_thresholds_is_active: callCenterQueueThresholdsIsActive
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("type", "type", str, is_required=True),
        E("routing_type", "routingType", str),
        E("policy", "policy", str, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("queue_length", "queueLength", int, is_required=True),
        E("enable_reporting", "enableReporting", bool),
        E(
            "allow_caller_to_dial_escape_digit", "allowCallerToDialEscapeDigit", bool,
            is_required=True,
        ),
        E("escape_digit", "escapeDigit", str, is_required=True),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue", bool, is_required=True,
        ),
        E("allow_agent_logoff", "allowAgentLogoff", bool, is_required=True),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E("allow_calls_to_agents_in_wrap_up", "allowCallsToAgentsInWrapUp", bool),
        E("override_agent_wrap_up_time", "overrideAgentWrapUpTime", bool),
        E("wrap_up_seconds", "wrapUpSeconds", int),
        E("force_delivery_of_calls", "forceDeliveryOfCalls", bool),
        E("force_delivery_wait_time_seconds", "forceDeliveryWaitTimeSeconds", int),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents", bool,
        ),
        E("agent_state_after_call", "agentStateAfterCall", str),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E(
            "external_preferred_audio_codec", "externalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "internal_preferred_audio_codec", "internalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "play_ringing_when_offering_call", "playRingingWhenOfferingCall", bool,
            is_required=True,
        ),
        E(
            "call_center_queue_thresholds_is_active", "callCenterQueueThresholdsIsActive",
            bool,
        ),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    type: str = Field(type=str, required=True, mutable=False)
    routing_type: str = Field(type=str, required=False, mutable=False)
    policy: str = Field(type=str, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    enable_reporting: bool = Field(type=bool, required=False, mutable=False)
    allow_caller_to_dial_escape_digit: bool = Field(type=bool, required=True, mutable=False)
    escape_digit: str = Field(type=str, required=True, mutable=False)
    reset_call_statistics_upon_entry_in_queue: bool = Field(
        type=bool, required=True, mutable=False,
    )
    allow_agent_logoff: bool = Field(type=bool, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    allow_calls_to_agents_in_wrap_up: bool = Field(type=bool, required=False, mutable=False)
    override_agent_wrap_up_time: bool = Field(type=bool, required=False, mutable=False)
    wrap_up_seconds: int = Field(type=int, required=False, mutable=False)
    force_delivery_of_calls: bool = Field(type=bool, required=False, mutable=False)
    force_delivery_wait_time_seconds: int = Field(type=int, required=False, mutable=False)
    enable_automatic_state_change_for_agents: bool = Field(
        type=bool, required=False, mutable=False,
    )
    agent_state_after_call: str = Field(type=str, required=False, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    external_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    internal_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    play_ringing_when_offering_call: bool = Field(type=bool, required=True, mutable=False)
    call_center_queue_thresholds_is_active: bool = Field(
        type=bool, required=False, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupCallCenterGetInstanceStatisticsResponse13mp8(OCIResponse):
    """
    Contains Call Center statistics.

    Replaced By: ``GroupCallCenterGetInstanceStatisticsResponse14sp9()``

    Attributes:
        number_of_calls_queued_now: numberOfCallsQueuedNow
        generate_daily_report: generateDailyReport
        collection_period_minutes: collectionPeriodMinutes
        reporting_email_address1: reportingEmailAddress1
        reporting_email_address2: reportingEmailAddress2
        queue_statistics_yesterday: queueStatisticsYesterday
        queue_statistics_today: queueStatisticsToday
        agent_statistics: agentStatistics
    """

    _ELEMENTS = (
        E("number_of_calls_queued_now", "numberOfCallsQueuedNow", int, is_required=True),
        E("generate_daily_report", "generateDailyReport", bool, is_required=True),
        E("collection_period_minutes", "collectionPeriodMinutes", int, is_required=True),
        E("reporting_email_address1", "reportingEmailAddress1", str),
        E("reporting_email_address2", "reportingEmailAddress2", str),
        E(
            "queue_statistics_yesterday", "queueStatisticsYesterday",
            OCI.CallCenterQueueStatistics13mp8, is_complex=True, is_required=True,
        ),
        E(
            "queue_statistics_today", "queueStatisticsToday",
            OCI.CallCenterQueueStatistics13mp8, is_complex=True, is_required=True,
        ),
        E(
            "agent_statistics", "agentStatistics", OCI.CallCenterAgentStatistics13mp8,
            is_complex=True, is_array=True,
        ),
    )

    number_of_calls_queued_now: int = Field(type=int, required=True, mutable=False)
    generate_daily_report: bool = Field(type=bool, required=True, mutable=False)
    collection_period_minutes: int = Field(type=int, required=True, mutable=False)
    reporting_email_address1: str = Field(type=str, required=False, mutable=False)
    reporting_email_address2: str = Field(type=str, required=False, mutable=False)
    queue_statistics_yesterday: "OCI.CallCenterQueueStatistics13mp8" = Field(
        type=OCI.CallCenterQueueStatistics13mp8, required=True, mutable=False,
    )
    queue_statistics_today: "OCI.CallCenterQueueStatistics13mp8" = Field(
        type=OCI.CallCenterQueueStatistics13mp8, required=True, mutable=False,
    )
    agent_statistics: "List[OCI.CallCenterAgentStatistics13mp8]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupCallCenterGetInstanceStatisticsResponse14sp9(OCIResponse):
    """
    Contains Call Center statistics.


    Attributes:
        statistics_range: statisticsRange
        queue_statistics: queueStatistics
        agent_statistics: agentStatistics
    """

    _ELEMENTS = (
        E(
            "statistics_range", "statisticsRange", OCI.CallCenterStatisticsRange,
            is_complex=True, is_required=True,
        ),
        E(
            "queue_statistics", "queueStatistics", OCI.CallCenterQueueStatistics14sp9,
            is_complex=True, is_required=True,
        ),
        E(
            "agent_statistics", "agentStatistics", OCI.CallCenterAgentStatistics14sp9,
            is_complex=True, is_array=True,
        ),
    )

    statistics_range: "OCI.CallCenterStatisticsRange" = Field(
        type=OCI.CallCenterStatisticsRange, required=True, mutable=False,
    )
    queue_statistics: "OCI.CallCenterQueueStatistics14sp9" = Field(
        type=OCI.CallCenterQueueStatistics14sp9, required=True, mutable=False,
    )
    agent_statistics: "List[OCI.CallCenterAgentStatistics14sp9]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupCallCenterHolidayServiceGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterHolidayServiceGetRequest20()``.


    Attributes:
        action: action
        holiday_schedule: holidaySchedule
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupCallCenterNightServiceGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterNightServiceGetRequest20()``.


    Attributes:
        action: action
        business_hours: businessHours
        force_night_service: forceNightService
        allow_manual_override_via_fac: allowManualOverrideViaFAC
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        manual_announcement_mode: manualAnnouncementMode
        manual_audio_message_selection: manualAudioMessageSelection
        manual_audio_url_list: manualAudioUrlList
        manual_audio_file_list: manualAudioFileList
        manual_video_message_selection: manualVideoMessageSelection
        manual_video_url_list: manualVideoUrlList
        manual_video_file_list: manualVideoFileList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("force_night_service", "forceNightService", bool, is_required=True),
        E(
            "allow_manual_override_via_fac", "allowManualOverrideViaFAC", bool,
            is_required=True,
        ),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("manual_announcement_mode", "manualAnnouncementMode", str, is_required=True),
        E(
            "manual_audio_message_selection", "manualAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_audio_url_list", "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_audio_file_list", "manualAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "manual_video_message_selection", "manualVideoMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_video_url_list", "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_video_file_list", "manualVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    force_night_service: bool = Field(type=bool, required=True, mutable=False)
    allow_manual_override_via_fac: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    manual_announcement_mode: str = Field(type=str, required=True, mutable=False)
    manual_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    manual_video_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupCallCenterOverflowGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterOverflowGetRequest20()``.


    Attributes:
        action: action
        transfer_phone_number: transferPhoneNumber
        overflow_after_timeout: overflowAfterTimeout
        timeout_seconds: timeoutSeconds
        play_announcement_before_overflow_processing:
            playAnnouncementBeforeOverflowProcessing
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("overflow_after_timeout", "overflowAfterTimeout", bool, is_required=True),
        E("timeout_seconds", "timeoutSeconds", int, is_required=True),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing", bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    overflow_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    timeout_seconds: int = Field(type=int, required=True, mutable=False)
    play_announcement_before_overflow_processing: bool = Field(
        type=bool, required=True, mutable=False,
    )
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupCallCenterStrandedCallGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterStrandedCallGetRequest20()``.


    Attributes:
        action: action
        transfer_phone_number: transferPhoneNumber
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("audio_message_selection", "audioMessageSelection", str),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    audio_message_selection: str = Field(type=str, required=False, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupCallCenterStrandedCallUnavailableGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterStrandedCallUnavailableGetRequest20()``.


    Attributes:
        condition_policy_on_number_of_agents_with_specified_unavailable_code:
            conditionPolicyOnNumberOfAgentsWithSpecifiedUnavailableCode
        number_of_agents_with_specified_unavailable_code:
            numberOfAgentsWithSpecifiedUnavailableCode
        agents_unavailable_code: agentsUnavailableCode
        action: action
        transfer_phone_number: transferPhoneNumber
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
    """

    _ELEMENTS = (
        E(
            "condition_policy_on_number_of_agents_with_specified_unavailable_code",
            "conditionPolicyOnNumberOfAgentsWithSpecifiedUnavailableCode", bool,
            is_required=True,
        ),
        E(
            "number_of_agents_with_specified_unavailable_code",
            "numberOfAgentsWithSpecifiedUnavailableCode", int,
        ),
        E("agents_unavailable_code", "agentsUnavailableCode", str),
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("audio_message_selection", "audioMessageSelection", str),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
    )

    condition_policy_on_number_of_agents_with_specified_unavailable_code: bool = Field(
        type=bool, required=True, mutable=False,
    )
    number_of_agents_with_specified_unavailable_code: int = Field(
        type=int, required=False, mutable=False,
    )
    agents_unavailable_code: str = Field(type=str, required=False, mutable=False)
    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    audio_message_selection: str = Field(type=str, required=False, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupCollaborateBridgeGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupCollaborateBridgeGetInstanceRequest()``.

    The system-level collaborate supportOutdial setting is returned in the response when
    the system-level collaborate supportOutdial setting is disabled.  Contains the service
    profile information and a table of assigned owners.  The table has column headings:
    "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana First Name",
    Phone Number", "Extension", "Department", "Email Address". Collaborate bridge maximum
    participant’s choices unlimited or a quantified number of participants.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        maximum_bridge_participants: maximumBridgeParticipants
        network_class_of_service: networkClassOfService
        is_default: isDefault
        max_collaborate_room_participants: maxCollaborateRoomParticipants
        support_outdial: supportOutdial
        collaborate_owner_user_table: collaborateOwnerUserTable
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E(
            "maximum_bridge_participants", "maximumBridgeParticipants",
            OCI.CollaborateBridgeMaximumParticipants, is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E("is_default", "isDefault", bool, is_required=True),
        E(
            "max_collaborate_room_participants", "maxCollaborateRoomParticipants", int,
            is_required=True,
        ),
        E("support_outdial", "supportOutdial", bool, is_required=True),
        E(
            "collaborate_owner_user_table", "collaborateOwnerUserTable", list,
            is_complex=True, is_table=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    maximum_bridge_participants: "OCI.CollaborateBridgeMaximumParticipants" = Field(
        type=OCI.CollaborateBridgeMaximumParticipants, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    is_default: bool = Field(type=bool, required=True, mutable=False)
    max_collaborate_room_participants: int = Field(type=int, required=True, mutable=False)
    support_outdial: bool = Field(type=bool, required=True, mutable=False)
    collaborate_owner_user_table: "list" = Field(type=list, required=False, mutable=False)


class GroupFindMeFollowMeGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupFindMeFollowMeGetInstanceRequest()``.

    Contains the service profile information.  Replaced by:
    ``GroupFindMeFollowMeGetInstanceResponse19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4, is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17sp4" = Field(
        type=OCI.ServiceInstanceReadProfile17sp4, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupFindMeFollowMeGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupFindMeFollowMeGetInstanceRequest19sp1()``.

    Contains the service profile information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupFlexibleSeatingHostGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupFlexibleSeatingHostGetInstanceRequest()``.

    Contains the service profile and access device information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        default_alias: defaultAlias
        access_device_endpoint: accessDeviceEndpoint
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("default_alias", "defaultAlias", str, is_required=True),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead20, is_complex=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    default_alias: str = Field(type=str, required=True, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceMultipleContactEndpointRead20" = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead20, required=False, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupGroupPagingGetInstanceResponse(OCIResponse):
    """
    Replaced By ``GroupGroupPagingGetInstanceResponse17sp3()`` Response to
    ``GroupGroupPagingGetInstanceRequest()``.

    Contains the service profile information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        confirmation_tone_timeout_seconds: confirmationToneTimeoutSeconds
        deliver_originator_clid_instead: deliverOriginatorCLIDInstead
        originator_clid_prefix: originatorCLIDPrefix
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E(
            "confirmation_tone_timeout_seconds", "confirmationToneTimeoutSeconds", int,
            is_required=True,
        ),
        E(
            "deliver_originator_clid_instead", "deliverOriginatorCLIDInstead", bool,
            is_required=True,
        ),
        E("originator_clid_prefix", "originatorCLIDPrefix", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    confirmation_tone_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    deliver_originator_clid_instead: bool = Field(type=bool, required=True, mutable=False)
    originator_clid_prefix: str = Field(type=str, required=False, mutable=False)


class GroupGroupPagingGetInstanceResponse17sp3(OCIResponse):
    """
    Response to ``GroupGroupPagingGetInstanceRequest17sp3()``.

    Contains the service profile information.  Replaced by:
    ``GroupGroupPagingGetInstanceResponse19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        confirmation_tone_timeout_seconds: confirmationToneTimeoutSeconds
        deliver_originator_clid_instead: deliverOriginatorCLIDInstead
        originator_clid_prefix: originatorCLIDPrefix
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E(
            "confirmation_tone_timeout_seconds", "confirmationToneTimeoutSeconds", int,
            is_required=True,
        ),
        E(
            "deliver_originator_clid_instead", "deliverOriginatorCLIDInstead", bool,
            is_required=True,
        ),
        E("originator_clid_prefix", "originatorCLIDPrefix", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    confirmation_tone_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    deliver_originator_clid_instead: bool = Field(type=bool, required=True, mutable=False)
    originator_clid_prefix: str = Field(type=str, required=False, mutable=False)


class GroupGroupPagingGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupGroupPagingGetInstanceRequest19sp1()``.

    Contains the service profile information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        confirmation_tone_timeout_seconds: confirmationToneTimeoutSeconds
        deliver_originator_clid_instead: deliverOriginatorCLIDInstead
        originator_clid_prefix: originatorCLIDPrefix
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E(
            "confirmation_tone_timeout_seconds", "confirmationToneTimeoutSeconds", int,
            is_required=True,
        ),
        E(
            "deliver_originator_clid_instead", "deliverOriginatorCLIDInstead", bool,
            is_required=True,
        ),
        E("originator_clid_prefix", "originatorCLIDPrefix", str),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    confirmation_tone_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    deliver_originator_clid_instead: bool = Field(type=bool, required=True, mutable=False)
    originator_clid_prefix: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupHuntGroupGetInstanceResponse14(OCIResponse):
    """
    Response to ``GroupHuntGroupGetInstanceRequest14()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight".

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)


class GroupHuntGroupGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupHuntGroupGetInstanceRequest17()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight".

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)


class GroupHuntGroupGetInstanceResponse17sp3(OCIResponse):
    """
    Response to ``GroupHuntGroupGetInstanceRequest17sp3()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight". The following elements are only used in AS data mode:
    useSystemHuntGroupCLIDSetting includeHuntGroupNameInCLID

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        use_system_hunt_group_clid_setting: useSystemHuntGroupCLIDSetting
        include_hunt_group_name_in_clid: includeHuntGroupNameInCLID
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E(
            "use_system_hunt_group_clid_setting", "useSystemHuntGroupCLIDSetting", bool,
            is_required=True,
        ),
        E(
            "include_hunt_group_name_in_clid", "includeHuntGroupNameInCLID", bool,
            is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    use_system_hunt_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    include_hunt_group_name_in_clid: bool = Field(type=bool, required=True, mutable=False)


class GroupHuntGroupGetInstanceResponse17sp4(OCIResponse):
    """
    Response to ``GroupHuntGroupGetInstanceRequest17sp4()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight", "Phone Number", "Extension", "Department", "Email Address". The
    following elements are only used in AS data mode: useSystemHuntGroupCLIDSetting
    includeHuntGroupNameInCLID

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        use_system_hunt_group_clid_setting: useSystemHuntGroupCLIDSetting
        include_hunt_group_name_in_clid: includeHuntGroupNameInCLID
        enable_not_reachable_forwarding: enableNotReachableForwarding
        not_reachable_forward_to_phone_number: notReachableForwardToPhoneNumber
        make_busy_when_not_reachable: makeBusyWhenNotReachable
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E(
            "use_system_hunt_group_clid_setting", "useSystemHuntGroupCLIDSetting", bool,
            is_required=True,
        ),
        E(
            "include_hunt_group_name_in_clid", "includeHuntGroupNameInCLID", bool,
            is_required=True,
        ),
        E(
            "enable_not_reachable_forwarding", "enableNotReachableForwarding", bool,
            is_required=True,
        ),
        E("not_reachable_forward_to_phone_number", "notReachableForwardToPhoneNumber", str),
        E("make_busy_when_not_reachable", "makeBusyWhenNotReachable", bool, is_required=True),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    use_system_hunt_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    include_hunt_group_name_in_clid: bool = Field(type=bool, required=True, mutable=False)
    enable_not_reachable_forwarding: bool = Field(type=bool, required=True, mutable=False)
    not_reachable_forward_to_phone_number: str = Field(
        type=str, required=False, mutable=False,
    )
    make_busy_when_not_reachable: bool = Field(type=bool, required=True, mutable=False)


class GroupHuntGroupGetInstanceResponse19(OCIResponse):
    """
    Response to ``GroupHuntGroupGetInstanceRequest19()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight", "Phone Number", "Extension", "Department", "Email Address". The
    following elements are only used in AS data mode: useSystemHuntGroupCLIDSetting
    includeHuntGroupNameInCLID The following elements are only used in HSS data mode:
    allowMembersToControlGroupBusy enableGroupBusy Replaced by:
    ``GroupHuntGroupGetInstanceResponse19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        use_system_hunt_group_clid_setting: useSystemHuntGroupCLIDSetting
        include_hunt_group_name_in_clid: includeHuntGroupNameInCLID
        enable_not_reachable_forwarding: enableNotReachableForwarding
        not_reachable_forward_to_phone_number: notReachableForwardToPhoneNumber
        make_busy_when_not_reachable: makeBusyWhenNotReachable
        allow_members_to_control_group_busy: allowMembersToControlGroupBusy
        enable_group_busy: enableGroupBusy
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E(
            "use_system_hunt_group_clid_setting", "useSystemHuntGroupCLIDSetting", bool,
            is_required=True,
        ),
        E(
            "include_hunt_group_name_in_clid", "includeHuntGroupNameInCLID", bool,
            is_required=True,
        ),
        E(
            "enable_not_reachable_forwarding", "enableNotReachableForwarding", bool,
            is_required=True,
        ),
        E("not_reachable_forward_to_phone_number", "notReachableForwardToPhoneNumber", str),
        E("make_busy_when_not_reachable", "makeBusyWhenNotReachable", bool, is_required=True),
        E(
            "allow_members_to_control_group_busy", "allowMembersToControlGroupBusy", bool,
            is_required=True,
        ),
        E("enable_group_busy", "enableGroupBusy", bool, is_required=True),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    use_system_hunt_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    include_hunt_group_name_in_clid: bool = Field(type=bool, required=True, mutable=False)
    enable_not_reachable_forwarding: bool = Field(type=bool, required=True, mutable=False)
    not_reachable_forward_to_phone_number: str = Field(
        type=str, required=False, mutable=False,
    )
    make_busy_when_not_reachable: bool = Field(type=bool, required=True, mutable=False)
    allow_members_to_control_group_busy: bool = Field(type=bool, required=True, mutable=False)
    enable_group_busy: bool = Field(type=bool, required=True, mutable=False)


class GroupHuntGroupGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupHuntGroupGetInstanceRequest19sp1()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight", "Phone Number", "Extension", "Department", "Email Address". The
    following elements are only used in AS data mode: useSystemHuntGroupCLIDSetting
    includeHuntGroupNameInCLID The following elements are only used in HSS data mode:
    allowMembersToControlGroupBusy enableGroupBusy Replaced by:
    ``GroupHuntGroupGetInstanceResponse20()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        use_system_hunt_group_clid_setting: useSystemHuntGroupCLIDSetting
        include_hunt_group_name_in_clid: includeHuntGroupNameInCLID
        enable_not_reachable_forwarding: enableNotReachableForwarding
        not_reachable_forward_to_phone_number: notReachableForwardToPhoneNumber
        make_busy_when_not_reachable: makeBusyWhenNotReachable
        allow_members_to_control_group_busy: allowMembersToControlGroupBusy
        enable_group_busy: enableGroupBusy
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E(
            "use_system_hunt_group_clid_setting", "useSystemHuntGroupCLIDSetting", bool,
            is_required=True,
        ),
        E(
            "include_hunt_group_name_in_clid", "includeHuntGroupNameInCLID", bool,
            is_required=True,
        ),
        E(
            "enable_not_reachable_forwarding", "enableNotReachableForwarding", bool,
            is_required=True,
        ),
        E("not_reachable_forward_to_phone_number", "notReachableForwardToPhoneNumber", str),
        E("make_busy_when_not_reachable", "makeBusyWhenNotReachable", bool, is_required=True),
        E(
            "allow_members_to_control_group_busy", "allowMembersToControlGroupBusy", bool,
            is_required=True,
        ),
        E("enable_group_busy", "enableGroupBusy", bool, is_required=True),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    use_system_hunt_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    include_hunt_group_name_in_clid: bool = Field(type=bool, required=True, mutable=False)
    enable_not_reachable_forwarding: bool = Field(type=bool, required=True, mutable=False)
    not_reachable_forward_to_phone_number: str = Field(
        type=str, required=False, mutable=False,
    )
    make_busy_when_not_reachable: bool = Field(type=bool, required=True, mutable=False)
    allow_members_to_control_group_busy: bool = Field(type=bool, required=True, mutable=False)
    enable_group_busy: bool = Field(type=bool, required=True, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupHuntGroupGetInstanceResponse20(OCIResponse):
    """
    Response to ``GroupHuntGroupGetInstanceRequest20()``.

    Contains the service profile information and a table of assigned users.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", "Weight", "Phone Number", "Extension", "Department", "Email Address". The
    following elements are only used in AS data mode: useSystemHuntGroupCLIDSetting
    includeHuntGroupNameInCLID

    Attributes:
        service_instance_profile: serviceInstanceProfile
        policy: policy
        hunt_after_no_answer: huntAfterNoAnswer
        no_answer_number_of_rings: noAnswerNumberOfRings
        forward_after_timeout: forwardAfterTimeout
        forward_timeout_seconds: forwardTimeoutSeconds
        forward_to_phone_number: forwardToPhoneNumber
        agent_user_table: agentUserTable
        allow_call_waiting_for_agents: allowCallWaitingForAgents
        use_system_hunt_group_clid_setting: useSystemHuntGroupCLIDSetting
        include_hunt_group_name_in_clid: includeHuntGroupNameInCLID
        enable_not_reachable_forwarding: enableNotReachableForwarding
        not_reachable_forward_to_phone_number: notReachableForwardToPhoneNumber
        make_busy_when_not_reachable: makeBusyWhenNotReachable
        allow_members_to_control_group_busy: allowMembersToControlGroupBusy
        enable_group_busy: enableGroupBusy
        apply_group_busy_when_terminating_to_agent: applyGroupBusyWhenTerminatingToAgent
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("policy", "policy", str, is_required=True),
        E("hunt_after_no_answer", "huntAfterNoAnswer", bool, is_required=True),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("forward_after_timeout", "forwardAfterTimeout", bool, is_required=True),
        E("forward_timeout_seconds", "forwardTimeoutSeconds", int, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "agent_user_table", "agentUserTable", list, is_complex=True, is_required=True,
            is_table=True,
        ),
        E(
            "allow_call_waiting_for_agents", "allowCallWaitingForAgents", bool,
            is_required=True,
        ),
        E(
            "use_system_hunt_group_clid_setting", "useSystemHuntGroupCLIDSetting", bool,
            is_required=True,
        ),
        E(
            "include_hunt_group_name_in_clid", "includeHuntGroupNameInCLID", bool,
            is_required=True,
        ),
        E(
            "enable_not_reachable_forwarding", "enableNotReachableForwarding", bool,
            is_required=True,
        ),
        E("not_reachable_forward_to_phone_number", "notReachableForwardToPhoneNumber", str),
        E("make_busy_when_not_reachable", "makeBusyWhenNotReachable", bool, is_required=True),
        E(
            "allow_members_to_control_group_busy", "allowMembersToControlGroupBusy", bool,
            is_required=True,
        ),
        E("enable_group_busy", "enableGroupBusy", bool, is_required=True),
        E(
            "apply_group_busy_when_terminating_to_agent",
            "applyGroupBusyWhenTerminatingToAgent", bool, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    policy: str = Field(type=str, required=True, mutable=False)
    hunt_after_no_answer: bool = Field(type=bool, required=True, mutable=False)
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    forward_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    forward_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    agent_user_table: "list" = Field(type=list, required=True, mutable=False)
    allow_call_waiting_for_agents: bool = Field(type=bool, required=True, mutable=False)
    use_system_hunt_group_clid_setting: bool = Field(type=bool, required=True, mutable=False)
    include_hunt_group_name_in_clid: bool = Field(type=bool, required=True, mutable=False)
    enable_not_reachable_forwarding: bool = Field(type=bool, required=True, mutable=False)
    not_reachable_forward_to_phone_number: str = Field(
        type=str, required=False, mutable=False,
    )
    make_busy_when_not_reachable: bool = Field(type=bool, required=True, mutable=False)
    allow_members_to_control_group_busy: bool = Field(type=bool, required=True, mutable=False)
    enable_group_busy: bool = Field(type=bool, required=True, mutable=False)
    apply_group_busy_when_terminating_to_agent: bool = Field(
        type=bool, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupIncomingCallingPlanGetListResponse(OCIResponse):
    """
    Response to ``GroupIncomingCallingPlanGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions", OCI.IncomingCallingPlanPermissions,
            is_complex=True, is_required=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.IncomingCallingPlanDepartmentPermissions, is_complex=True, is_array=True,
        ),
    )

    group_permissions: "OCI.IncomingCallingPlanPermissions" = Field(
        type=OCI.IncomingCallingPlanPermissions, required=True, mutable=False,
    )
    department_permissions: "List[OCI.IncomingCallingPlanDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupInstantGroupCallGetInstanceResponse14(OCIResponse):
    """
    Response to ``GroupInstantGroupCallGetInstanceRequest14()``.

    Contains the service profile information and a list of phone numbers.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        destination_phone_number: destinationPhoneNumber
        is_answer_timeout_enabled: isAnswerTimeoutEnabled
        answer_timeout_minutes: answerTimeoutMinutes
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("destination_phone_number", "destinationPhoneNumber", str, is_array=True),
        E("is_answer_timeout_enabled", "isAnswerTimeoutEnabled", bool, is_required=True),
        E("answer_timeout_minutes", "answerTimeoutMinutes", int),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    destination_phone_number: "List[str]" = Field(type=list, required=False, mutable=False)
    is_answer_timeout_enabled: bool = Field(type=bool, required=True, mutable=False)
    answer_timeout_minutes: int = Field(type=int, required=False, mutable=False)


class GroupInstantGroupCallGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupInstantGroupCallGetInstanceRequest17()``.

    Contains the service profile information and a list of phone numbers.  Replaced by:
    ``GroupInstantGroupCallGetInstanceResponse19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        destination_phone_number: destinationPhoneNumber
        is_answer_timeout_enabled: isAnswerTimeoutEnabled
        answer_timeout_minutes: answerTimeoutMinutes
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("destination_phone_number", "destinationPhoneNumber", str, is_array=True),
        E("is_answer_timeout_enabled", "isAnswerTimeoutEnabled", bool, is_required=True),
        E("answer_timeout_minutes", "answerTimeoutMinutes", int),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    destination_phone_number: "List[str]" = Field(type=list, required=False, mutable=False)
    is_answer_timeout_enabled: bool = Field(type=bool, required=True, mutable=False)
    answer_timeout_minutes: int = Field(type=int, required=False, mutable=False)


class GroupInstantGroupCallGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupInstantGroupCallGetInstanceRequest19sp1()``.

    Contains the service profile information and a list of phone numbers.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        destination_phone_number: destinationPhoneNumber
        is_answer_timeout_enabled: isAnswerTimeoutEnabled
        answer_timeout_minutes: answerTimeoutMinutes
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("destination_phone_number", "destinationPhoneNumber", str, is_array=True),
        E("is_answer_timeout_enabled", "isAnswerTimeoutEnabled", bool, is_required=True),
        E("answer_timeout_minutes", "answerTimeoutMinutes", int),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    destination_phone_number: "List[str]" = Field(type=list, required=False, mutable=False)
    is_answer_timeout_enabled: bool = Field(type=bool, required=True, mutable=False)
    answer_timeout_minutes: int = Field(type=int, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupMWIDeliveryToMobileEndpointCustomTemplateGetResponse(OCIResponse):
    """
    Response to the ``GroupMWIDeliveryToMobileEndpointCustomTemplateGetRequest()``.


    Attributes:
        is_enabled: isEnabled
        template_body: templateBody
    """

    _ELEMENTS = (
        E("is_enabled", "isEnabled", bool, is_required=True),
        E(
            "template_body", "templateBody", OCI.MWIDeliveryToMobileEndpointTemplateBody,
            is_complex=True, is_required=True,
        ),
    )

    is_enabled: bool = Field(type=bool, required=True, mutable=False)
    template_body: "OCI.MWIDeliveryToMobileEndpointTemplateBody" = Field(
        type=OCI.MWIDeliveryToMobileEndpointTemplateBody, required=True, mutable=False,
    )


class GroupMeetMeConferencingGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupMeetMeConferencingGetInstanceRequest()``.

    Contains the service profile information and a table of assigned hosts.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", and
    "Hiragana First Name".

    Attributes:
        service_instance_profile: serviceInstanceProfile
        allocated_ports: allocatedPorts
        network_class_of_service: networkClassOfService
        allow_individual_out_dial: allowIndividualOutDial
        operator_number: operatorNumber
        conference_host_user_table: conferenceHostUserTable
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E(
            "allocated_ports", "allocatedPorts", OCI.MeetMeConferencingConferencePorts,
            is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E("allow_individual_out_dial", "allowIndividualOutDial", bool, is_required=True),
        E("operator_number", "operatorNumber", str),
        E(
            "conference_host_user_table", "conferenceHostUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    allocated_ports: "OCI.MeetMeConferencingConferencePorts" = Field(
        type=OCI.MeetMeConferencingConferencePorts, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    allow_individual_out_dial: bool = Field(type=bool, required=True, mutable=False)
    operator_number: str = Field(type=str, required=False, mutable=False)
    conference_host_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupMeetMeConferencingGetInstanceResponse17sp3(OCIResponse):
    """
    Response to ``GroupMeetMeConferencingGetInstanceRequest17sp3()``.

    Contains the service profile information and a table of assigned hosts.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", and
    "Hiragana First Name".

    Attributes:
        service_instance_profile: serviceInstanceProfile
        allocated_ports: allocatedPorts
        network_class_of_service: networkClassOfService
        allow_individual_out_dial: allowIndividualOutDial
        operator_number: operatorNumber
        conference_host_user_table: conferenceHostUserTable
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E(
            "allocated_ports", "allocatedPorts", OCI.MeetMeConferencingConferencePorts,
            is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E("allow_individual_out_dial", "allowIndividualOutDial", bool, is_required=True),
        E("operator_number", "operatorNumber", str),
        E(
            "conference_host_user_table", "conferenceHostUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    allocated_ports: "OCI.MeetMeConferencingConferencePorts" = Field(
        type=OCI.MeetMeConferencingConferencePorts, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    allow_individual_out_dial: bool = Field(type=bool, required=True, mutable=False)
    operator_number: str = Field(type=str, required=False, mutable=False)
    conference_host_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupMeetMeConferencingGetInstanceResponse17sp4(OCIResponse):
    """
    Response to ``GroupMeetMeConferencingGetInstanceRequest17sp4()``.

    Contains the service profile information and a table of assigned hosts.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", and
    "Hiragana First Name".

    Attributes:
        service_instance_profile: serviceInstanceProfile
        allocated_ports: allocatedPorts
        network_class_of_service: networkClassOfService
        allow_individual_out_dial: allowIndividualOutDial
        operator_number: operatorNumber
        conference_host_user_table: conferenceHostUserTable
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4, is_complex=True, is_required=True,
        ),
        E(
            "allocated_ports", "allocatedPorts", OCI.MeetMeConferencingConferencePorts,
            is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E("allow_individual_out_dial", "allowIndividualOutDial", bool, is_required=True),
        E("operator_number", "operatorNumber", str),
        E(
            "conference_host_user_table", "conferenceHostUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17sp4" = Field(
        type=OCI.ServiceInstanceReadProfile17sp4, required=True, mutable=False,
    )
    allocated_ports: "OCI.MeetMeConferencingConferencePorts" = Field(
        type=OCI.MeetMeConferencingConferencePorts, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    allow_individual_out_dial: bool = Field(type=bool, required=True, mutable=False)
    operator_number: str = Field(type=str, required=False, mutable=False)
    conference_host_user_table: "list" = Field(type=list, required=True, mutable=False)


class GroupMeetMeConferencingGetInstanceResponse18(OCIResponse):
    """
    Response to ``GroupMeetMeConferencingGetInstanceRequest18()``.

    Contains the service profile information and a table of assigned hosts.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", Phone Number", "Extension", "Department", "Email Address".

    Attributes:
        service_instance_profile: serviceInstanceProfile
        allocated_ports: allocatedPorts
        network_class_of_service: networkClassOfService
        allow_individual_out_dial: allowIndividualOutDial
        operator_number: operatorNumber
        conference_host_user_table: conferenceHostUserTable
        play_warning_prompt: playWarningPrompt
        conference_end_warning_prompt_minutes: conferenceEndWarningPromptMinutes
        enable_max_conference_duration: enableMaxConferenceDuration
        max_conference_duration_minutes: maxConferenceDurationMinutes
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4, is_complex=True, is_required=True,
        ),
        E(
            "allocated_ports", "allocatedPorts", OCI.MeetMeConferencingConferencePorts,
            is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E("allow_individual_out_dial", "allowIndividualOutDial", bool, is_required=True),
        E("operator_number", "operatorNumber", str),
        E(
            "conference_host_user_table", "conferenceHostUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E("play_warning_prompt", "playWarningPrompt", bool, is_required=True),
        E(
            "conference_end_warning_prompt_minutes", "conferenceEndWarningPromptMinutes",
            int, is_required=True,
        ),
        E(
            "enable_max_conference_duration", "enableMaxConferenceDuration", bool,
            is_required=True,
        ),
        E(
            "max_conference_duration_minutes", "maxConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration, is_complex=True, is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17sp4" = Field(
        type=OCI.ServiceInstanceReadProfile17sp4, required=True, mutable=False,
    )
    allocated_ports: "OCI.MeetMeConferencingConferencePorts" = Field(
        type=OCI.MeetMeConferencingConferencePorts, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    allow_individual_out_dial: bool = Field(type=bool, required=True, mutable=False)
    operator_number: str = Field(type=str, required=False, mutable=False)
    conference_host_user_table: "list" = Field(type=list, required=True, mutable=False)
    play_warning_prompt: bool = Field(type=bool, required=True, mutable=False)
    conference_end_warning_prompt_minutes: int = Field(type=int, required=True, mutable=False)
    enable_max_conference_duration: bool = Field(type=bool, required=True, mutable=False)
    max_conference_duration_minutes: "OCI.MeetMeConferencingConferenceDuration" = Field(
        type=OCI.MeetMeConferencingConferenceDuration, required=True, mutable=False,
    )


class GroupMeetMeConferencingGetInstanceResponse19(OCIResponse):
    """
    Response to ``GroupMeetMeConferencingGetInstanceRequest19()``.

    Contains the service profile information and a table of assigned hosts.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", Phone Number", "Extension", "Department", "Email Address". Replaced by:
    ``GroupMeetMeConferencingGetInstanceResponse19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        allocated_ports: allocatedPorts
        network_class_of_service: networkClassOfService
        security_pin_length: securityPinLength
        allow_individual_out_dial: allowIndividualOutDial
        operator_number: operatorNumber
        conference_host_user_table: conferenceHostUserTable
        play_warning_prompt: playWarningPrompt
        conference_end_warning_prompt_minutes: conferenceEndWarningPromptMinutes
        enable_max_conference_duration: enableMaxConferenceDuration
        max_conference_duration_minutes: maxConferenceDurationMinutes
        max_scheduled_conference_duration_minutes: maxScheduledConferenceDurationMinutes
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4, is_complex=True, is_required=True,
        ),
        E(
            "allocated_ports", "allocatedPorts", OCI.MeetMeConferencingConferencePorts,
            is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E("security_pin_length", "securityPinLength", int, is_required=True),
        E("allow_individual_out_dial", "allowIndividualOutDial", bool, is_required=True),
        E("operator_number", "operatorNumber", str),
        E(
            "conference_host_user_table", "conferenceHostUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E("play_warning_prompt", "playWarningPrompt", bool, is_required=True),
        E(
            "conference_end_warning_prompt_minutes", "conferenceEndWarningPromptMinutes",
            int, is_required=True,
        ),
        E(
            "enable_max_conference_duration", "enableMaxConferenceDuration", bool,
            is_required=True,
        ),
        E(
            "max_conference_duration_minutes", "maxConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration, is_complex=True, is_required=True,
        ),
        E(
            "max_scheduled_conference_duration_minutes",
            "maxScheduledConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration, is_complex=True, is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17sp4" = Field(
        type=OCI.ServiceInstanceReadProfile17sp4, required=True, mutable=False,
    )
    allocated_ports: "OCI.MeetMeConferencingConferencePorts" = Field(
        type=OCI.MeetMeConferencingConferencePorts, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    security_pin_length: int = Field(type=int, required=True, mutable=False)
    allow_individual_out_dial: bool = Field(type=bool, required=True, mutable=False)
    operator_number: str = Field(type=str, required=False, mutable=False)
    conference_host_user_table: "list" = Field(type=list, required=True, mutable=False)
    play_warning_prompt: bool = Field(type=bool, required=True, mutable=False)
    conference_end_warning_prompt_minutes: int = Field(type=int, required=True, mutable=False)
    enable_max_conference_duration: bool = Field(type=bool, required=True, mutable=False)
    max_conference_duration_minutes: "OCI.MeetMeConferencingConferenceDuration" = Field(
        type=OCI.MeetMeConferencingConferenceDuration, required=True, mutable=False,
    )
    max_scheduled_conference_duration_minutes: "OCI.MeetMeConferencingConferenceDuration" = Field(
        type=OCI.MeetMeConferencingConferenceDuration, required=True, mutable=False,
    )


class GroupMeetMeConferencingGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupMeetMeConferencingGetInstanceRequest19sp1()``.

    Contains the service profile information and a table of assigned hosts.  The table has
    column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana
    First Name", Phone Number", "Extension", "Department", "Email Address".

    Attributes:
        service_instance_profile: serviceInstanceProfile
        allocated_ports: allocatedPorts
        network_class_of_service: networkClassOfService
        security_pin_length: securityPinLength
        allow_individual_out_dial: allowIndividualOutDial
        operator_number: operatorNumber
        conference_host_user_table: conferenceHostUserTable
        play_warning_prompt: playWarningPrompt
        conference_end_warning_prompt_minutes: conferenceEndWarningPromptMinutes
        enable_max_conference_duration: enableMaxConferenceDuration
        max_conference_duration_minutes: maxConferenceDurationMinutes
        max_scheduled_conference_duration_minutes: maxScheduledConferenceDurationMinutes
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E(
            "allocated_ports", "allocatedPorts", OCI.MeetMeConferencingConferencePorts,
            is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E("security_pin_length", "securityPinLength", int, is_required=True),
        E("allow_individual_out_dial", "allowIndividualOutDial", bool, is_required=True),
        E("operator_number", "operatorNumber", str),
        E(
            "conference_host_user_table", "conferenceHostUserTable", list,
            is_complex=True, is_required=True, is_table=True,
        ),
        E("play_warning_prompt", "playWarningPrompt", bool, is_required=True),
        E(
            "conference_end_warning_prompt_minutes", "conferenceEndWarningPromptMinutes",
            int, is_required=True,
        ),
        E(
            "enable_max_conference_duration", "enableMaxConferenceDuration", bool,
            is_required=True,
        ),
        E(
            "max_conference_duration_minutes", "maxConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration, is_complex=True, is_required=True,
        ),
        E(
            "max_scheduled_conference_duration_minutes",
            "maxScheduledConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration, is_complex=True, is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    allocated_ports: "OCI.MeetMeConferencingConferencePorts" = Field(
        type=OCI.MeetMeConferencingConferencePorts, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    security_pin_length: int = Field(type=int, required=True, mutable=False)
    allow_individual_out_dial: bool = Field(type=bool, required=True, mutable=False)
    operator_number: str = Field(type=str, required=False, mutable=False)
    conference_host_user_table: "list" = Field(type=list, required=True, mutable=False)
    play_warning_prompt: bool = Field(type=bool, required=True, mutable=False)
    conference_end_warning_prompt_minutes: int = Field(type=int, required=True, mutable=False)
    enable_max_conference_duration: bool = Field(type=bool, required=True, mutable=False)
    max_conference_duration_minutes: "OCI.MeetMeConferencingConferenceDuration" = Field(
        type=OCI.MeetMeConferencingConferenceDuration, required=True, mutable=False,
    )
    max_scheduled_conference_duration_minutes: "OCI.MeetMeConferencingConferenceDuration" = Field(
        type=OCI.MeetMeConferencingConferenceDuration, required=True, mutable=False,
    )


class GroupMusicOnHoldGetInstanceResponse14(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest14()``.


    Attributes:
        service_user_id: serviceUserId
        is_active_during_call_hold: isActiveDuringCallHold
        is_active_during_call_park: isActiveDuringCallPark
        message_selection: messageSelection
        access_device_endpoint: accessDeviceEndpoint
        enable_video: enableVideo
        audio_file_description: audioFileDescription
        video_file_description: videoFileDescription
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E("is_active_during_call_hold", "isActiveDuringCallHold", bool, is_required=True),
        E("is_active_during_call_park", "isActiveDuringCallPark", bool, is_required=True),
        E("message_selection", "messageSelection", str, is_required=True),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("video_file_description", "videoFileDescription", str),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    is_active_during_call_hold: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_call_park: bool = Field(type=bool, required=True, mutable=False)
    message_selection: str = Field(type=str, required=True, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)


class GroupMusicOnHoldGetInstanceResponse14sp4(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest14sp4()``.


    Attributes:
        service_user_id: serviceUserId
        is_active_during_call_hold: isActiveDuringCallHold
        is_active_during_call_park: isActiveDuringCallPark
        is_active_during_busy_camp_on: isActiveDuringBusyCampOn
        message_selection: messageSelection
        access_device_endpoint: accessDeviceEndpoint
        enable_video: enableVideo
        audio_file_description: audioFileDescription
        video_file_description: videoFileDescription
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E("is_active_during_call_hold", "isActiveDuringCallHold", bool, is_required=True),
        E("is_active_during_call_park", "isActiveDuringCallPark", bool, is_required=True),
        E(
            "is_active_during_busy_camp_on", "isActiveDuringBusyCampOn", bool,
            is_required=True,
        ),
        E("message_selection", "messageSelection", str, is_required=True),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("audio_file_description", "audioFileDescription", str),
        E("video_file_description", "videoFileDescription", str),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    is_active_during_call_hold: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_call_park: bool = Field(type=bool, required=True, mutable=False)
    is_active_during_busy_camp_on: bool = Field(type=bool, required=True, mutable=False)
    message_selection: str = Field(type=str, required=True, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    audio_file_description: str = Field(type=str, required=False, mutable=False)
    video_file_description: str = Field(type=str, required=False, mutable=False)


class GroupOutgoingCallingPlanAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanAuthorizationCodeGetListRequest()``.


    Attributes:
        group_code_list: groupCodeList
        department_code_list: departmentCodeList
    """

    _ELEMENTS = (
        E(
            "group_code_list", "groupCodeList",
            OCI.OutgoingCallingPlanGroupAuthorizationCodes, is_complex=True,
            is_required=True,
        ),
        E(
            "department_code_list", "departmentCodeList",
            OCI.OutgoingCallingPlanDepartmentAuthorizationCodes, is_complex=True,
            is_array=True,
        ),
    )

    group_code_list: "OCI.OutgoingCallingPlanGroupAuthorizationCodes" = Field(
        type=OCI.OutgoingCallingPlanGroupAuthorizationCodes, required=True, mutable=False,
    )
    department_code_list: "List[OCI.OutgoingCallingPlanDepartmentAuthorizationCodes]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanCallMeNowGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanCallMeNowGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingCallingPlanCallMeNowPermissions, is_complex=True, is_required=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingCallingPlanCallMeNowDepartmentPermissions, is_complex=True,
            is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingCallingPlanCallMeNowPermissions" = Field(
        type=OCI.OutgoingCallingPlanCallMeNowPermissions, required=True, mutable=False,
    )
    department_permissions: "List[OCI.OutgoingCallingPlanCallMeNowDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanOriginatingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanOriginatingGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingCallingPlanOriginatingPermissions, is_complex=True,
            is_required=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingCallingPlanOriginatingDepartmentPermissions, is_complex=True,
            is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingCallingPlanOriginatingPermissions" = Field(
        type=OCI.OutgoingCallingPlanOriginatingPermissions, required=True, mutable=False,
    )
    department_permissions: "List[OCI.OutgoingCallingPlanOriginatingDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanRedirectedGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanRedirectedGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingCallingPlanRedirectedPermissions, is_complex=True,
            is_required=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingCallingPlanRedirectedDepartmentPermissions, is_complex=True,
            is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingCallingPlanRedirectedPermissions" = Field(
        type=OCI.OutgoingCallingPlanRedirectedPermissions, required=True, mutable=False,
    )
    department_permissions: "List[OCI.OutgoingCallingPlanRedirectedDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanRedirectingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanRedirectingGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingCallingPlanRedirectingPermissions, is_complex=True,
            is_required=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingCallingPlanRedirectingDepartmentPermissions, is_complex=True,
            is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingCallingPlanRedirectingPermissions" = Field(
        type=OCI.OutgoingCallingPlanRedirectingPermissions, required=True, mutable=False,
    )
    department_permissions: "List[OCI.OutgoingCallingPlanRedirectingDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanTransferNumbersGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanTransferNumbersGetListRequest()``.


    Attributes:
        group_numbers: groupNumbers
        department_numbers: departmentNumbers
    """

    _ELEMENTS = (
        E(
            "group_numbers", "groupNumbers", OCI.OutgoingCallingPlanTransferNumbers,
            is_complex=True, is_required=True,
        ),
        E(
            "department_numbers", "departmentNumbers",
            OCI.OutgoingCallingPlanDepartmentTransferNumbers, is_complex=True,
            is_array=True,
        ),
    )

    group_numbers: "OCI.OutgoingCallingPlanTransferNumbers" = Field(
        type=OCI.OutgoingCallingPlanTransferNumbers, required=True, mutable=False,
    )
    department_numbers: "List[OCI.OutgoingCallingPlanDepartmentTransferNumbers]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupRoutePointForcedForwardingGetResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointForcedForwardingGetRequest20()``.


    Attributes:
        is_active: isActive
        forward_to_phone_number: forwardToPhoneNumber
        play_announcement_before_forwarding: playAnnouncementBeforeForwarding
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("forward_to_phone_number", "forwardToPhoneNumber", str),
        E(
            "play_announcement_before_forwarding", "playAnnouncementBeforeForwarding",
            bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    forward_to_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_forwarding: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupRoutePointGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupRoutePointGetInstanceRequest()``.

    Replaced by: ``GroupRoutePointGetInstanceResponse19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        network_class_of_service: networkClassOfService
        external_preferred_audio_codec: externalPreferredAudioCodec
        internal_preferred_audio_codec: internalPreferredAudioCodec
        queue_length: queueLength
        no_answer_timeout_rings: noAnswerTimeoutRings
        enable_video: enableVideo
        play_ringing_when_offering_call: playRingingWhenOfferingCall
        override_agent_wrap_up_time: overrideAgentWrapUpTime
        wrap_up_seconds: wrapUpSeconds
        enable_automatic_state_change_for_agents: enableAutomaticStateChangeForAgents
        agent_state_after_call: agentStateAfterCall
        agent_unavailable_code: agentUnavailableCode
        force_delivery_of_calls: forceDeliveryOfCalls
        force_delivery_wait_time_seconds: forceDeliveryWaitTimeSeconds
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E(
            "external_preferred_audio_codec", "externalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "internal_preferred_audio_codec", "internalPreferredAudioCodec", str,
            is_required=True,
        ),
        E("queue_length", "queueLength", int, is_required=True),
        E("no_answer_timeout_rings", "noAnswerTimeoutRings", int, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E(
            "play_ringing_when_offering_call", "playRingingWhenOfferingCall", bool,
            is_required=True,
        ),
        E("override_agent_wrap_up_time", "overrideAgentWrapUpTime", bool, is_required=True),
        E("wrap_up_seconds", "wrapUpSeconds", int),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents", bool, is_required=True,
        ),
        E("agent_state_after_call", "agentStateAfterCall", str, is_required=True),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E("force_delivery_of_calls", "forceDeliveryOfCalls", bool, is_required=True),
        E("force_delivery_wait_time_seconds", "forceDeliveryWaitTimeSeconds", int),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    external_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    internal_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    no_answer_timeout_rings: int = Field(type=int, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    play_ringing_when_offering_call: bool = Field(type=bool, required=True, mutable=False)
    override_agent_wrap_up_time: bool = Field(type=bool, required=True, mutable=False)
    wrap_up_seconds: int = Field(type=int, required=False, mutable=False)
    enable_automatic_state_change_for_agents: bool = Field(
        type=bool, required=True, mutable=False,
    )
    agent_state_after_call: str = Field(type=str, required=True, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    force_delivery_of_calls: bool = Field(type=bool, required=True, mutable=False)
    force_delivery_wait_time_seconds: int = Field(type=int, required=False, mutable=False)


class GroupRoutePointGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupRoutePointGetInstanceRequest19sp1()``.


    Attributes:
        service_instance_profile: serviceInstanceProfile
        network_class_of_service: networkClassOfService
        external_preferred_audio_codec: externalPreferredAudioCodec
        internal_preferred_audio_codec: internalPreferredAudioCodec
        queue_length: queueLength
        no_answer_timeout_rings: noAnswerTimeoutRings
        enable_video: enableVideo
        play_ringing_when_offering_call: playRingingWhenOfferingCall
        override_agent_wrap_up_time: overrideAgentWrapUpTime
        wrap_up_seconds: wrapUpSeconds
        enable_automatic_state_change_for_agents: enableAutomaticStateChangeForAgents
        agent_state_after_call: agentStateAfterCall
        agent_unavailable_code: agentUnavailableCode
        force_delivery_of_calls: forceDeliveryOfCalls
        force_delivery_wait_time_seconds: forceDeliveryWaitTimeSeconds
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E(
            "external_preferred_audio_codec", "externalPreferredAudioCodec", str,
            is_required=True,
        ),
        E(
            "internal_preferred_audio_codec", "internalPreferredAudioCodec", str,
            is_required=True,
        ),
        E("queue_length", "queueLength", int, is_required=True),
        E("no_answer_timeout_rings", "noAnswerTimeoutRings", int, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E(
            "play_ringing_when_offering_call", "playRingingWhenOfferingCall", bool,
            is_required=True,
        ),
        E("override_agent_wrap_up_time", "overrideAgentWrapUpTime", bool, is_required=True),
        E("wrap_up_seconds", "wrapUpSeconds", int),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents", bool, is_required=True,
        ),
        E("agent_state_after_call", "agentStateAfterCall", str, is_required=True),
        E("agent_unavailable_code", "agentUnavailableCode", str),
        E("force_delivery_of_calls", "forceDeliveryOfCalls", bool, is_required=True),
        E("force_delivery_wait_time_seconds", "forceDeliveryWaitTimeSeconds", int),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    external_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    internal_preferred_audio_codec: str = Field(type=str, required=True, mutable=False)
    queue_length: int = Field(type=int, required=True, mutable=False)
    no_answer_timeout_rings: int = Field(type=int, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    play_ringing_when_offering_call: bool = Field(type=bool, required=True, mutable=False)
    override_agent_wrap_up_time: bool = Field(type=bool, required=True, mutable=False)
    wrap_up_seconds: int = Field(type=int, required=False, mutable=False)
    enable_automatic_state_change_for_agents: bool = Field(
        type=bool, required=True, mutable=False,
    )
    agent_state_after_call: str = Field(type=str, required=True, mutable=False)
    agent_unavailable_code: str = Field(type=str, required=False, mutable=False)
    force_delivery_of_calls: bool = Field(type=bool, required=True, mutable=False)
    force_delivery_wait_time_seconds: int = Field(type=int, required=False, mutable=False)


class GroupRoutePointHolidayServiceGetResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointHolidayServiceGetRequest20()``.


    Attributes:
        action: action
        holiday_schedule: holidaySchedule
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupRoutePointNightServiceGetResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointNightServiceGetRequest20()``.


    Attributes:
        action: action
        business_hours: businessHours
        force_night_service: forceNightService
        transfer_phone_number: transferPhoneNumber
        play_announcement_before_action: playAnnouncementBeforeAction
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
        manual_announcement_mode: manualAnnouncementMode
        manual_audio_message_selection: manualAudioMessageSelection
        manual_audio_url_list: manualAudioUrlList
        manual_audio_file_list: manualAudioFileList
        manual_video_message_selection: manualVideoMessageSelection
        manual_video_url_list: manualVideoUrlList
        manual_video_file_list: manualVideoFileList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("force_night_service", "forceNightService", bool, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E(
            "play_announcement_before_action", "playAnnouncementBeforeAction", bool,
            is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str, is_required=True),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("manual_announcement_mode", "manualAnnouncementMode", str, is_required=True),
        E(
            "manual_audio_message_selection", "manualAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_audio_url_list", "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_audio_file_list", "manualAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "manual_video_message_selection", "manualVideoMessageSelection", str,
            is_required=True,
        ),
        E(
            "manual_video_url_list", "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "manual_video_file_list", "manualVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    force_night_service: bool = Field(type=bool, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    play_announcement_before_action: bool = Field(type=bool, required=True, mutable=False)
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=True, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    manual_announcement_mode: str = Field(type=str, required=True, mutable=False)
    manual_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    manual_video_message_selection: str = Field(type=str, required=True, mutable=False)
    manual_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    manual_video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupRoutePointOverflowGetResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointOverflowGetRequest20()``.


    Attributes:
        action: action
        transfer_phone_number: transferPhoneNumber
        overflow_after_timeout: overflowAfterTimeout
        timeout_seconds: timeoutSeconds
        play_announcement_before_overflow_processing:
            playAnnouncementBeforeOverflowProcessing
        audio_message_selection: audioMessageSelection
        audio_url_list: audioUrlList
        audio_file_list: audioFileList
        video_message_selection: videoMessageSelection
        video_url_list: videoUrlList
        video_file_list: videoFileList
    """

    _ELEMENTS = (
        E("action", "action", str, is_required=True),
        E("transfer_phone_number", "transferPhoneNumber", str),
        E("overflow_after_timeout", "overflowAfterTimeout", bool, is_required=True),
        E("timeout_seconds", "timeoutSeconds", int, is_required=True),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing", bool, is_required=True,
        ),
        E("audio_message_selection", "audioMessageSelection", str, is_required=True),
        E(
            "audio_url_list", "audioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "audio_file_list", "audioFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
        E("video_message_selection", "videoMessageSelection", str),
        E(
            "video_url_list", "videoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "video_file_list", "videoFileList", OCI.CallCenterAnnouncementFileListRead20,
            is_complex=True,
        ),
    )

    action: str = Field(type=str, required=True, mutable=False)
    transfer_phone_number: str = Field(type=str, required=False, mutable=False)
    overflow_after_timeout: bool = Field(type=bool, required=True, mutable=False)
    timeout_seconds: int = Field(type=int, required=True, mutable=False)
    play_announcement_before_overflow_processing: bool = Field(
        type=bool, required=True, mutable=False,
    )
    audio_message_selection: str = Field(type=str, required=True, mutable=False)
    audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    video_message_selection: str = Field(type=str, required=False, mutable=False)
    video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )


class GroupScheduleGetListResponse17sp1(OCIResponse):
    """
    Response to ``GroupScheduleGetListRequest17sp1()``.

    The response contains a list of group schedules.  If the group belongs to an
    enterprise, it also contains the schedules for the enterprise.

    Attributes:
        schedule_global_key: scheduleGlobalKey
    """

    _ELEMENTS = (
        E(
            "schedule_global_key", "scheduleGlobalKey", OCI.ScheduleGlobalKey,
            is_complex=True, is_array=True,
        ),
    )

    schedule_global_key: "List[OCI.ScheduleGlobalKey]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupShInterfaceGetUserListResponse(OCIResponse):
    """
    Response to the ``GroupShInterfaceGetUserListRequest()``.

    The response contains the Sh Non Transparent data and associated Public User Identity
    information for every Public User Identity in the group.

    Attributes:
        entry: entry
    """

    _ELEMENTS = (
        E("entry", "entry", OCI.ShInterfaceUserListEntry, is_complex=True, is_array=True),
    )

    entry: "List[OCI.ShInterfaceUserListEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupTrunkGroupGetInstanceResponse14(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest()``.

    The publicUserIdentity in the ServiceInstanceReadProfile is not used for trunk groups.
    Returns the profile information for the Trunk Group.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        access_device_endpoint: accessDeviceEndpoint
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)


class GroupTrunkGroupGetInstanceResponse14sp1(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest14sp1()``.

    The publicUserIdentity in the ServiceInstanceReadProfile is not used for trunk groups.
    Returns the profile information for the Trunk Group.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        access_device_endpoint: accessDeviceEndpoint
        max_active_calls: maxActiveCalls
        max_incoming_calls: maxIncomingCalls
        max_outgoing_calls: maxOutgoingCalls
        enable_bursting: enableBursting
        bursting_max_active_calls: burstingMaxActiveCalls
        bursting_max_incoming_calls: burstingMaxIncomingCalls
        bursting_max_outgoing_calls: burstingMaxOutgoingCalls
        capacity_exceeded_action: capacityExceededAction
        capacity_exceeded_forward_address: capacityExceededForwardAddress
        capacity_exceeded_reroute_trunk_group_id: capacityExceededRerouteTrunkGroupId
        capacity_exceeded_trap_initial_calls: capacityExceededTrapInitialCalls
        capacity_exceeded_trap_offset_calls: capacityExceededTrapOffsetCalls
        unreachable_destination_action: unreachableDestinationAction
        unreachable_destination_forward_address: unreachableDestinationForwardAddress
        unreachable_destination_reroute_trunk_group_id:
            unreachableDestinationRerouteTrunkGroupId
        unreachable_destination_trap_initial_calls: unreachableDestinationTrapInitialCalls
        unreachable_destination_trap_offset_calls: unreachableDestinationTrapOffsetCalls
        invitation_timeout: invitationTimeout
        require_authentication: requireAuthentication
        sip_authentication_user_name: sipAuthenticationUserName
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E("max_active_calls", "maxActiveCalls", int, is_required=True),
        E("max_incoming_calls", "maxIncomingCalls", int),
        E("max_outgoing_calls", "maxOutgoingCalls", int),
        E("enable_bursting", "enableBursting", bool, is_required=True),
        E("bursting_max_active_calls", "burstingMaxActiveCalls", int),
        E("bursting_max_incoming_calls", "burstingMaxIncomingCalls", int),
        E("bursting_max_outgoing_calls", "burstingMaxOutgoingCalls", int),
        E("capacity_exceeded_action", "capacityExceededAction", str),
        E("capacity_exceeded_forward_address", "capacityExceededForwardAddress", str),
        E(
            "capacity_exceeded_reroute_trunk_group_id",
            "capacityExceededRerouteTrunkGroupId", str,
        ),
        E(
            "capacity_exceeded_trap_initial_calls", "capacityExceededTrapInitialCalls",
            int, is_required=True,
        ),
        E(
            "capacity_exceeded_trap_offset_calls", "capacityExceededTrapOffsetCalls", int,
            is_required=True,
        ),
        E("unreachable_destination_action", "unreachableDestinationAction", str),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress", str,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_id",
            "unreachableDestinationRerouteTrunkGroupId", str,
        ),
        E(
            "unreachable_destination_trap_initial_calls",
            "unreachableDestinationTrapInitialCalls", int, is_required=True,
        ),
        E(
            "unreachable_destination_trap_offset_calls",
            "unreachableDestinationTrapOffsetCalls", int, is_required=True,
        ),
        E("invitation_timeout", "invitationTimeout", int, is_required=True),
        E("require_authentication", "requireAuthentication", bool, is_required=True),
        E("sip_authentication_user_name", "sipAuthenticationUserName", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    max_active_calls: int = Field(type=int, required=True, mutable=False)
    max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    enable_bursting: bool = Field(type=bool, required=True, mutable=False)
    bursting_max_active_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_incoming_calls: int = Field(type=int, required=False, mutable=False)
    bursting_max_outgoing_calls: int = Field(type=int, required=False, mutable=False)
    capacity_exceeded_action: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_forward_address: str = Field(type=str, required=False, mutable=False)
    capacity_exceeded_reroute_trunk_group_id: str = Field(
        type=str, required=False, mutable=False,
    )
    capacity_exceeded_trap_initial_calls: int = Field(type=int, required=True, mutable=False)
    capacity_exceeded_trap_offset_calls: int = Field(type=int, required=True, mutable=False)
    unreachable_destination_action: str = Field(type=str, required=False, mutable=False)
    unreachable_destination_forward_address: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_reroute_trunk_group_id: str = Field(
        type=str, required=False, mutable=False,
    )
    unreachable_destination_trap_initial_calls: int = Field(
        type=int, required=True, mutable=False,
    )
    unreachable_destination_trap_offset_calls: int = Field(
        type=int, required=True, mutable=False,
    )
    invitation_timeout: int = Field(type=int, required=True, mutable=False)
    require_authentication: bool = Field(type=bool, required=True, mutable=False)
    sip_authentication_user_name: str = Field(type=str, required=False, mutable=False)


class GroupVoiceMessagingGroupGetVoicePortalResponse14(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest14()``.

    Replaced by ``GroupVoiceMessagingGroupGetVoicePortalResponse15()``

    Attributes:
        service_user_id: serviceUserId
        service_instance_profile: serviceInstanceProfile
        is_active: isActive
        allow_identification_by_phone_number_or_voice_mail_aliases_on_login:
            allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
        use_voice_portal_wizard: useVoicePortalWizard
        voice_portal_external_routing_scope: voicePortalExternalRoutingScope
        use_external_routing: useExternalRouting
        external_routing_address: externalRoutingAddress
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("is_active", "isActive", bool, is_required=True),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin", bool,
            is_required=True,
        ),
        E("use_voice_portal_wizard", "useVoicePortalWizard", bool, is_required=True),
        E(
            "voice_portal_external_routing_scope", "voicePortalExternalRoutingScope", str,
            is_required=True,
        ),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("external_routing_address", "externalRoutingAddress", str),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    is_active: bool = Field(type=bool, required=True, mutable=False)
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_voice_portal_wizard: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_external_routing_scope: str = Field(type=str, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    external_routing_address: str = Field(type=str, required=False, mutable=False)


class GroupVoiceMessagingGroupGetVoicePortalResponse15(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest15()``.


    Attributes:
        service_user_id: serviceUserId
        service_instance_profile: serviceInstanceProfile
        is_active: isActive
        allow_identification_by_phone_number_or_voice_mail_aliases_on_login:
            allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
        use_voice_portal_wizard: useVoicePortalWizard
        voice_portal_external_routing_scope: voicePortalExternalRoutingScope
        use_external_routing: useExternalRouting
        external_routing_address: externalRoutingAddress
        home_zone_name: homeZoneName
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("is_active", "isActive", bool, is_required=True),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin", bool,
            is_required=True,
        ),
        E("use_voice_portal_wizard", "useVoicePortalWizard", bool, is_required=True),
        E(
            "voice_portal_external_routing_scope", "voicePortalExternalRoutingScope", str,
            is_required=True,
        ),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("external_routing_address", "externalRoutingAddress", str),
        E("home_zone_name", "homeZoneName", str),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    is_active: bool = Field(type=bool, required=True, mutable=False)
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_voice_portal_wizard: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_external_routing_scope: str = Field(type=str, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    external_routing_address: str = Field(type=str, required=False, mutable=False)
    home_zone_name: str = Field(type=str, required=False, mutable=False)


class GroupVoiceMessagingGroupGetVoicePortalResponse17(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest17()``.


    Attributes:
        service_user_id: serviceUserId
        service_instance_profile: serviceInstanceProfile
        is_active: isActive
        allow_identification_by_phone_number_or_voice_mail_aliases_on_login:
            allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
        use_voice_portal_wizard: useVoicePortalWizard
        voice_portal_external_routing_scope: voicePortalExternalRoutingScope
        use_external_routing: useExternalRouting
        external_routing_address: externalRoutingAddress
        home_zone_name: homeZoneName
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("is_active", "isActive", bool, is_required=True),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin", bool,
            is_required=True,
        ),
        E("use_voice_portal_wizard", "useVoicePortalWizard", bool, is_required=True),
        E(
            "voice_portal_external_routing_scope", "voicePortalExternalRoutingScope", str,
            is_required=True,
        ),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("external_routing_address", "externalRoutingAddress", str),
        E("home_zone_name", "homeZoneName", str),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    is_active: bool = Field(type=bool, required=True, mutable=False)
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_voice_portal_wizard: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_external_routing_scope: str = Field(type=str, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    external_routing_address: str = Field(type=str, required=False, mutable=False)
    home_zone_name: str = Field(type=str, required=False, mutable=False)


class GroupVoiceMessagingGroupGetVoicePortalResponse17sp4(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest17sp4()``.

    The following elements are only used in HSS data mode: enableExtendedScope Replaced
    by: ``GroupVoiceMessagingGroupGetVoicePortalResponse19sp1()``

    Attributes:
        service_user_id: serviceUserId
        service_instance_profile: serviceInstanceProfile
        is_active: isActive
        enable_extended_scope: enableExtendedScope
        allow_identification_by_phone_number_or_voice_mail_aliases_on_login:
            allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
        use_voice_portal_wizard: useVoicePortalWizard
        voice_portal_external_routing_scope: voicePortalExternalRoutingScope
        use_external_routing: useExternalRouting
        external_routing_address: externalRoutingAddress
        home_zone_name: homeZoneName
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("is_active", "isActive", bool, is_required=True),
        E("enable_extended_scope", "enableExtendedScope", bool, is_required=True),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin", bool,
            is_required=True,
        ),
        E("use_voice_portal_wizard", "useVoicePortalWizard", bool, is_required=True),
        E(
            "voice_portal_external_routing_scope", "voicePortalExternalRoutingScope", str,
            is_required=True,
        ),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("external_routing_address", "externalRoutingAddress", str),
        E("home_zone_name", "homeZoneName", str),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    is_active: bool = Field(type=bool, required=True, mutable=False)
    enable_extended_scope: bool = Field(type=bool, required=True, mutable=False)
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_voice_portal_wizard: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_external_routing_scope: str = Field(type=str, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    external_routing_address: str = Field(type=str, required=False, mutable=False)
    home_zone_name: str = Field(type=str, required=False, mutable=False)


class GroupVoiceMessagingGroupGetVoicePortalResponse19sp1(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest19sp1()``.

    The following elements are only used in HSS data mode: enableExtendedScope

    Attributes:
        service_user_id: serviceUserId
        service_instance_profile: serviceInstanceProfile
        is_active: isActive
        enable_extended_scope: enableExtendedScope
        allow_identification_by_phone_number_or_voice_mail_aliases_on_login:
            allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
        use_voice_portal_wizard: useVoicePortalWizard
        voice_portal_external_routing_scope: voicePortalExternalRoutingScope
        use_external_routing: useExternalRouting
        external_routing_address: externalRoutingAddress
        home_zone_name: homeZoneName
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E("service_user_id", "serviceUserId", str, is_required=True),
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("is_active", "isActive", bool, is_required=True),
        E("enable_extended_scope", "enableExtendedScope", bool, is_required=True),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin", bool,
            is_required=True,
        ),
        E("use_voice_portal_wizard", "useVoicePortalWizard", bool, is_required=True),
        E(
            "voice_portal_external_routing_scope", "voicePortalExternalRoutingScope", str,
            is_required=True,
        ),
        E("use_external_routing", "useExternalRouting", bool, is_required=True),
        E("external_routing_address", "externalRoutingAddress", str),
        E("home_zone_name", "homeZoneName", str),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_user_id: str = Field(type=str, required=True, mutable=False)
    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    is_active: bool = Field(type=bool, required=True, mutable=False)
    enable_extended_scope: bool = Field(type=bool, required=True, mutable=False)
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login: bool = Field(
        type=bool, required=True, mutable=False,
    )
    use_voice_portal_wizard: bool = Field(type=bool, required=True, mutable=False)
    voice_portal_external_routing_scope: str = Field(type=str, required=True, mutable=False)
    use_external_routing: bool = Field(type=bool, required=True, mutable=False)
    external_routing_address: str = Field(type=str, required=False, mutable=False)
    home_zone_name: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupVoiceXmlGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupVoiceXmlGetInstanceRequest()``.

    Contains the service profile information and possibly access device information.
    Replaced by: ``GroupVoiceXmlGetInstanceResponse19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        network_class_of_service: networkClassOfService
        access_device_endpoint: accessDeviceEndpoint
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4, is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointWithPortNumberRead, is_complex=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17sp4" = Field(
        type=OCI.ServiceInstanceReadProfile17sp4, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointWithPortNumberRead" = Field(
        type=OCI.AccessDeviceEndpointWithPortNumberRead, required=False, mutable=False,
    )


class GroupVoiceXmlGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupVoiceXmlGetInstanceRequest19sp1()``.

    Contains the service profile information and possibly access device information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        network_class_of_service: networkClassOfService
        access_device_endpoint: accessDeviceEndpoint
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("network_class_of_service", "networkClassOfService", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointWithPortNumberRead, is_complex=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointWithPortNumberRead" = Field(
        type=OCI.AccessDeviceEndpointWithPortNumberRead, required=False, mutable=False,
    )


class ServiceProviderMWIDeliveryToMobileEndpointCustomTemplateGetResponse(OCIResponse):
    """
    Response to the
    ``ServiceProviderMWIDeliveryToMobileEndpointCustomTemplateGetRequest()``.


    Attributes:
        is_enabled: isEnabled
        template_body: templateBody
    """

    _ELEMENTS = (
        E("is_enabled", "isEnabled", bool, is_required=True),
        E(
            "template_body", "templateBody", OCI.MWIDeliveryToMobileEndpointTemplateBody,
            is_complex=True, is_required=True,
        ),
    )

    is_enabled: bool = Field(type=bool, required=True, mutable=False)
    template_body: "OCI.MWIDeliveryToMobileEndpointTemplateBody" = Field(
        type=OCI.MWIDeliveryToMobileEndpointTemplateBody, required=True, mutable=False,
    )


class SystemDeviceTypeGetResponse14sp6(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest14sp6()``.

    Replaced by: ``SystemDeviceTypeGetResponse16()``

    Attributes:
        is_obsolete: isObsolete
        profile: profile
        web_based_config_url: webBasedConfigURL
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        is_ip_address_optional: isIpAddressOptional
        use_domain: useDomain
        is_mobility_manager_device: isMobilityManagerDevice
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E("profile", "profile", str, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("is_ip_address_optional", "isIpAddressOptional", bool, is_required=True),
        E("use_domain", "useDomain", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    profile: str = Field(type=str, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead" = Field(
        type=OCI.CPEDeviceOptionsRead, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    is_ip_address_optional: bool = Field(type=bool, required=True, mutable=False)
    use_domain: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)


class SystemDeviceTypeGetResponse16(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest16()``.

    Replaced by: ``SystemDeviceTypeGetResponse16sp1()``

    Attributes:
        is_obsolete: isObsolete
        profile: profile
        web_based_config_url: webBasedConfigURL
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        is_ip_address_optional: isIpAddressOptional
        use_domain: useDomain
        is_mobility_manager_device: isMobilityManagerDevice
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E("profile", "profile", str, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("is_ip_address_optional", "isIpAddressOptional", bool, is_required=True),
        E("use_domain", "useDomain", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    profile: str = Field(type=str, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16" = Field(
        type=OCI.CPEDeviceOptionsRead16, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    is_ip_address_optional: bool = Field(type=bool, required=True, mutable=False)
    use_domain: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)


class SystemDeviceTypeGetResponse16sp1(OCIResponse):
    """
    Replaced By SystemSIPDeviceTypeGetReponse18.

    Response to ``SystemDeviceTypeGetRequest16sp1()``.

    Attributes:
        is_obsolete: isObsolete
        profile: profile
        web_based_config_url: webBasedConfigURL
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        is_ip_address_optional: isIpAddressOptional
        use_domain: useDomain
        is_mobility_manager_device: isMobilityManagerDevice
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E("profile", "profile", str, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("is_ip_address_optional", "isIpAddressOptional", bool, is_required=True),
        E("use_domain", "useDomain", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    profile: str = Field(type=str, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    is_ip_address_optional: bool = Field(type=bool, required=True, mutable=False)
    use_domain: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)


class SystemDeviceTypeGetResponse18(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest18()``.


    Attributes:
        is_obsolete: isObsolete
        profile: profile
        web_based_config_url: webBasedConfigURL
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        is_ip_address_optional: isIpAddressOptional
        use_domain: useDomain
        is_mobility_manager_device: isMobilityManagerDevice
        device_type_configuration_option: deviceTypeConfigurationOption
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E("profile", "profile", str, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("is_ip_address_optional", "isIpAddressOptional", bool, is_required=True),
        E("use_domain", "useDomain", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("device_type_configuration_option", "deviceTypeConfigurationOption", str),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    profile: str = Field(type=str, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    is_ip_address_optional: bool = Field(type=bool, required=True, mutable=False)
    use_domain: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    device_type_configuration_option: str = Field(type=str, required=False, mutable=False)


class SystemDeviceTypeGetResponse19(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest19()``.


    Attributes:
        is_obsolete: isObsolete
        profile: profile
        web_based_config_url: webBasedConfigURL
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        is_ip_address_optional: isIpAddressOptional
        use_domain: useDomain
        is_mobility_manager_device: isMobilityManagerDevice
        device_type_configuration_option: deviceTypeConfigurationOption
        static_line_ordering: staticLineOrdering
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E("profile", "profile", str, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("is_ip_address_optional", "isIpAddressOptional", bool, is_required=True),
        E("use_domain", "useDomain", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("device_type_configuration_option", "deviceTypeConfigurationOption", str),
        E("static_line_ordering", "staticLineOrdering", bool),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    profile: str = Field(type=str, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    is_ip_address_optional: bool = Field(type=bool, required=True, mutable=False)
    use_domain: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    device_type_configuration_option: str = Field(type=str, required=False, mutable=False)
    static_line_ordering: bool = Field(type=bool, required=False, mutable=False)


class SystemSIPDeviceTypeGetResponse14sp6(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest14sp6()``.

    Replaced by: ``SystemSIPDeviceTypeGetResponse14sp6()``

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        use_business_trunking_contact: useBusinessTrunkingContact
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        tdm_overlay: tdmOverlay
        supports_broad_works_info_for_call_waiting: supportsBroadWorksINFOForCallWaiting
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E(
            "use_business_trunking_contact", "useBusinessTrunkingContact", bool,
            is_required=True,
        ),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E("tdm_overlay", "tdmOverlay", bool, is_required=True),
        E(
            "supports_broad_works_info_for_call_waiting",
            "supportsBroadWorksINFOForCallWaiting", bool, is_required=True,
        ),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    use_business_trunking_contact: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead" = Field(
        type=OCI.CPEDeviceOptionsRead, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    tdm_overlay: bool = Field(type=bool, required=True, mutable=False)
    supports_broad_works_info_for_call_waiting: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemSIPDeviceTypeGetResponse15(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest15()``.

    Replaced By : ``SystemSIPDeviceTypeAddResponse16()``

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        use_business_trunking_contact: useBusinessTrunkingContact
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        tdm_overlay: tdmOverlay
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E(
            "use_business_trunking_contact", "useBusinessTrunkingContact", bool,
            is_required=True,
        ),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E("tdm_overlay", "tdmOverlay", bool, is_required=True),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    use_business_trunking_contact: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead" = Field(
        type=OCI.CPEDeviceOptionsRead, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    tdm_overlay: bool = Field(type=bool, required=True, mutable=False)
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )


class SystemSIPDeviceTypeGetResponse16(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest16()``.

    Replaced by: ``SystemSIPDeviceTypeGetResponse16sp1()``

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        use_business_trunking_contact: useBusinessTrunkingContact
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E(
            "use_business_trunking_contact", "useBusinessTrunkingContact", bool,
            is_required=True,
        ),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    use_business_trunking_contact: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16" = Field(
        type=OCI.CPEDeviceOptionsRead16, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse16sp1(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest16sp1()``.


    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        use_business_trunking_contact: useBusinessTrunkingContact
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
        reset_event: resetEvent
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E(
            "use_business_trunking_contact", "useBusinessTrunkingContact", bool,
            is_required=True,
        ),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
        E("reset_event", "resetEvent", str),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    use_business_trunking_contact: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)
    reset_event: str = Field(type=str, required=False, mutable=False)


class SystemSIPDeviceTypeGetResponse17(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest17()``.


    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
        reset_event: resetEvent
        support_call_center_mime_type: supportCallCenterMIMEType
        trunk_mode: trunkMode
        add_p_called_party_id: addPCalledPartyId
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
        E("reset_event", "resetEvent", str),
        E(
            "support_call_center_mime_type", "supportCallCenterMIMEType", bool,
            is_required=True,
        ),
        E("trunk_mode", "trunkMode", str, is_required=True),
        E("add_p_called_party_id", "addPCalledPartyId", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)
    reset_event: str = Field(type=str, required=False, mutable=False)
    support_call_center_mime_type: bool = Field(type=bool, required=True, mutable=False)
    trunk_mode: str = Field(type=str, required=True, mutable=False)
    add_p_called_party_id: bool = Field(type=bool, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse17sp4(OCIResponse):
    """
    Replaced By ``SystemSIPDeviceTypeGetResponse18()``.

    Response to ``SystemSIPDeviceTypeGetRequest17sp4()``.

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
        reset_event: resetEvent
        support_call_center_mime_type: supportCallCenterMIMEType
        trunk_mode: trunkMode
        add_p_called_party_id: addPCalledPartyId
        support_identity_in_update_and_re_invite: supportIdentityInUpdateAndReInvite
        unscreened_presentation_identity_policy: unscreenedPresentationIdentityPolicy
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
        E("reset_event", "resetEvent", str),
        E(
            "support_call_center_mime_type", "supportCallCenterMIMEType", bool,
            is_required=True,
        ),
        E("trunk_mode", "trunkMode", str, is_required=True),
        E("add_p_called_party_id", "addPCalledPartyId", bool, is_required=True),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite", bool, is_required=True,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy", str, is_required=True,
        ),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)
    reset_event: str = Field(type=str, required=False, mutable=False)
    support_call_center_mime_type: bool = Field(type=bool, required=True, mutable=False)
    trunk_mode: str = Field(type=str, required=True, mutable=False)
    add_p_called_party_id: bool = Field(type=bool, required=True, mutable=False)
    support_identity_in_update_and_re_invite: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_presentation_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )


class SystemSIPDeviceTypeGetResponse18(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest18()``.

    The following elements are only used in HSS data mode: enable3G4GContinuity Replaced
    by: ``SystemSIPDeviceTypeGetResponse19()``

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        rfc3264_hold: RFC3264Hold
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
        reset_event: resetEvent
        support_call_center_mime_type: supportCallCenterMIMEType
        trunk_mode: trunkMode
        add_p_called_party_id: addPCalledPartyId
        support_identity_in_update_and_re_invite: supportIdentityInUpdateAndReInvite
        unscreened_presentation_identity_policy: unscreenedPresentationIdentityPolicy
        enable3_g4_g_continuity: enable3G4GContinuity
        support_emergency_disconnect_control: supportEmergencyDisconnectControl
        device_type_configuration_option: deviceTypeConfigurationOption
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("rfc3264_hold", "RFC3264Hold", bool, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
        E("reset_event", "resetEvent", str),
        E(
            "support_call_center_mime_type", "supportCallCenterMIMEType", bool,
            is_required=True,
        ),
        E("trunk_mode", "trunkMode", str, is_required=True),
        E("add_p_called_party_id", "addPCalledPartyId", bool, is_required=True),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite", bool, is_required=True,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy", str, is_required=True,
        ),
        E("enable3_g4_g_continuity", "enable3G4GContinuity", bool, is_required=True),
        E(
            "support_emergency_disconnect_control", "supportEmergencyDisconnectControl",
            bool, is_required=True,
        ),
        E(
            "device_type_configuration_option", "deviceTypeConfigurationOption", str,
            is_required=True,
        ),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    rfc3264_hold: bool = Field(type=bool, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)
    reset_event: str = Field(type=str, required=False, mutable=False)
    support_call_center_mime_type: bool = Field(type=bool, required=True, mutable=False)
    trunk_mode: str = Field(type=str, required=True, mutable=False)
    add_p_called_party_id: bool = Field(type=bool, required=True, mutable=False)
    support_identity_in_update_and_re_invite: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_presentation_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    enable3_g4_g_continuity: bool = Field(type=bool, required=True, mutable=False)
    support_emergency_disconnect_control: bool = Field(
        type=bool, required=True, mutable=False,
    )
    device_type_configuration_option: str = Field(type=str, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse18sp1(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest18sp1()``.

    The following elements are only used in AS data mode: holdAnnouncementMethod The
    following elements are only used in HSS data mode: enable3G4GContinuity The following
    element values are only applicable in AS data mode: holdNormalization=useRfc3264Hold

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        hold_normalization: holdNormalization
        hold_announcement_method: holdAnnouncementMethod
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
        reset_event: resetEvent
        support_call_center_mime_type: supportCallCenterMIMEType
        trunk_mode: trunkMode
        add_p_called_party_id: addPCalledPartyId
        support_identity_in_update_and_re_invite: supportIdentityInUpdateAndReInvite
        unscreened_presentation_identity_policy: unscreenedPresentationIdentityPolicy
        enable3_g4_g_continuity: enable3G4GContinuity
        support_emergency_disconnect_control: supportEmergencyDisconnectControl
        device_type_configuration_option: deviceTypeConfigurationOption
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("hold_normalization", "holdNormalization", str, is_required=True),
        E("hold_announcement_method", "holdAnnouncementMethod", str, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
        E("reset_event", "resetEvent", str),
        E(
            "support_call_center_mime_type", "supportCallCenterMIMEType", bool,
            is_required=True,
        ),
        E("trunk_mode", "trunkMode", str, is_required=True),
        E("add_p_called_party_id", "addPCalledPartyId", bool, is_required=True),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite", bool, is_required=True,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy", str, is_required=True,
        ),
        E("enable3_g4_g_continuity", "enable3G4GContinuity", bool, is_required=True),
        E(
            "support_emergency_disconnect_control", "supportEmergencyDisconnectControl",
            bool, is_required=True,
        ),
        E(
            "device_type_configuration_option", "deviceTypeConfigurationOption", str,
            is_required=True,
        ),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    hold_normalization: str = Field(type=str, required=True, mutable=False)
    hold_announcement_method: str = Field(type=str, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)
    reset_event: str = Field(type=str, required=False, mutable=False)
    support_call_center_mime_type: bool = Field(type=bool, required=True, mutable=False)
    trunk_mode: str = Field(type=str, required=True, mutable=False)
    add_p_called_party_id: bool = Field(type=bool, required=True, mutable=False)
    support_identity_in_update_and_re_invite: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_presentation_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    enable3_g4_g_continuity: bool = Field(type=bool, required=True, mutable=False)
    support_emergency_disconnect_control: bool = Field(
        type=bool, required=True, mutable=False,
    )
    device_type_configuration_option: str = Field(type=str, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse19(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest19()``.

    The following elements are only used in AS data mode: holdAnnouncementMethod
    supportRFC3398 The following elements are only used in HSS data mode:
    enable3G4GContinuity The following element values are only applicable in AS data mode:
    holdNormalization=useRfc3264Hold Replaced by: SystemSIPDeviceTypeGetResponse19sSp1

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        hold_normalization: holdNormalization
        hold_announcement_method: holdAnnouncementMethod
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
        reset_event: resetEvent
        support_call_center_mime_type: supportCallCenterMIMEType
        trunk_mode: trunkMode
        add_p_called_party_id: addPCalledPartyId
        support_identity_in_update_and_re_invite: supportIdentityInUpdateAndReInvite
        unscreened_presentation_identity_policy: unscreenedPresentationIdentityPolicy
        enable3_g4_g_continuity: enable3G4GContinuity
        support_emergency_disconnect_control: supportEmergencyDisconnectControl
        device_type_configuration_option: deviceTypeConfigurationOption
        support_rfc3398: supportRFC3398
        static_line_ordering: staticLineOrdering
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("hold_normalization", "holdNormalization", str, is_required=True),
        E("hold_announcement_method", "holdAnnouncementMethod", str, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
        E("reset_event", "resetEvent", str),
        E(
            "support_call_center_mime_type", "supportCallCenterMIMEType", bool,
            is_required=True,
        ),
        E("trunk_mode", "trunkMode", str, is_required=True),
        E("add_p_called_party_id", "addPCalledPartyId", bool, is_required=True),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite", bool, is_required=True,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy", str, is_required=True,
        ),
        E("enable3_g4_g_continuity", "enable3G4GContinuity", bool, is_required=True),
        E(
            "support_emergency_disconnect_control", "supportEmergencyDisconnectControl",
            bool, is_required=True,
        ),
        E(
            "device_type_configuration_option", "deviceTypeConfigurationOption", str,
            is_required=True,
        ),
        E("support_rfc3398", "supportRFC3398", bool, is_required=True),
        E("static_line_ordering", "staticLineOrdering", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    hold_normalization: str = Field(type=str, required=True, mutable=False)
    hold_announcement_method: str = Field(type=str, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)
    reset_event: str = Field(type=str, required=False, mutable=False)
    support_call_center_mime_type: bool = Field(type=bool, required=True, mutable=False)
    trunk_mode: str = Field(type=str, required=True, mutable=False)
    add_p_called_party_id: bool = Field(type=bool, required=True, mutable=False)
    support_identity_in_update_and_re_invite: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_presentation_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    enable3_g4_g_continuity: bool = Field(type=bool, required=True, mutable=False)
    support_emergency_disconnect_control: bool = Field(
        type=bool, required=True, mutable=False,
    )
    device_type_configuration_option: str = Field(type=str, required=True, mutable=False)
    support_rfc3398: bool = Field(type=bool, required=True, mutable=False)
    static_line_ordering: bool = Field(type=bool, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse19sp1(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest19sp1()``.

    The following elements are only used in AS data mode: holdAnnouncementMethod
    supportRFC3398 bypassMediaTreatment The following elements are only used in HSS data
    mode: enable3G4GContinuity The following element values are only applicable in AS data
    mode: holdNormalization=useRfc3264Hold Replaced by:
    ``SystemSIPDeviceTypeGetResponse20()``

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        hold_normalization: holdNormalization
        hold_announcement_method: holdAnnouncementMethod
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
        reset_event: resetEvent
        support_call_center_mime_type: supportCallCenterMIMEType
        trunk_mode: trunkMode
        add_p_called_party_id: addPCalledPartyId
        support_identity_in_update_and_re_invite: supportIdentityInUpdateAndReInvite
        unscreened_presentation_identity_policy: unscreenedPresentationIdentityPolicy
        enable3_g4_g_continuity: enable3G4GContinuity
        support_emergency_disconnect_control: supportEmergencyDisconnectControl
        device_type_configuration_option: deviceTypeConfigurationOption
        support_rfc3398: supportRFC3398
        static_line_ordering: staticLineOrdering
        bypass_media_treatment: bypassMediaTreatment
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("hold_normalization", "holdNormalization", str, is_required=True),
        E("hold_announcement_method", "holdAnnouncementMethod", str, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
        E("reset_event", "resetEvent", str),
        E(
            "support_call_center_mime_type", "supportCallCenterMIMEType", bool,
            is_required=True,
        ),
        E("trunk_mode", "trunkMode", str, is_required=True),
        E("add_p_called_party_id", "addPCalledPartyId", bool, is_required=True),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite", bool, is_required=True,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy", str, is_required=True,
        ),
        E("enable3_g4_g_continuity", "enable3G4GContinuity", bool, is_required=True),
        E(
            "support_emergency_disconnect_control", "supportEmergencyDisconnectControl",
            bool, is_required=True,
        ),
        E(
            "device_type_configuration_option", "deviceTypeConfigurationOption", str,
            is_required=True,
        ),
        E("support_rfc3398", "supportRFC3398", bool, is_required=True),
        E("static_line_ordering", "staticLineOrdering", bool, is_required=True),
        E("bypass_media_treatment", "bypassMediaTreatment", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    hold_normalization: str = Field(type=str, required=True, mutable=False)
    hold_announcement_method: str = Field(type=str, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)
    reset_event: str = Field(type=str, required=False, mutable=False)
    support_call_center_mime_type: bool = Field(type=bool, required=True, mutable=False)
    trunk_mode: str = Field(type=str, required=True, mutable=False)
    add_p_called_party_id: bool = Field(type=bool, required=True, mutable=False)
    support_identity_in_update_and_re_invite: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_presentation_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    enable3_g4_g_continuity: bool = Field(type=bool, required=True, mutable=False)
    support_emergency_disconnect_control: bool = Field(
        type=bool, required=True, mutable=False,
    )
    device_type_configuration_option: str = Field(type=str, required=True, mutable=False)
    support_rfc3398: bool = Field(type=bool, required=True, mutable=False)
    static_line_ordering: bool = Field(type=bool, required=True, mutable=False)
    bypass_media_treatment: bool = Field(type=bool, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse20(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest20()``.

    The following elements are only used in AS data mode: holdAnnouncementMethod
    supportRFC3398 supportClientSessionInfo supportCallInfoConferenceSubscriptionURI
    supportRemotePartyInfo The following elements are only used in HSS data mode:
    enable3G4GContinuity The following element values are only applicable in AS data mode:
    holdNormalization=useRfc3264Hold

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        hold_normalization: holdNormalization
        hold_announcement_method: holdAnnouncementMethod
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
        reset_event: resetEvent
        support_call_center_mime_type: supportCallCenterMIMEType
        trunk_mode: trunkMode
        add_p_called_party_id: addPCalledPartyId
        support_identity_in_update_and_re_invite: supportIdentityInUpdateAndReInvite
        unscreened_presentation_identity_policy: unscreenedPresentationIdentityPolicy
        enable3_g4_g_continuity: enable3G4GContinuity
        support_emergency_disconnect_control: supportEmergencyDisconnectControl
        device_type_configuration_option: deviceTypeConfigurationOption
        support_rfc3398: supportRFC3398
        static_line_ordering: staticLineOrdering
        support_client_session_info: supportClientSessionInfo
        support_call_info_conference_subscription_uri:
            supportCallInfoConferenceSubscriptionURI
        support_remote_party_info: supportRemotePartyInfo
        support_visual_device_management: supportVisualDeviceManagement
        bypass_media_treatment: bypassMediaTreatment
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("hold_normalization", "holdNormalization", str, is_required=True),
        E("hold_announcement_method", "holdAnnouncementMethod", str, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
        E("reset_event", "resetEvent", str),
        E(
            "support_call_center_mime_type", "supportCallCenterMIMEType", bool,
            is_required=True,
        ),
        E("trunk_mode", "trunkMode", str, is_required=True),
        E("add_p_called_party_id", "addPCalledPartyId", bool, is_required=True),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite", bool, is_required=True,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy", str, is_required=True,
        ),
        E("enable3_g4_g_continuity", "enable3G4GContinuity", bool, is_required=True),
        E(
            "support_emergency_disconnect_control", "supportEmergencyDisconnectControl",
            bool, is_required=True,
        ),
        E(
            "device_type_configuration_option", "deviceTypeConfigurationOption", str,
            is_required=True,
        ),
        E("support_rfc3398", "supportRFC3398", bool, is_required=True),
        E("static_line_ordering", "staticLineOrdering", bool, is_required=True),
        E("support_client_session_info", "supportClientSessionInfo", bool, is_required=True),
        E(
            "support_call_info_conference_subscription_uri",
            "supportCallInfoConferenceSubscriptionURI", bool, is_required=True,
        ),
        E("support_remote_party_info", "supportRemotePartyInfo", bool, is_required=True),
        E(
            "support_visual_device_management", "supportVisualDeviceManagement", bool,
            is_required=True,
        ),
        E("bypass_media_treatment", "bypassMediaTreatment", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    hold_normalization: str = Field(type=str, required=True, mutable=False)
    hold_announcement_method: str = Field(type=str, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)
    reset_event: str = Field(type=str, required=False, mutable=False)
    support_call_center_mime_type: bool = Field(type=bool, required=True, mutable=False)
    trunk_mode: str = Field(type=str, required=True, mutable=False)
    add_p_called_party_id: bool = Field(type=bool, required=True, mutable=False)
    support_identity_in_update_and_re_invite: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_presentation_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    enable3_g4_g_continuity: bool = Field(type=bool, required=True, mutable=False)
    support_emergency_disconnect_control: bool = Field(
        type=bool, required=True, mutable=False,
    )
    device_type_configuration_option: str = Field(type=str, required=True, mutable=False)
    support_rfc3398: bool = Field(type=bool, required=True, mutable=False)
    static_line_ordering: bool = Field(type=bool, required=True, mutable=False)
    support_client_session_info: bool = Field(type=bool, required=True, mutable=False)
    support_call_info_conference_subscription_uri: bool = Field(
        type=bool, required=True, mutable=False,
    )
    support_remote_party_info: bool = Field(type=bool, required=True, mutable=False)
    support_visual_device_management: bool = Field(type=bool, required=True, mutable=False)
    bypass_media_treatment: bool = Field(type=bool, required=True, mutable=False)


class SystemSIPDeviceTypeGetResponse21(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest21()``.

    The following elements are only used in AS data mode: holdAnnouncementMethod
    supportRFC3398 supportClientSessionInfo supportCallInfoConferenceSubscriptionURI
    supportRemotePartyInfo The following elements are only used in HSS data mode:
    enhancedForICS – value false is returned in AS data mode enable3G4GContinuity - value
    false is returned in AS data mode publishesOwnPresence - value false is returned in AS
    data mode The following element values are only applicable in AS data mode:
    holdNormalization=useRfc3264Hold The following elements are only used in AS data mode:
    supportCauseParameter – value false is returned in HSS data mode

    Attributes:
        is_obsolete: isObsolete
        number_of_ports: numberOfPorts
        profile: profile
        registration_capable: registrationCapable
        is_conference_device: isConferenceDevice
        is_mobility_manager_device: isMobilityManagerDevice
        is_music_on_hold_device: isMusicOnHoldDevice
        hold_normalization: holdNormalization
        hold_announcement_method: holdAnnouncementMethod
        is_trusted: isTrusted
        e164_capable: E164Capable
        route_advance: routeAdvance
        forwarding_override: forwardingOverride
        wireless_integration: wirelessIntegration
        web_based_config_url: webBasedConfigURL
        is_video_capable: isVideoCapable
        pbx_integration: PBXIntegration
        static_registration_capable: staticRegistrationCapable
        cpe_device_options: cpeDeviceOptions
        protocol_choice: protocolChoice
        early_media_support: earlyMediaSupport
        authenticate_refer: authenticateRefer
        auto_config_soft_client: autoConfigSoftClient
        authentication_mode: authenticationMode
        requires_broad_works_digit_collection: requiresBroadWorksDigitCollection
        requires_broad_works_call_waiting_tone: requiresBroadWorksCallWaitingTone
        requires_mwi_subscription: requiresMWISubscription
        use_history_info_header_on_access_side: useHistoryInfoHeaderOnAccessSide
        advice_of_charge_capable: adviceOfChargeCapable
        reset_event: resetEvent
        support_call_center_mime_type: supportCallCenterMIMEType
        trunk_mode: trunkMode
        add_p_called_party_id: addPCalledPartyId
        support_identity_in_update_and_re_invite: supportIdentityInUpdateAndReInvite
        unscreened_presentation_identity_policy: unscreenedPresentationIdentityPolicy
        enhanced_for_ics: enhancedForICS
        support_emergency_disconnect_control: supportEmergencyDisconnectControl
        device_type_configuration_option: deviceTypeConfigurationOption
        support_rfc3398: supportRFC3398
        static_line_ordering: staticLineOrdering
        support_client_session_info: supportClientSessionInfo
        support_call_info_conference_subscription_uri:
            supportCallInfoConferenceSubscriptionURI
        support_remote_party_info: supportRemotePartyInfo
        support_visual_device_management: supportVisualDeviceManagement
        bypass_media_treatment: bypassMediaTreatment
        supports3_g4_g_continuity: supports3G4GContinuity
        publishes_own_presence: publishesOwnPresence
        support_cause_parameter: supportCauseParameter
    """

    _ELEMENTS = (
        E("is_obsolete", "isObsolete", bool, is_required=True),
        E(
            "number_of_ports", "numberOfPorts", OCI.UnboundedPositiveInt, is_complex=True,
            is_required=True,
        ),
        E("profile", "profile", str, is_required=True),
        E("registration_capable", "registrationCapable", bool, is_required=True),
        E("is_conference_device", "isConferenceDevice", bool, is_required=True),
        E("is_mobility_manager_device", "isMobilityManagerDevice", bool, is_required=True),
        E("is_music_on_hold_device", "isMusicOnHoldDevice", bool, is_required=True),
        E("hold_normalization", "holdNormalization", str, is_required=True),
        E("hold_announcement_method", "holdAnnouncementMethod", str, is_required=True),
        E("is_trusted", "isTrusted", bool, is_required=True),
        E("e164_capable", "E164Capable", bool, is_required=True),
        E("route_advance", "routeAdvance", bool, is_required=True),
        E("forwarding_override", "forwardingOverride", bool, is_required=True),
        E("wireless_integration", "wirelessIntegration", bool, is_required=True),
        E("web_based_config_url", "webBasedConfigURL", str),
        E("is_video_capable", "isVideoCapable", bool, is_required=True),
        E("pbx_integration", "PBXIntegration", bool, is_required=True),
        E("static_registration_capable", "staticRegistrationCapable", bool, is_required=True),
        E(
            "cpe_device_options", "cpeDeviceOptions", OCI.CPEDeviceOptionsRead16sp1,
            is_complex=True,
        ),
        E("protocol_choice", "protocolChoice", str, is_required=True),
        E("early_media_support", "earlyMediaSupport", str, is_required=True),
        E("authenticate_refer", "authenticateRefer", bool, is_required=True),
        E("auto_config_soft_client", "autoConfigSoftClient", bool, is_required=True),
        E("authentication_mode", "authenticationMode", str, is_required=True),
        E(
            "requires_broad_works_digit_collection", "requiresBroadWorksDigitCollection",
            bool, is_required=True,
        ),
        E(
            "requires_broad_works_call_waiting_tone", "requiresBroadWorksCallWaitingTone",
            bool, is_required=True,
        ),
        E("requires_mwi_subscription", "requiresMWISubscription", bool, is_required=True),
        E(
            "use_history_info_header_on_access_side", "useHistoryInfoHeaderOnAccessSide",
            bool, is_required=True,
        ),
        E("advice_of_charge_capable", "adviceOfChargeCapable", bool, is_required=True),
        E("reset_event", "resetEvent", str),
        E(
            "support_call_center_mime_type", "supportCallCenterMIMEType", bool,
            is_required=True,
        ),
        E("trunk_mode", "trunkMode", str, is_required=True),
        E("add_p_called_party_id", "addPCalledPartyId", bool, is_required=True),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite", bool, is_required=True,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy", str, is_required=True,
        ),
        E("enhanced_for_ics", "enhancedForICS", bool, is_required=True),
        E(
            "support_emergency_disconnect_control", "supportEmergencyDisconnectControl",
            bool, is_required=True,
        ),
        E(
            "device_type_configuration_option", "deviceTypeConfigurationOption", str,
            is_required=True,
        ),
        E("support_rfc3398", "supportRFC3398", bool, is_required=True),
        E("static_line_ordering", "staticLineOrdering", bool, is_required=True),
        E("support_client_session_info", "supportClientSessionInfo", bool, is_required=True),
        E(
            "support_call_info_conference_subscription_uri",
            "supportCallInfoConferenceSubscriptionURI", bool, is_required=True,
        ),
        E("support_remote_party_info", "supportRemotePartyInfo", bool, is_required=True),
        E(
            "support_visual_device_management", "supportVisualDeviceManagement", bool,
            is_required=True,
        ),
        E("bypass_media_treatment", "bypassMediaTreatment", bool, is_required=True),
        E("supports3_g4_g_continuity", "supports3G4GContinuity", bool, is_required=True),
        E("publishes_own_presence", "publishesOwnPresence", bool, is_required=True),
        E("support_cause_parameter", "supportCauseParameter", bool, is_required=True),
    )

    is_obsolete: bool = Field(type=bool, required=True, mutable=False)
    number_of_ports: "OCI.UnboundedPositiveInt" = Field(
        type=OCI.UnboundedPositiveInt, required=True, mutable=False,
    )
    profile: str = Field(type=str, required=True, mutable=False)
    registration_capable: bool = Field(type=bool, required=True, mutable=False)
    is_conference_device: bool = Field(type=bool, required=True, mutable=False)
    is_mobility_manager_device: bool = Field(type=bool, required=True, mutable=False)
    is_music_on_hold_device: bool = Field(type=bool, required=True, mutable=False)
    hold_normalization: str = Field(type=str, required=True, mutable=False)
    hold_announcement_method: str = Field(type=str, required=True, mutable=False)
    is_trusted: bool = Field(type=bool, required=True, mutable=False)
    e164_capable: bool = Field(type=bool, required=True, mutable=False)
    route_advance: bool = Field(type=bool, required=True, mutable=False)
    forwarding_override: bool = Field(type=bool, required=True, mutable=False)
    wireless_integration: bool = Field(type=bool, required=True, mutable=False)
    web_based_config_url: str = Field(type=str, required=False, mutable=False)
    is_video_capable: bool = Field(type=bool, required=True, mutable=False)
    pbx_integration: bool = Field(type=bool, required=True, mutable=False)
    static_registration_capable: bool = Field(type=bool, required=True, mutable=False)
    cpe_device_options: "OCI.CPEDeviceOptionsRead16sp1" = Field(
        type=OCI.CPEDeviceOptionsRead16sp1, required=False, mutable=False,
    )
    protocol_choice: str = Field(type=str, required=True, mutable=False)
    early_media_support: str = Field(type=str, required=True, mutable=False)
    authenticate_refer: bool = Field(type=bool, required=True, mutable=False)
    auto_config_soft_client: bool = Field(type=bool, required=True, mutable=False)
    authentication_mode: str = Field(type=str, required=True, mutable=False)
    requires_broad_works_digit_collection: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_broad_works_call_waiting_tone: bool = Field(
        type=bool, required=True, mutable=False,
    )
    requires_mwi_subscription: bool = Field(type=bool, required=True, mutable=False)
    use_history_info_header_on_access_side: bool = Field(
        type=bool, required=True, mutable=False,
    )
    advice_of_charge_capable: bool = Field(type=bool, required=True, mutable=False)
    reset_event: str = Field(type=str, required=False, mutable=False)
    support_call_center_mime_type: bool = Field(type=bool, required=True, mutable=False)
    trunk_mode: str = Field(type=str, required=True, mutable=False)
    add_p_called_party_id: bool = Field(type=bool, required=True, mutable=False)
    support_identity_in_update_and_re_invite: bool = Field(
        type=bool, required=True, mutable=False,
    )
    unscreened_presentation_identity_policy: str = Field(
        type=str, required=True, mutable=False,
    )
    enhanced_for_ics: bool = Field(type=bool, required=True, mutable=False)
    support_emergency_disconnect_control: bool = Field(
        type=bool, required=True, mutable=False,
    )
    device_type_configuration_option: str = Field(type=str, required=True, mutable=False)
    support_rfc3398: bool = Field(type=bool, required=True, mutable=False)
    static_line_ordering: bool = Field(type=bool, required=True, mutable=False)
    support_client_session_info: bool = Field(type=bool, required=True, mutable=False)
    support_call_info_conference_subscription_uri: bool = Field(
        type=bool, required=True, mutable=False,
    )
    support_remote_party_info: bool = Field(type=bool, required=True, mutable=False)
    support_visual_device_management: bool = Field(type=bool, required=True, mutable=False)
    bypass_media_treatment: bool = Field(type=bool, required=True, mutable=False)
    supports3_g4_g_continuity: bool = Field(type=bool, required=True, mutable=False)
    publishes_own_presence: bool = Field(type=bool, required=True, mutable=False)
    support_cause_parameter: bool = Field(type=bool, required=True, mutable=False)


class UserBroadWorksMobilityMobileIdentityGetResponse(OCIResponse):
    """
    Response to a ``UserBroadWorksMobilityMobileIdentityGetRequest()``.


    Attributes:
        description: description
        is_primary: isPrimary
        enable_alerting: enableAlerting
        alert_agent_calls: alertAgentCalls
        alert_click_to_dial_calls: alertClickToDialCalls
        alert_group_paging_calls: alertGroupPagingCalls
        use_mobility_calling_line_id: useMobilityCallingLineID
        enable_diversion_inhibitor: enableDiversionInhibitor
        require_answer_confirmation: requireAnswerConfirmation
        broadworks_call_control: broadworksCallControl
        use_setting_level: useSettingLevel
        deny_call_originations: denyCallOriginations
        deny_call_terminations: denyCallTerminations
        devices_to_ring: devicesToRing
        include_shared_call_appearance: includeSharedCallAppearance
        include_broadworks_anywhere: includeBroadworksAnywhere
        include_executive_assistant: includeExecutiveAssistant
        mobile_number_alerted: mobileNumberAlerted
        enable_call_anchoring: enableCallAnchoring
        time_schedule: timeSchedule
        holiday_schedule: holidaySchedule
    """

    _ELEMENTS = (
        E("description", "description", str),
        E("is_primary", "isPrimary", bool, is_required=True),
        E("enable_alerting", "enableAlerting", bool, is_required=True),
        E("alert_agent_calls", "alertAgentCalls", bool, is_required=True),
        E("alert_click_to_dial_calls", "alertClickToDialCalls", bool, is_required=True),
        E("alert_group_paging_calls", "alertGroupPagingCalls", bool, is_required=True),
        E("use_mobility_calling_line_id", "useMobilityCallingLineID", bool, is_required=True),
        E("enable_diversion_inhibitor", "enableDiversionInhibitor", bool, is_required=True),
        E("require_answer_confirmation", "requireAnswerConfirmation", bool, is_required=True),
        E("broadworks_call_control", "broadworksCallControl", bool, is_required=True),
        E("use_setting_level", "useSettingLevel", str, is_required=True),
        E("deny_call_originations", "denyCallOriginations", bool, is_required=True),
        E("deny_call_terminations", "denyCallTerminations", bool, is_required=True),
        E("devices_to_ring", "devicesToRing", str, is_required=True),
        E(
            "include_shared_call_appearance", "includeSharedCallAppearance", bool,
            is_required=True,
        ),
        E("include_broadworks_anywhere", "includeBroadworksAnywhere", bool, is_required=True),
        E("include_executive_assistant", "includeExecutiveAssistant", bool, is_required=True),
        E("mobile_number_alerted", "mobileNumberAlerted", str, is_array=True),
        E("enable_call_anchoring", "enableCallAnchoring", bool, is_required=True),
        E("time_schedule", "timeSchedule", OCI.ScheduleGlobalKey, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.ScheduleGlobalKey, is_complex=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    is_primary: bool = Field(type=bool, required=True, mutable=False)
    enable_alerting: bool = Field(type=bool, required=True, mutable=False)
    alert_agent_calls: bool = Field(type=bool, required=True, mutable=False)
    alert_click_to_dial_calls: bool = Field(type=bool, required=True, mutable=False)
    alert_group_paging_calls: bool = Field(type=bool, required=True, mutable=False)
    use_mobility_calling_line_id: bool = Field(type=bool, required=True, mutable=False)
    enable_diversion_inhibitor: bool = Field(type=bool, required=True, mutable=False)
    require_answer_confirmation: bool = Field(type=bool, required=True, mutable=False)
    broadworks_call_control: bool = Field(type=bool, required=True, mutable=False)
    use_setting_level: str = Field(type=str, required=True, mutable=False)
    deny_call_originations: bool = Field(type=bool, required=True, mutable=False)
    deny_call_terminations: bool = Field(type=bool, required=True, mutable=False)
    devices_to_ring: str = Field(type=str, required=True, mutable=False)
    include_shared_call_appearance: bool = Field(type=bool, required=True, mutable=False)
    include_broadworks_anywhere: bool = Field(type=bool, required=True, mutable=False)
    include_executive_assistant: bool = Field(type=bool, required=True, mutable=False)
    mobile_number_alerted: "List[str]" = Field(type=list, required=False, mutable=False)
    enable_call_anchoring: bool = Field(type=bool, required=True, mutable=False)
    time_schedule: "OCI.ScheduleGlobalKey" = Field(
        type=OCI.ScheduleGlobalKey, required=False, mutable=False,
    )
    holiday_schedule: "OCI.ScheduleGlobalKey" = Field(
        type=OCI.ScheduleGlobalKey, required=False, mutable=False,
    )


class UserCommPilotExpressGetResponse(OCIResponse):
    """
    Response to the ``UserCommPilotExpressGetRequest()``.


    Attributes:
        profile: profile
        available_in_office: availableInOffice
        available_out_of_office: availableOutOfOffice
        busy: busy
        unavailable: unavailable
    """

    _ELEMENTS = (
        E("profile", "profile", str),
        E(
            "available_in_office", "availableInOffice",
            OCI.CommPilotExpressAvailableInOffice, is_complex=True, is_required=True,
        ),
        E(
            "available_out_of_office", "availableOutOfOffice",
            OCI.CommPilotExpressAvailableOutOfOffice, is_complex=True, is_required=True,
        ),
        E("busy", "busy", OCI.CommPilotExpressBusy, is_complex=True, is_required=True),
        E(
            "unavailable", "unavailable", OCI.CommPilotExpressUnavailable,
            is_complex=True, is_required=True,
        ),
    )

    profile: str = Field(type=str, required=False, mutable=False)
    available_in_office: "OCI.CommPilotExpressAvailableInOffice" = Field(
        type=OCI.CommPilotExpressAvailableInOffice, required=True, mutable=False,
    )
    available_out_of_office: "OCI.CommPilotExpressAvailableOutOfOffice" = Field(
        type=OCI.CommPilotExpressAvailableOutOfOffice, required=True, mutable=False,
    )
    busy: "OCI.CommPilotExpressBusy" = Field(
        type=OCI.CommPilotExpressBusy, required=True, mutable=False,
    )
    unavailable: "OCI.CommPilotExpressUnavailable" = Field(
        type=OCI.CommPilotExpressUnavailable, required=True, mutable=False,
    )


class UserFlexibleSeatingGuestGetResponse(OCIResponse):
    """
    Response to ``UserFlexibleSeatingGuestGetRequest()``.


    Attributes:
        is_active: isActive
        enable_association_limit: enableAssociationLimit
        association_limit_hours: associationLimitHours
        unlock_phone_pin_code: unlockPhonePINCode
        access_device_endpoint: accessDeviceEndpoint
        host_user_id: hostUserId
        host_last_name: hostLastName
        host_first_name: hostFirstName
        host_association_date_time: hostAssociationDateTime
        host_enforces_association_limit: hostEnforcesAssociationLimit
        host_association_limit_hours: hostAssociationLimitHours
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E("enable_association_limit", "enableAssociationLimit", bool, is_required=True),
        E("association_limit_hours", "associationLimitHours", int, is_required=True),
        E("unlock_phone_pin_code", "unlockPhonePINCode", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead20, is_complex=True,
        ),
        E("host_user_id", "hostUserId", str),
        E("host_last_name", "hostLastName", str),
        E("host_first_name", "hostFirstName", str),
        E("host_association_date_time", "hostAssociationDateTime", str),
        E("host_enforces_association_limit", "hostEnforcesAssociationLimit", bool),
        E("host_association_limit_hours", "hostAssociationLimitHours", int),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    enable_association_limit: bool = Field(type=bool, required=True, mutable=False)
    association_limit_hours: int = Field(type=int, required=True, mutable=False)
    unlock_phone_pin_code: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceMultipleContactEndpointRead20" = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead20, required=False, mutable=False,
    )
    host_user_id: str = Field(type=str, required=False, mutable=False)
    host_last_name: str = Field(type=str, required=False, mutable=False)
    host_first_name: str = Field(type=str, required=False, mutable=False)
    host_association_date_time: str = Field(type=str, required=False, mutable=False)
    host_enforces_association_limit: bool = Field(type=bool, required=False, mutable=False)
    host_association_limit_hours: int = Field(type=int, required=False, mutable=False)


class UserGetResponse14(OCIResponse):
    """
    Response to ``UserGetRequest14()``.

    The callingLineIdPhoneNumber is no longer being formatted for display purpose.  The
    value is returned exactly the same as being stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_group_device_endpoint: trunkGroupDeviceEndpoint
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E(
            "trunk_group_device_endpoint", "trunkGroupDeviceEndpoint",
            OCI.TrunkGroupDeviceEndpointRead, is_complex=True,
        ),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    trunk_group_device_endpoint: "OCI.TrunkGroupDeviceEndpointRead" = Field(
        type=OCI.TrunkGroupDeviceEndpointRead, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )


class UserGetResponse14sp4(OCIResponse):
    """
    Response to ``UserGetRequest14sp4()``.

    The callingLineIdPhoneNumber is no longer being formatted for display purpose.  The
    value is returned exactly the same as being stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_group_device_endpoint: trunkGroupDeviceEndpoint
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E(
            "trunk_group_device_endpoint", "trunkGroupDeviceEndpoint",
            OCI.TrunkGroupDeviceEndpointRead14sp4, is_complex=True,
        ),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str),
        E("national_prefix", "nationalPrefix", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    trunk_group_device_endpoint: "OCI.TrunkGroupDeviceEndpointRead14sp4" = Field(
        type=OCI.TrunkGroupDeviceEndpointRead14sp4, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=False, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)


class UserGetResponse14sp9(OCIResponse):
    """
    Response to ``UserGetRequest14sp9()``.

    The callingLineIdPhoneNumber is no longer being formatted for display purpose.  The
    value is returned exactly the same as being stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_addressing: trunkAddressing
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E("trunk_addressing", "trunkAddressing", OCI.TrunkAddressingRead, is_complex=True),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str),
        E("national_prefix", "nationalPrefix", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    trunk_addressing: "OCI.TrunkAddressingRead" = Field(
        type=OCI.TrunkAddressingRead, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=False, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)


class UserGetResponse15sp2(OCIResponse):
    """
    Response to ``UserGetRequest15sp2()``.

    It is possible that the TrunkAddressingRead element is present with nothing populated
    in it which means the user is a trunk user.  The callingLineIdPhoneNumber is no longer
    being formatted for display purpose.  The value is returned exactly the same as being
    stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_addressing: trunkAddressing
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E("trunk_addressing", "trunkAddressing", OCI.TrunkAddressingRead, is_complex=True),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str),
        E("national_prefix", "nationalPrefix", str),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    trunk_addressing: "OCI.TrunkAddressingRead" = Field(
        type=OCI.TrunkAddressingRead, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=False, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class UserGetResponse17(OCIResponse):
    """
    Replaced By ``UserGetResponse17sp4()`` Response to ``UserGetRequest17()``.

    It is possible that the TrunkAddressingRead element is present with nothing populated
    in it which means the user is a trunk user.  The callingLineIdPhoneNumber is no longer
    being formatted for display purpose.  The value is returned exactly the same as being
    stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_addressing: trunkAddressing
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
        network_class_of_service: networkClassOfService
        office_zone_name: officeZoneName
        primary_zone_name: primaryZoneName
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E("trunk_addressing", "trunkAddressing", OCI.TrunkAddressingRead, is_complex=True),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str),
        E("national_prefix", "nationalPrefix", str),
        E("network_class_of_service", "networkClassOfService", str),
        E("office_zone_name", "officeZoneName", str),
        E("primary_zone_name", "primaryZoneName", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    trunk_addressing: "OCI.TrunkAddressingRead" = Field(
        type=OCI.TrunkAddressingRead, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=False, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    office_zone_name: str = Field(type=str, required=False, mutable=False)
    primary_zone_name: str = Field(type=str, required=False, mutable=False)


class UserGetResponse17sp3(OCIResponse):
    """
    Replaced By ``UserGetRequest18()`` Response to ``UserGetRequest17sp3()``.

    It is possible that the TrunkAddressingRead element is present with nothing populated
    in it which means the user is a trunk user.  The callingLineIdPhoneNumber is no longer
    being formatted for display purpose.  The value is returned exactly the same as being
    stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_addressing: trunkAddressing
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
        network_class_of_service: networkClassOfService
        office_zone_name: officeZoneName
        primary_zone_name: primaryZoneName
        imp_id: impId
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
        E("trunk_addressing", "trunkAddressing", OCI.TrunkAddressingRead, is_complex=True),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str),
        E("national_prefix", "nationalPrefix", str),
        E("network_class_of_service", "networkClassOfService", str),
        E("office_zone_name", "officeZoneName", str),
        E("primary_zone_name", "primaryZoneName", str),
        E("imp_id", "impId", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )
    trunk_addressing: "OCI.TrunkAddressingRead" = Field(
        type=OCI.TrunkAddressingRead, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=False, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    office_zone_name: str = Field(type=str, required=False, mutable=False)
    primary_zone_name: str = Field(type=str, required=False, mutable=False)
    imp_id: str = Field(type=str, required=False, mutable=False)


class UserGetResponse17sp4(OCIResponse):
    """
    Replaced By ``UserGetResponse18()`` Response to ``UserGetRequest17sp4()``.

    It is possible that the TrunkAddressingRead element is present with nothing populated
    in it which means the user is a trunk user.  The following data elements are only used
    in AS data mode: contact[2]-contact[5] The country code (countryCode) included is the
    user's phone number country code when the user has a phone number assigned, or the
    user's Group associated country code when the user does not have a phone number
    assigned, or the system default country code when the user's Group does not have an
    associated country code.  The nationalPrefix in this response is the one associated to
    the included countryCode.  The callingLineIdPhoneNumber is no longer being formatted
    for display purpose.  The value is returned exactly the same as being stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_addressing: trunkAddressing
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
        network_class_of_service: networkClassOfService
        office_zone_name: officeZoneName
        primary_zone_name: primaryZoneName
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead, is_complex=True,
        ),
        E(
            "trunk_addressing", "trunkAddressing", OCI.TrunkAddressingMultipleContactRead,
            is_complex=True,
        ),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str, is_required=True),
        E("national_prefix", "nationalPrefix", str),
        E("network_class_of_service", "networkClassOfService", str),
        E("office_zone_name", "officeZoneName", str),
        E("primary_zone_name", "primaryZoneName", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceMultipleContactEndpointRead" = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead, required=False, mutable=False,
    )
    trunk_addressing: "OCI.TrunkAddressingMultipleContactRead" = Field(
        type=OCI.TrunkAddressingMultipleContactRead, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=True, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    office_zone_name: str = Field(type=str, required=False, mutable=False)
    primary_zone_name: str = Field(type=str, required=False, mutable=False)


class UserGetResponse18(OCIResponse):
    """
    Response to ``UserGetRequest18()``.

    It is possible that the TrunkAddressingRead element is present with nothing populated
    in it which means the user is a trunk user.  The following data elements are only used
    in AS data mode: contact[2]-contact[5] The country code (countryCode) included is the
    user's phone number country code when the user has a phone number assigned, or the
    user's Group associated country code when the user does not have a phone number
    assigned, or the system default country code when the user's Group does not have an
    associated country code.  The nationalPrefix in this response is the one associated to
    the included countryCode.  The callingLineIdPhoneNumber is no longer being formatted
    for display purpose.  The value is returned exactly the same as being stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_addressing: trunkAddressing
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
        network_class_of_service: networkClassOfService
        office_zone_name: officeZoneName
        primary_zone_name: primaryZoneName
        imp_id: impId
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead, is_complex=True,
        ),
        E(
            "trunk_addressing", "trunkAddressing", OCI.TrunkAddressingMultipleContactRead,
            is_complex=True,
        ),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str, is_required=True),
        E("national_prefix", "nationalPrefix", str),
        E("network_class_of_service", "networkClassOfService", str),
        E("office_zone_name", "officeZoneName", str),
        E("primary_zone_name", "primaryZoneName", str),
        E("imp_id", "impId", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceMultipleContactEndpointRead" = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead, required=False, mutable=False,
    )
    trunk_addressing: "OCI.TrunkAddressingMultipleContactRead" = Field(
        type=OCI.TrunkAddressingMultipleContactRead, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=True, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    office_zone_name: str = Field(type=str, required=False, mutable=False)
    primary_zone_name: str = Field(type=str, required=False, mutable=False)
    imp_id: str = Field(type=str, required=False, mutable=False)


class UserGetResponse19(OCIResponse):
    """
    Response to ``UserGetRequest19()``.

    It is possible that the TrunkAddressingRead element is present with nothing populated
    in it which means the user is a trunk user.  The following data elements are only used
    in AS data mode: contact[2]-contact[5] The country code (countryCode) included is the
    user's phone number country code when the user has a phone number assigned, or the
    user's Group associated country code when the user does not have a phone number
    assigned, or the system default country code when the user's Group does not have an
    associated country code.  The nationalPrefix in this response is the one associated to
    the included countryCode.  The callingLineIdPhoneNumber is no longer being formatted
    for display purpose.  The value is returned exactly the same as being stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_addressing: trunkAddressing
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
        network_class_of_service: networkClassOfService
        office_zone_name: officeZoneName
        primary_zone_name: primaryZoneName
        imp_id: impId
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead19, is_complex=True,
        ),
        E(
            "trunk_addressing", "trunkAddressing", OCI.TrunkAddressingMultipleContactRead,
            is_complex=True,
        ),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str, is_required=True),
        E("national_prefix", "nationalPrefix", str),
        E("network_class_of_service", "networkClassOfService", str),
        E("office_zone_name", "officeZoneName", str),
        E("primary_zone_name", "primaryZoneName", str),
        E("imp_id", "impId", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceMultipleContactEndpointRead19" = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead19, required=False, mutable=False,
    )
    trunk_addressing: "OCI.TrunkAddressingMultipleContactRead" = Field(
        type=OCI.TrunkAddressingMultipleContactRead, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=True, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    office_zone_name: str = Field(type=str, required=False, mutable=False)
    primary_zone_name: str = Field(type=str, required=False, mutable=False)
    imp_id: str = Field(type=str, required=False, mutable=False)


class UserGetResponse20(OCIResponse):
    """
    Response to ``UserGetRequest20()``.

    It is possible that the TrunkAddressingRead element is present with nothing populated
    in it which means the user is a trunk user.  The following data elements are only used
    in AS data mode: contact[2]-contact[5] The country code (countryCode) included is the
    user's phone number country code when the user has a phone number assigned, or the
    user's Group associated country code when the user does not have a phone number
    assigned, or the system default country code when the user's Group does not have an
    associated country code.  The nationalPrefix in this response is the one associated to
    the included countryCode.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        name_dialing_name: nameDialingName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_addressing: trunkAddressing
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
        network_class_of_service: networkClassOfService
        office_zone_name: officeZoneName
        primary_zone_name: primaryZoneName
        imp_id: impId
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("name_dialing_name", "nameDialingName", OCI.NameDialingName, is_complex=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead20, is_complex=True,
        ),
        E(
            "trunk_addressing", "trunkAddressing", OCI.TrunkAddressingMultipleContactRead,
            is_complex=True,
        ),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str, is_required=True),
        E("national_prefix", "nationalPrefix", str),
        E("network_class_of_service", "networkClassOfService", str),
        E("office_zone_name", "officeZoneName", str),
        E("primary_zone_name", "primaryZoneName", str),
        E("imp_id", "impId", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    name_dialing_name: "OCI.NameDialingName" = Field(
        type=OCI.NameDialingName, required=False, mutable=False,
    )
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceMultipleContactEndpointRead20" = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead20, required=False, mutable=False,
    )
    trunk_addressing: "OCI.TrunkAddressingMultipleContactRead" = Field(
        type=OCI.TrunkAddressingMultipleContactRead, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=True, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    office_zone_name: str = Field(type=str, required=False, mutable=False)
    primary_zone_name: str = Field(type=str, required=False, mutable=False)
    imp_id: str = Field(type=str, required=False, mutable=False)


class UserGetResponse21(OCIResponse):
    """
    Response to ``UserGetRequest21()``.

    It is possible that the TrunkAddressingRead element is present with nothing populated
    in it which means the user is a trunk user.  The following data elements are only used
    in AS data mode: contact[2]-contact[5] The following data elements are only used in
    IMS data mode: alternateTrunkIdentityDomain The country code (countryCode) included is
    the user's phone number country code when the user has a phone number assigned, or the
    user's Group associated country code when the user does not have a phone number
    assigned, or the system default country code when the user's Group does not have an
    associated country code.  The nationalPrefix in this response is the one associated to
    the included countryCode.  The callingLineIdPhoneNumber is no longer being formatted
    for display purpose.  The value is returned exactly the same as being stored.

    Attributes:
        service_provider_id: serviceProviderId
        group_id: groupId
        last_name: lastName
        first_name: firstName
        calling_line_id_last_name: callingLineIdLastName
        calling_line_id_first_name: callingLineIdFirstName
        name_dialing_name: nameDialingName
        hiragana_last_name: hiraganaLastName
        hiragana_first_name: hiraganaFirstName
        phone_number: phoneNumber
        extension: extension
        calling_line_id_phone_number: callingLineIdPhoneNumber
        department: department
        department_full_path: departmentFullPath
        language: language
        time_zone: timeZone
        time_zone_display_name: timeZoneDisplayName
        default_alias: defaultAlias
        alias: alias
        access_device_endpoint: accessDeviceEndpoint
        trunk_addressing: trunkAddressing
        title: title
        pager_phone_number: pagerPhoneNumber
        mobile_phone_number: mobilePhoneNumber
        email_address: emailAddress
        yahoo_id: yahooId
        address_location: addressLocation
        address: address
        country_code: countryCode
        national_prefix: nationalPrefix
        network_class_of_service: networkClassOfService
        office_zone_name: officeZoneName
        primary_zone_name: primaryZoneName
        imp_id: impId
    """

    _ELEMENTS = (
        E("service_provider_id", "serviceProviderId", str, is_required=True),
        E("group_id", "groupId", str, is_required=True),
        E("last_name", "lastName", str, is_required=True),
        E("first_name", "firstName", str, is_required=True),
        E("calling_line_id_last_name", "callingLineIdLastName", str, is_required=True),
        E("calling_line_id_first_name", "callingLineIdFirstName", str, is_required=True),
        E("name_dialing_name", "nameDialingName", OCI.NameDialingName, is_complex=True),
        E("hiragana_last_name", "hiraganaLastName", str),
        E("hiragana_first_name", "hiraganaFirstName", str),
        E("phone_number", "phoneNumber", str),
        E("extension", "extension", str),
        E("calling_line_id_phone_number", "callingLineIdPhoneNumber", str),
        E("department", "department", OCI.DepartmentKey, is_complex=True),
        E("department_full_path", "departmentFullPath", str),
        E("language", "language", str, is_required=True),
        E("time_zone", "timeZone", str, is_required=True),
        E("time_zone_display_name", "timeZoneDisplayName", str, is_required=True),
        E("default_alias", "defaultAlias", str, is_required=True),
        E("alias", "alias", str),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleIdentityAndContactEndpointRead, is_complex=True,
        ),
        E(
            "trunk_addressing", "trunkAddressing",
            OCI.TrunkAddressingMultipleContactRead21, is_complex=True,
        ),
        E("title", "title", str),
        E("pager_phone_number", "pagerPhoneNumber", str),
        E("mobile_phone_number", "mobilePhoneNumber", str),
        E("email_address", "emailAddress", str),
        E("yahoo_id", "yahooId", str),
        E("address_location", "addressLocation", str),
        E("address", "address", OCI.StreetAddress, is_complex=True),
        E("country_code", "countryCode", str, is_required=True),
        E("national_prefix", "nationalPrefix", str),
        E("network_class_of_service", "networkClassOfService", str),
        E("office_zone_name", "officeZoneName", str),
        E("primary_zone_name", "primaryZoneName", str),
        E("imp_id", "impId", str),
    )

    service_provider_id: str = Field(type=str, required=True, mutable=False)
    group_id: str = Field(type=str, required=True, mutable=False)
    last_name: str = Field(type=str, required=True, mutable=False)
    first_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_last_name: str = Field(type=str, required=True, mutable=False)
    calling_line_id_first_name: str = Field(type=str, required=True, mutable=False)
    name_dialing_name: "OCI.NameDialingName" = Field(
        type=OCI.NameDialingName, required=False, mutable=False,
    )
    hiragana_last_name: str = Field(type=str, required=False, mutable=False)
    hiragana_first_name: str = Field(type=str, required=False, mutable=False)
    phone_number: str = Field(type=str, required=False, mutable=False)
    extension: str = Field(type=str, required=False, mutable=False)
    calling_line_id_phone_number: str = Field(type=str, required=False, mutable=False)
    department: "OCI.DepartmentKey" = Field(
        type=OCI.DepartmentKey, required=False, mutable=False,
    )
    department_full_path: str = Field(type=str, required=False, mutable=False)
    language: str = Field(type=str, required=True, mutable=False)
    time_zone: str = Field(type=str, required=True, mutable=False)
    time_zone_display_name: str = Field(type=str, required=True, mutable=False)
    default_alias: str = Field(type=str, required=True, mutable=False)
    alias: str = Field(type=str, required=False, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceMultipleIdentityAndContactEndpointRead" = Field(
        type=OCI.AccessDeviceMultipleIdentityAndContactEndpointRead, required=False,
        mutable=False,
    )
    trunk_addressing: "OCI.TrunkAddressingMultipleContactRead21" = Field(
        type=OCI.TrunkAddressingMultipleContactRead21, required=False, mutable=False,
    )
    title: str = Field(type=str, required=False, mutable=False)
    pager_phone_number: str = Field(type=str, required=False, mutable=False)
    mobile_phone_number: str = Field(type=str, required=False, mutable=False)
    email_address: str = Field(type=str, required=False, mutable=False)
    yahoo_id: str = Field(type=str, required=False, mutable=False)
    address_location: str = Field(type=str, required=False, mutable=False)
    address: "OCI.StreetAddress" = Field(
        type=OCI.StreetAddress, required=False, mutable=False,
    )
    country_code: str = Field(type=str, required=True, mutable=False)
    national_prefix: str = Field(type=str, required=False, mutable=False)
    network_class_of_service: str = Field(type=str, required=False, mutable=False)
    office_zone_name: str = Field(type=str, required=False, mutable=False)
    primary_zone_name: str = Field(type=str, required=False, mutable=False)
    imp_id: str = Field(type=str, required=False, mutable=False)


class UserIncomingCallingPlanGetResponse(OCIResponse):
    """
    Response to ``UserIncomingCallingPlanGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions", OCI.IncomingCallingPlanPermissions,
            is_complex=True, is_required=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.IncomingCallingPlanPermissions" = Field(
        type=OCI.IncomingCallingPlanPermissions, required=True, mutable=False,
    )


class UserOutgoingCallingPlanDigitPlanCallMeNowGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanDigitPlanCallMeNowGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions, is_complex=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions" = Field(
        type=OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions, required=False,
        mutable=False,
    )


class UserOutgoingCallingPlanDigitPlanOriginatingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanDigitPlanOriginatingGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions, is_complex=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions" = Field(
        type=OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions, required=False,
        mutable=False,
    )


class UserOutgoingCallingPlanDigitPlanRedirectingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanDigitPlanRedirectingGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions, is_complex=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions" = Field(
        type=OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions, required=False,
        mutable=False,
    )


class UserOutgoingCallingPlanPinholeDigitPlanCallMeNowGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanPinholeDigitPlanCallMeNowGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions, is_complex=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions" = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions, required=False,
        mutable=False,
    )


class UserOutgoingCallingPlanPinholeDigitPlanOriginatingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanPinholeDigitPlanOriginatingGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions,
            is_complex=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions" = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions,
        required=False, mutable=False,
    )


class UserOutgoingCallingPlanPinholeDigitPlanRedirectingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanPinholeDigitPlanRedirectingGetRequest()``.


    Attributes:
        use_custom_settings: useCustomSettings
        user_permissions: userPermissions
    """

    _ELEMENTS = (
        E("use_custom_settings", "useCustomSettings", bool, is_required=True),
        E(
            "user_permissions", "userPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions,
            is_complex=True,
        ),
    )

    use_custom_settings: bool = Field(type=bool, required=True, mutable=False)
    user_permissions: "OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions" = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions,
        required=False, mutable=False,
    )


class UserScheduleGetEventDetailListResponse(OCIResponse):
    """
    Response to ``UserScheduleGetEventRequest()``.

    The response contains collection of event details of a requested schedule.

    Attributes:
        schedule_events: scheduleEvents
    """

    _ELEMENTS = (
        E(
            "schedule_events", "scheduleEvents", OCI.ScheduleEvents, is_complex=True,
            is_array=True,
        ),
    )

    schedule_events: "List[OCI.ScheduleEvents]" = Field(
        type=list, required=False, mutable=False,
    )


class UserScheduleGetListResponse17sp1(OCIResponse):
    """
    Response to ``UserScheduleGetListRequest17sp1()``.

    The response contains a list of schedules viewable by the user.  It contains the
    schedules defined for the user and the group the user belongs to.  If the user belongs
    to an enterprise, the list also contains the schedules defined for the enterprise.

    Attributes:
        schedule_global_key: scheduleGlobalKey
    """

    _ELEMENTS = (
        E(
            "schedule_global_key", "scheduleGlobalKey", OCI.ScheduleGlobalKey,
            is_complex=True, is_array=True,
        ),
    )

    schedule_global_key: "List[OCI.ScheduleGlobalKey]" = Field(
        type=list, required=False, mutable=False,
    )


class UserShInterfaceGetUserIdDataResponse(OCIResponse):
    """
    Response to the ``UserShInterfaceGetUserIdDataRequest()``.

    The response contains the Sh non-transparent data for the specified userId.  The data
    also includes a userType, publicUserIdentity and endpointType.

    Attributes:
        entry: entry
    """

    _ELEMENTS = (
        E("entry", "entry", OCI.ShInterfaceUserIdDataEntry, is_complex=True, is_array=True),
    )

    entry: "List[OCI.ShInterfaceUserIdDataEntry]" = Field(
        type=list, required=False, mutable=False,
    )


class UserVideoAddOnGetResponse14(OCIResponse):
    """
    Response to the ``UserVideoAddOnGetRequest14()``.


    Attributes:
        is_active: isActive
        max_originating_call_delay_seconds: maxOriginatingCallDelaySeconds
        access_device_endpoint: accessDeviceEndpoint
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "max_originating_call_delay_seconds", "maxOriginatingCallDelaySeconds", int,
            is_required=True,
        ),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14, is_complex=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    max_originating_call_delay_seconds: int = Field(type=int, required=True, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointRead14" = Field(
        type=OCI.AccessDeviceEndpointRead14, required=False, mutable=False,
    )


class UserVideoAddOnGetResponse19(OCIResponse):
    """
    Response to the ``UserVideoAddOnGetRequest19()``.


    Attributes:
        is_active: isActive
        max_originating_call_delay_seconds: maxOriginatingCallDelaySeconds
        access_device_endpoint: accessDeviceEndpoint
    """

    _ELEMENTS = (
        E("is_active", "isActive", bool, is_required=True),
        E(
            "max_originating_call_delay_seconds", "maxOriginatingCallDelaySeconds", int,
            is_required=True,
        ),
        E(
            "access_device_endpoint", "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointWithPortNumberRead, is_complex=True,
        ),
    )

    is_active: bool = Field(type=bool, required=True, mutable=False)
    max_originating_call_delay_seconds: int = Field(type=int, required=True, mutable=False)
    access_device_endpoint: "OCI.AccessDeviceEndpointWithPortNumberRead" = Field(
        type=OCI.AccessDeviceEndpointWithPortNumberRead, required=False, mutable=False,
    )


class UserVoiceMessagingUserGetGreetingResponse20(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetGreetingRequest18sp1()``.

    Contains the greeting configuration for a user's voice messaging.  The following
    elements are only used in AS data mode: disableMessageDeposit
    disableMessageDepositAction greetingOnlyForwardDestination extendedAwayEnabled
    extendedAwayDisableMessageDeposit extendedAwayAudioFile extendedAwayAudioMediaType
    extendedAwayVideoFile extendedAwayVideoMediaTyp

    Attributes:
        busy_announcement_selection: busyAnnouncementSelection
        busy_personal_audio_file: busyPersonalAudioFile
        busy_personal_video_file: busyPersonalVideoFile
        no_answer_announcement_selection: noAnswerAnnouncementSelection
        no_answer_personal_audio_file: noAnswerPersonalAudioFile
        no_answer_personal_video_file: noAnswerPersonalVideoFile
        no_answer_alternate_greeting01: noAnswerAlternateGreeting01
        no_answer_alternate_greeting02: noAnswerAlternateGreeting02
        no_answer_alternate_greeting03: noAnswerAlternateGreeting03
        extended_away_enabled: extendedAwayEnabled
        extended_away_disable_message_deposit: extendedAwayDisableMessageDeposit
        extended_away_audio_file: extendedAwayAudioFile
        extended_away_video_file: extendedAwayVideoFile
        no_answer_number_of_rings: noAnswerNumberOfRings
        disable_message_deposit: disableMessageDeposit
        disable_message_deposit_action: disableMessageDepositAction
        greeting_only_forward_destination: greetingOnlyForwardDestination
    """

    _ELEMENTS = (
        E("busy_announcement_selection", "busyAnnouncementSelection", str, is_required=True),
        E(
            "busy_personal_audio_file", "busyPersonalAudioFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E(
            "busy_personal_video_file", "busyPersonalVideoFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E(
            "no_answer_announcement_selection", "noAnswerAnnouncementSelection", str,
            is_required=True,
        ),
        E(
            "no_answer_personal_audio_file", "noAnswerPersonalAudioFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E(
            "no_answer_personal_video_file", "noAnswerPersonalVideoFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting01", "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead20, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting02", "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead20, is_complex=True,
        ),
        E(
            "no_answer_alternate_greeting03", "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead20, is_complex=True,
        ),
        E("extended_away_enabled", "extendedAwayEnabled", bool, is_required=True),
        E(
            "extended_away_disable_message_deposit", "extendedAwayDisableMessageDeposit",
            bool, is_required=True,
        ),
        E(
            "extended_away_audio_file", "extendedAwayAudioFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E(
            "extended_away_video_file", "extendedAwayVideoFile",
            OCI.AnnouncementFileLevelKey, is_complex=True,
        ),
        E("no_answer_number_of_rings", "noAnswerNumberOfRings", int, is_required=True),
        E("disable_message_deposit", "disableMessageDeposit", bool, is_required=True),
        E(
            "disable_message_deposit_action", "disableMessageDepositAction", str,
            is_required=True,
        ),
        E("greeting_only_forward_destination", "greetingOnlyForwardDestination", str),
    )

    busy_announcement_selection: str = Field(type=str, required=True, mutable=False)
    busy_personal_audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    busy_personal_video_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    no_answer_announcement_selection: str = Field(type=str, required=True, mutable=False)
    no_answer_personal_audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    no_answer_personal_video_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    no_answer_alternate_greeting01: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead20" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead20, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting02: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead20" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead20, required=False,
        mutable=False,
    )
    no_answer_alternate_greeting03: "OCI.VoiceMessagingAlternateNoAnswerGreetingRead20" = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead20, required=False,
        mutable=False,
    )
    extended_away_enabled: bool = Field(type=bool, required=True, mutable=False)
    extended_away_disable_message_deposit: bool = Field(
        type=bool, required=True, mutable=False,
    )
    extended_away_audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    extended_away_video_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    no_answer_number_of_rings: int = Field(type=int, required=True, mutable=False)
    disable_message_deposit: bool = Field(type=bool, required=True, mutable=False)
    disable_message_deposit_action: str = Field(type=str, required=True, mutable=False)
    greeting_only_forward_destination: str = Field(type=str, required=False, mutable=False)


class EnterpriseCallCenterEnhancedReportingScheduledReportGetResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterEnhancedReportingScheduledReportGetRequest()``.


    Attributes:
        description: description
        report_template: reportTemplate
        schedule: schedule
        sampling_period: samplingPeriod
        start_day_of_week: startDayOfWeek
        report_time_zone: reportTimeZone
        report_date_format: reportDateFormat
        report_time_format: reportTimeFormat
        report_interval: reportInterval
        report_format: reportFormat
        agent: agent
        call_center: callCenter
        dnis: dnis
        call_completion_threshold_seconds: callCompletionThresholdSeconds
        short_duration_threshold_seconds: shortDurationThresholdSeconds
        service_level_threshold_seconds: serviceLevelThresholdSeconds
        service_level_inclusions: serviceLevelInclusions
        service_level_objective_percentage: serviceLevelObjectivePercentage
        abandoned_call_threshold_seconds: abandonedCallThresholdSeconds
        email_address: emailAddress
    """

    _ELEMENTS = (
        E("description", "description", str),
        E(
            "report_template", "reportTemplate", OCI.CallCenterReportTemplateKey,
            is_complex=True, is_required=True,
        ),
        E(
            "schedule", "schedule", OCI.CallCenterReportSchedule, is_complex=True,
            is_required=True,
        ),
        E("sampling_period", "samplingPeriod", str),
        E("start_day_of_week", "startDayOfWeek", str),
        E("report_time_zone", "reportTimeZone", str, is_required=True),
        E("report_date_format", "reportDateFormat", str, is_required=True),
        E("report_time_format", "reportTimeFormat", str, is_required=True),
        E(
            "report_interval", "reportInterval", OCI.CallCenterReportInterval,
            is_complex=True, is_required=True,
        ),
        E("report_format", "reportFormat", str, is_required=True),
        E(
            "agent", "agent", OCI.CallCenterScheduledReportAgentSelectionAdminRead,
            is_complex=True,
        ),
        E(
            "call_center", "callCenter",
            OCI.CallCenterScheduledReportCallCenterSelectionRead, is_complex=True,
        ),
        E("dnis", "dnis", OCI.CallCenterScheduledReportDNISSelectionRead, is_complex=True),
        E("call_completion_threshold_seconds", "callCompletionThresholdSeconds", int),
        E("short_duration_threshold_seconds", "shortDurationThresholdSeconds", int),
        E("service_level_threshold_seconds", "serviceLevelThresholdSeconds", int),
        E(
            "service_level_inclusions", "serviceLevelInclusions",
            OCI.CallCenterScheduledReportServiceLevelInclusions, is_complex=True,
        ),
        E("service_level_objective_percentage", "serviceLevelObjectivePercentage", int),
        E("abandoned_call_threshold_seconds", "abandonedCallThresholdSeconds", int),
        E("email_address", "emailAddress", str, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    report_template: "OCI.CallCenterReportTemplateKey" = Field(
        type=OCI.CallCenterReportTemplateKey, required=True, mutable=False,
    )
    schedule: "OCI.CallCenterReportSchedule" = Field(
        type=OCI.CallCenterReportSchedule, required=True, mutable=False,
    )
    sampling_period: str = Field(type=str, required=False, mutable=False)
    start_day_of_week: str = Field(type=str, required=False, mutable=False)
    report_time_zone: str = Field(type=str, required=True, mutable=False)
    report_date_format: str = Field(type=str, required=True, mutable=False)
    report_time_format: str = Field(type=str, required=True, mutable=False)
    report_interval: "OCI.CallCenterReportInterval" = Field(
        type=OCI.CallCenterReportInterval, required=True, mutable=False,
    )
    report_format: str = Field(type=str, required=True, mutable=False)
    agent: "OCI.CallCenterScheduledReportAgentSelectionAdminRead" = Field(
        type=OCI.CallCenterScheduledReportAgentSelectionAdminRead, required=False,
        mutable=False,
    )
    call_center: "OCI.CallCenterScheduledReportCallCenterSelectionRead" = Field(
        type=OCI.CallCenterScheduledReportCallCenterSelectionRead, required=False,
        mutable=False,
    )
    dnis: "OCI.CallCenterScheduledReportDNISSelectionRead" = Field(
        type=OCI.CallCenterScheduledReportDNISSelectionRead, required=False, mutable=False,
    )
    call_completion_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    short_duration_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    service_level_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    service_level_inclusions: "OCI.CallCenterScheduledReportServiceLevelInclusions" = Field(
        type=OCI.CallCenterScheduledReportServiceLevelInclusions, required=False,
        mutable=False,
    )
    service_level_objective_percentage: int = Field(type=int, required=False, mutable=False)
    abandoned_call_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    email_address: str = Field(type=str, required=True, mutable=False)


class GroupAutoAttendantGetInstanceResponse19(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest19()``.

    Contains the service profile information.  The following elements are only used in AS
    data mode: type, use AutoAttendantType.BASIC in HSS mode.  holidayMenu.  The following
    elementsare only valid for Standard Auto Attendants: holidayMenu Replaced by:
    ``GroupAutoAttendantGetInstanceResponse19sp1()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        type: type
        enable_video: enableVideo
        business_hours: businessHours
        holiday_schedule: holidaySchedule
        extension_dialing_scope: extensionDialingScope
        name_dialing_scope: nameDialingScope
        name_dialing_entries: nameDialingEntries
        business_hours_menu: businessHoursMenu
        after_hours_menu: afterHoursMenu
        holiday_menu: holidayMenu
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("type", "type", str, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("extension_dialing_scope", "extensionDialingScope", str, is_required=True),
        E("name_dialing_scope", "nameDialingScope", str, is_required=True),
        E("name_dialing_entries", "nameDialingEntries", str, is_required=True),
        E(
            "business_hours_menu", "businessHoursMenu", OCI.AutoAttendantReadMenu19,
            is_complex=True, is_required=True,
        ),
        E(
            "after_hours_menu", "afterHoursMenu", OCI.AutoAttendantReadMenu19,
            is_complex=True, is_required=True,
        ),
        E("holiday_menu", "holidayMenu", OCI.AutoAttendantReadMenu19, is_complex=True),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    type: str = Field(type=str, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    extension_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_entries: str = Field(type=str, required=True, mutable=False)
    business_hours_menu: "OCI.AutoAttendantReadMenu19" = Field(
        type=OCI.AutoAttendantReadMenu19, required=True, mutable=False,
    )
    after_hours_menu: "OCI.AutoAttendantReadMenu19" = Field(
        type=OCI.AutoAttendantReadMenu19, required=True, mutable=False,
    )
    holiday_menu: "OCI.AutoAttendantReadMenu19" = Field(
        type=OCI.AutoAttendantReadMenu19, required=False, mutable=False,
    )


class GroupAutoAttendantGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest19sp1()``.

    Contains the service profile information.  The following elements are only used in AS
    data mode: type, use AutoAttendantType.BASIC in HSS mode.  holidayMenu.  The following
    elementsare only valid for Standard Auto Attendants: holidayMenu Replaced by:
    ``GroupAutoAttendantGetInstanceResponse20()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        type: type
        enable_video: enableVideo
        business_hours: businessHours
        holiday_schedule: holidaySchedule
        extension_dialing_scope: extensionDialingScope
        name_dialing_scope: nameDialingScope
        name_dialing_entries: nameDialingEntries
        business_hours_menu: businessHoursMenu
        after_hours_menu: afterHoursMenu
        holiday_menu: holidayMenu
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("type", "type", str, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("extension_dialing_scope", "extensionDialingScope", str, is_required=True),
        E("name_dialing_scope", "nameDialingScope", str, is_required=True),
        E("name_dialing_entries", "nameDialingEntries", str, is_required=True),
        E(
            "business_hours_menu", "businessHoursMenu", OCI.AutoAttendantReadMenu19,
            is_complex=True, is_required=True,
        ),
        E(
            "after_hours_menu", "afterHoursMenu", OCI.AutoAttendantReadMenu19,
            is_complex=True, is_required=True,
        ),
        E("holiday_menu", "holidayMenu", OCI.AutoAttendantReadMenu19, is_complex=True),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    type: str = Field(type=str, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    extension_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_entries: str = Field(type=str, required=True, mutable=False)
    business_hours_menu: "OCI.AutoAttendantReadMenu19" = Field(
        type=OCI.AutoAttendantReadMenu19, required=True, mutable=False,
    )
    after_hours_menu: "OCI.AutoAttendantReadMenu19" = Field(
        type=OCI.AutoAttendantReadMenu19, required=True, mutable=False,
    )
    holiday_menu: "OCI.AutoAttendantReadMenu19" = Field(
        type=OCI.AutoAttendantReadMenu19, required=False, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class GroupAutoAttendantSubmenuGetResponse20(OCIResponse):
    """
    Response to ``GroupAutoAttendantSubmenuGetRequest20()``.

    Contains AutoAttendant submenu information.

    Attributes:
        announcement_selection: announcementSelection
        audio_file: audioFile
        video_file: videoFile
        enable_level_extension_dialing: enableLevelExtensionDialing
        key_configuration: keyConfiguration
    """

    _ELEMENTS = (
        E("announcement_selection", "announcementSelection", str, is_required=True),
        E("audio_file", "audioFile", OCI.AnnouncementFileLevelKey, is_complex=True),
        E("video_file", "videoFile", OCI.AnnouncementFileLevelKey, is_complex=True),
        E(
            "enable_level_extension_dialing", "enableLevelExtensionDialing", bool,
            is_required=True,
        ),
        E(
            "key_configuration", "keyConfiguration",
            OCI.AutoAttendantKeyReadConfiguration20, is_complex=True,
        ),
    )

    announcement_selection: str = Field(type=str, required=True, mutable=False)
    audio_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    video_file: "OCI.AnnouncementFileLevelKey" = Field(
        type=OCI.AnnouncementFileLevelKey, required=False, mutable=False,
    )
    enable_level_extension_dialing: bool = Field(type=bool, required=True, mutable=False)
    key_configuration: "OCI.AutoAttendantKeyReadConfiguration20" = Field(
        type=OCI.AutoAttendantKeyReadConfiguration20, required=False, mutable=False,
    )


class GroupCallCenterEnhancedReportingScheduledReportGetResponse(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedReportingScheduledReportGetRequest()``.


    Attributes:
        description: description
        report_template: reportTemplate
        schedule: schedule
        sampling_period: samplingPeriod
        start_day_of_week: startDayOfWeek
        report_time_zone: reportTimeZone
        report_date_format: reportDateFormat
        report_time_format: reportTimeFormat
        report_interval: reportInterval
        report_format: reportFormat
        agent: agent
        call_center: callCenter
        dnis: dnis
        call_completion_threshold_seconds: callCompletionThresholdSeconds
        short_duration_threshold_seconds: shortDurationThresholdSeconds
        service_level_threshold_seconds: serviceLevelThresholdSeconds
        service_level_inclusions: serviceLevelInclusions
        service_level_objective_percentage: serviceLevelObjectivePercentage
        abandoned_call_threshold_seconds: abandonedCallThresholdSeconds
        email_address: emailAddress
    """

    _ELEMENTS = (
        E("description", "description", str),
        E(
            "report_template", "reportTemplate", OCI.CallCenterReportTemplateKey,
            is_complex=True, is_required=True,
        ),
        E(
            "schedule", "schedule", OCI.CallCenterReportSchedule, is_complex=True,
            is_required=True,
        ),
        E("sampling_period", "samplingPeriod", str),
        E("start_day_of_week", "startDayOfWeek", str),
        E("report_time_zone", "reportTimeZone", str, is_required=True),
        E("report_date_format", "reportDateFormat", str, is_required=True),
        E("report_time_format", "reportTimeFormat", str, is_required=True),
        E(
            "report_interval", "reportInterval", OCI.CallCenterReportInterval,
            is_complex=True, is_required=True,
        ),
        E("report_format", "reportFormat", str, is_required=True),
        E(
            "agent", "agent", OCI.CallCenterScheduledReportAgentSelectionAdminRead,
            is_complex=True,
        ),
        E(
            "call_center", "callCenter",
            OCI.CallCenterScheduledReportCallCenterSelectionRead, is_complex=True,
        ),
        E("dnis", "dnis", OCI.CallCenterScheduledReportDNISSelectionRead, is_complex=True),
        E("call_completion_threshold_seconds", "callCompletionThresholdSeconds", int),
        E("short_duration_threshold_seconds", "shortDurationThresholdSeconds", int),
        E("service_level_threshold_seconds", "serviceLevelThresholdSeconds", int),
        E(
            "service_level_inclusions", "serviceLevelInclusions",
            OCI.CallCenterScheduledReportServiceLevelInclusions, is_complex=True,
        ),
        E("service_level_objective_percentage", "serviceLevelObjectivePercentage", int),
        E("abandoned_call_threshold_seconds", "abandonedCallThresholdSeconds", int),
        E("email_address", "emailAddress", str, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    report_template: "OCI.CallCenterReportTemplateKey" = Field(
        type=OCI.CallCenterReportTemplateKey, required=True, mutable=False,
    )
    schedule: "OCI.CallCenterReportSchedule" = Field(
        type=OCI.CallCenterReportSchedule, required=True, mutable=False,
    )
    sampling_period: str = Field(type=str, required=False, mutable=False)
    start_day_of_week: str = Field(type=str, required=False, mutable=False)
    report_time_zone: str = Field(type=str, required=True, mutable=False)
    report_date_format: str = Field(type=str, required=True, mutable=False)
    report_time_format: str = Field(type=str, required=True, mutable=False)
    report_interval: "OCI.CallCenterReportInterval" = Field(
        type=OCI.CallCenterReportInterval, required=True, mutable=False,
    )
    report_format: str = Field(type=str, required=True, mutable=False)
    agent: "OCI.CallCenterScheduledReportAgentSelectionAdminRead" = Field(
        type=OCI.CallCenterScheduledReportAgentSelectionAdminRead, required=False,
        mutable=False,
    )
    call_center: "OCI.CallCenterScheduledReportCallCenterSelectionRead" = Field(
        type=OCI.CallCenterScheduledReportCallCenterSelectionRead, required=False,
        mutable=False,
    )
    dnis: "OCI.CallCenterScheduledReportDNISSelectionRead" = Field(
        type=OCI.CallCenterScheduledReportDNISSelectionRead, required=False, mutable=False,
    )
    call_completion_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    short_duration_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    service_level_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    service_level_inclusions: "OCI.CallCenterScheduledReportServiceLevelInclusions" = Field(
        type=OCI.CallCenterScheduledReportServiceLevelInclusions, required=False,
        mutable=False,
    )
    service_level_objective_percentage: int = Field(type=int, required=False, mutable=False)
    abandoned_call_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    email_address: str = Field(type=str, required=True, mutable=False)


class GroupCallCenterGetAnnouncementResponse16(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest16()``.


    Attributes:
        play_entrance_message: playEntranceMessage
        mandatory_entrance_message: mandatoryEntranceMessage
        entrance_audio_message_selection: entranceAudioMessageSelection
        entrance_audio_file_url: entranceAudioFileUrl
        entrance_message_audio_file_description: entranceMessageAudioFileDescription
        entrance_audio_file_media_type: entranceAudioFileMediaType
        entrance_video_message_selection: entranceVideoMessageSelection
        entrance_video_file_url: entranceVideoFileUrl
        entrance_message_video_file_description: entranceMessageVideoFileDescription
        entrance_video_file_media_type: entranceVideoFileMediaType
        play_periodic_comfort_message: playPeriodicComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        periodic_comfort_audio_message_selection: periodicComfortAudioMessageSelection
        periodic_comfort_audio_file_url: periodicComfortAudioFileUrl
        periodic_comfort_message_audio_file_description:
            periodicComfortMessageAudioFileDescription
        periodic_comfort_audio_file_media_type: periodicComfortAudioFileMediaType
        periodic_comfort_video_message_selection: periodicComfortVideoMessageSelection
        periodic_comfort_video_file_url: periodicComfortVideoFileUrl
        periodic_comfort_message_video_file_description:
            periodicComfortMessageVideoFileDescription
        periodic_comfort_video_file_media_type: periodicComfortVideoFileMediaType
        enable_media_on_hold_for_queued_calls: enableMediaOnHoldForQueuedCalls
        media_on_hold_source: mediaOnHoldSource
        media_on_hold_use_alternate_source_for_internal_calls:
            mediaOnHoldUseAlternateSourceForInternalCalls
        media_on_hold_internal_source: mediaOnHoldInternalSource
    """

    _ELEMENTS = (
        E("play_entrance_message", "playEntranceMessage", bool, is_required=True),
        E("mandatory_entrance_message", "mandatoryEntranceMessage", bool, is_required=True),
        E(
            "entrance_audio_message_selection", "entranceAudioMessageSelection", str,
            is_required=True,
        ),
        E("entrance_audio_file_url", "entranceAudioFileUrl", str),
        E(
            "entrance_message_audio_file_description",
            "entranceMessageAudioFileDescription", str,
        ),
        E("entrance_audio_file_media_type", "entranceAudioFileMediaType", str),
        E("entrance_video_message_selection", "entranceVideoMessageSelection", str),
        E("entrance_video_file_url", "entranceVideoFileUrl", str),
        E(
            "entrance_message_video_file_description",
            "entranceMessageVideoFileDescription", str,
        ),
        E("entrance_video_file_media_type", "entranceVideoFileMediaType", str),
        E(
            "play_periodic_comfort_message", "playPeriodicComfortMessage", bool,
            is_required=True,
        ),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection", str, is_required=True,
        ),
        E("periodic_comfort_audio_file_url", "periodicComfortAudioFileUrl", str),
        E(
            "periodic_comfort_message_audio_file_description",
            "periodicComfortMessageAudioFileDescription", str,
        ),
        E("periodic_comfort_audio_file_media_type", "periodicComfortAudioFileMediaType", str),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection", str,
        ),
        E("periodic_comfort_video_file_url", "periodicComfortVideoFileUrl", str),
        E(
            "periodic_comfort_message_video_file_description",
            "periodicComfortMessageVideoFileDescription", str,
        ),
        E("periodic_comfort_video_file_media_type", "periodicComfortVideoFileMediaType", str),
        E(
            "enable_media_on_hold_for_queued_calls", "enableMediaOnHoldForQueuedCalls",
            bool, is_required=True,
        ),
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead16, is_complex=True, is_required=True,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls", bool,
        ),
        E(
            "media_on_hold_internal_source", "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead16, is_complex=True,
        ),
    )

    play_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    mandatory_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    entrance_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_audio_file_url: str = Field(type=str, required=False, mutable=False)
    entrance_message_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    entrance_audio_file_media_type: str = Field(type=str, required=False, mutable=False)
    entrance_video_message_selection: str = Field(type=str, required=False, mutable=False)
    entrance_video_file_url: str = Field(type=str, required=False, mutable=False)
    entrance_message_video_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    entrance_video_file_media_type: str = Field(type=str, required=False, mutable=False)
    play_periodic_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    periodic_comfort_audio_message_selection: str = Field(
        type=str, required=True, mutable=False,
    )
    periodic_comfort_audio_file_url: str = Field(type=str, required=False, mutable=False)
    periodic_comfort_message_audio_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_audio_file_media_type: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_video_message_selection: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_video_file_url: str = Field(type=str, required=False, mutable=False)
    periodic_comfort_message_video_file_description: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_video_file_media_type: str = Field(
        type=str, required=False, mutable=False,
    )
    enable_media_on_hold_for_queued_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead16" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead16, required=True, mutable=False,
    )
    media_on_hold_use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    media_on_hold_internal_source: "OCI.CallCenterMediaOnHoldSourceRead16" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead16, required=False, mutable=False,
    )


class GroupCallCenterGetAnnouncementResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest17()``.

    Replaced by ``GroupCallCenterGetAnnouncementResponse17sp4()``

    Attributes:
        play_entrance_message: playEntranceMessage
        mandatory_entrance_message: mandatoryEntranceMessage
        entrance_audio_message_selection: entranceAudioMessageSelection
        entrance_message_audio_url_list: entranceMessageAudioUrlList
        entrance_message_audio_file_list: entranceMessageAudioFileList
        entrance_message_audio_media_type_list: entranceMessageAudioMediaTypeList
        entrance_video_message_selection: entranceVideoMessageSelection
        entrance_message_video_url_list: entranceMessageVideoUrlList
        entrance_message_video_file_list: entranceMessageVideoFileList
        entrance_message_video_media_type_list: entranceMessageVideoMediaTypeList
        play_periodic_comfort_message: playPeriodicComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        periodic_comfort_audio_message_selection: periodicComfortAudioMessageSelection
        periodic_comfort_message_audio_url_list: periodicComfortMessageAudioUrlList
        periodic_comfort_message_audio_file_list: periodicComfortMessageAudioFileList
        periodic_comfort_message_audio_media_type_list:
            periodicComfortMessageAudioMediaTypeList
        periodic_comfort_video_message_selection: periodicComfortVideoMessageSelection
        periodic_comfort_message_video_url_list: periodicComfortMessageVideoUrlList
        periodic_comfort_message_video_file_list: periodicComfortMessageVideoFileList
        periodic_comfort_message_video_media_type_list:
            periodicComfortMessageVideoMediaTypeList
        enable_media_on_hold_for_queued_calls: enableMediaOnHoldForQueuedCalls
        media_on_hold_source: mediaOnHoldSource
        media_on_hold_use_alternate_source_for_internal_calls:
            mediaOnHoldUseAlternateSourceForInternalCalls
        media_on_hold_internal_source: mediaOnHoldInternalSource
        play_whisper_message: playWhisperMessage
        whisper_audio_message_selection: whisperAudioMessageSelection
        whisper_message_audio_url_list: whisperMessageAudioUrlList
        whisper_message_audio_file_list: whisperMessageAudioFileList
        whisper_message_audio_media_type_list: whisperMessageAudioMediaTypeList
        whisper_video_message_selection: whisperVideoMessageSelection
        whisper_message_video_url_list: whisperMessageVideoUrlList
        whisper_message_video_file_list: whisperMessageVideoFileList
        whisper_message_video_media_type_list: whisperMessageVideoMediaTypeList
        estimated_wait_message_options_read: estimatedWaitMessageOptionsRead
    """

    _ELEMENTS = (
        E("play_entrance_message", "playEntranceMessage", bool, is_required=True),
        E("mandatory_entrance_message", "mandatoryEntranceMessage", bool, is_required=True),
        E(
            "entrance_audio_message_selection", "entranceAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "entrance_message_audio_url_list", "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_audio_file_list", "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_audio_media_type_list", "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("entrance_video_message_selection", "entranceVideoMessageSelection", str),
        E(
            "entrance_message_video_url_list", "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_video_file_list", "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_video_media_type_list", "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "play_periodic_comfort_message", "playPeriodicComfortMessage", bool,
            is_required=True,
        ),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection", str, is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection", str,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "enable_media_on_hold_for_queued_calls", "enableMediaOnHoldForQueuedCalls",
            bool, is_required=True,
        ),
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17, is_complex=True, is_required=True,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls", bool,
        ),
        E(
            "media_on_hold_internal_source", "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead17, is_complex=True,
        ),
        E("play_whisper_message", "playWhisperMessage", bool),
        E("whisper_audio_message_selection", "whisperAudioMessageSelection", str),
        E(
            "whisper_message_audio_url_list", "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_audio_file_list", "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_audio_media_type_list", "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("whisper_video_message_selection", "whisperVideoMessageSelection", str),
        E(
            "whisper_message_video_url_list", "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_video_file_list", "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_video_media_type_list", "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "estimated_wait_message_options_read", "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead, is_complex=True, is_required=True,
        ),
    )

    play_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    mandatory_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    entrance_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    entrance_video_message_selection: str = Field(type=str, required=False, mutable=False)
    entrance_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    play_periodic_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    periodic_comfort_audio_message_selection: str = Field(
        type=str, required=True, mutable=False,
    )
    periodic_comfort_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    periodic_comfort_video_message_selection: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    enable_media_on_hold_for_queued_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead17" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17, required=True, mutable=False,
    )
    media_on_hold_use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    media_on_hold_internal_source: "OCI.CallCenterMediaOnHoldSourceRead17" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17, required=False, mutable=False,
    )
    play_whisper_message: bool = Field(type=bool, required=False, mutable=False)
    whisper_audio_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    whisper_video_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    estimated_wait_message_options_read: "OCI.EstimatedWaitMessageOptionsRead" = Field(
        type=OCI.EstimatedWaitMessageOptionsRead, required=True, mutable=False,
    )


class GroupCallCenterGetAnnouncementResponse17sp4(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest17sp4()``.


    Attributes:
        play_entrance_message: playEntranceMessage
        mandatory_entrance_message: mandatoryEntranceMessage
        entrance_audio_message_selection: entranceAudioMessageSelection
        entrance_message_audio_url_list: entranceMessageAudioUrlList
        entrance_message_audio_file_list: entranceMessageAudioFileList
        entrance_message_audio_media_type_list: entranceMessageAudioMediaTypeList
        entrance_video_message_selection: entranceVideoMessageSelection
        entrance_message_video_url_list: entranceMessageVideoUrlList
        entrance_message_video_file_list: entranceMessageVideoFileList
        entrance_message_video_media_type_list: entranceMessageVideoMediaTypeList
        play_periodic_comfort_message: playPeriodicComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        periodic_comfort_audio_message_selection: periodicComfortAudioMessageSelection
        periodic_comfort_message_audio_url_list: periodicComfortMessageAudioUrlList
        periodic_comfort_message_audio_file_list: periodicComfortMessageAudioFileList
        periodic_comfort_message_audio_media_type_list:
            periodicComfortMessageAudioMediaTypeList
        periodic_comfort_video_message_selection: periodicComfortVideoMessageSelection
        periodic_comfort_message_video_url_list: periodicComfortMessageVideoUrlList
        periodic_comfort_message_video_file_list: periodicComfortMessageVideoFileList
        periodic_comfort_message_video_media_type_list:
            periodicComfortMessageVideoMediaTypeList
        enable_media_on_hold_for_queued_calls: enableMediaOnHoldForQueuedCalls
        media_on_hold_source: mediaOnHoldSource
        media_on_hold_use_alternate_source_for_internal_calls:
            mediaOnHoldUseAlternateSourceForInternalCalls
        media_on_hold_internal_source: mediaOnHoldInternalSource
        play_whisper_message: playWhisperMessage
        whisper_audio_message_selection: whisperAudioMessageSelection
        whisper_message_audio_url_list: whisperMessageAudioUrlList
        whisper_message_audio_file_list: whisperMessageAudioFileList
        whisper_message_audio_media_type_list: whisperMessageAudioMediaTypeList
        whisper_video_message_selection: whisperVideoMessageSelection
        whisper_message_video_url_list: whisperMessageVideoUrlList
        whisper_message_video_file_list: whisperMessageVideoFileList
        whisper_message_video_media_type_list: whisperMessageVideoMediaTypeList
        estimated_wait_message_options_read: estimatedWaitMessageOptionsRead
    """

    _ELEMENTS = (
        E("play_entrance_message", "playEntranceMessage", bool, is_required=True),
        E("mandatory_entrance_message", "mandatoryEntranceMessage", bool, is_required=True),
        E(
            "entrance_audio_message_selection", "entranceAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "entrance_message_audio_url_list", "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_audio_file_list", "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_audio_media_type_list", "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("entrance_video_message_selection", "entranceVideoMessageSelection", str),
        E(
            "entrance_message_video_url_list", "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_video_file_list", "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_video_media_type_list", "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "play_periodic_comfort_message", "playPeriodicComfortMessage", bool,
            is_required=True,
        ),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection", str, is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection", str,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "enable_media_on_hold_for_queued_calls", "enableMediaOnHoldForQueuedCalls",
            bool, is_required=True,
        ),
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17, is_complex=True, is_required=True,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls", bool,
        ),
        E(
            "media_on_hold_internal_source", "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead17, is_complex=True,
        ),
        E("play_whisper_message", "playWhisperMessage", bool),
        E("whisper_audio_message_selection", "whisperAudioMessageSelection", str),
        E(
            "whisper_message_audio_url_list", "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_audio_file_list", "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_audio_media_type_list", "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("whisper_video_message_selection", "whisperVideoMessageSelection", str),
        E(
            "whisper_message_video_url_list", "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_video_file_list", "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_video_media_type_list", "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "estimated_wait_message_options_read", "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4, is_complex=True, is_required=True,
        ),
    )

    play_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    mandatory_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    entrance_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    entrance_video_message_selection: str = Field(type=str, required=False, mutable=False)
    entrance_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    play_periodic_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    periodic_comfort_audio_message_selection: str = Field(
        type=str, required=True, mutable=False,
    )
    periodic_comfort_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    periodic_comfort_video_message_selection: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    enable_media_on_hold_for_queued_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead17" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17, required=True, mutable=False,
    )
    media_on_hold_use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    media_on_hold_internal_source: "OCI.CallCenterMediaOnHoldSourceRead17" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17, required=False, mutable=False,
    )
    play_whisper_message: bool = Field(type=bool, required=False, mutable=False)
    whisper_audio_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    whisper_video_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    estimated_wait_message_options_read: "OCI.EstimatedWaitMessageOptionsRead17sp4" = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4, required=True, mutable=False,
    )


class GroupCallCenterGetAnnouncementResponse19(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest19()``.


    Attributes:
        play_entrance_message: playEntranceMessage
        mandatory_entrance_message: mandatoryEntranceMessage
        entrance_audio_message_selection: entranceAudioMessageSelection
        entrance_message_audio_url_list: entranceMessageAudioUrlList
        entrance_message_audio_file_list: entranceMessageAudioFileList
        entrance_message_audio_media_type_list: entranceMessageAudioMediaTypeList
        entrance_video_message_selection: entranceVideoMessageSelection
        entrance_message_video_url_list: entranceMessageVideoUrlList
        entrance_message_video_file_list: entranceMessageVideoFileList
        entrance_message_video_media_type_list: entranceMessageVideoMediaTypeList
        play_periodic_comfort_message: playPeriodicComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        periodic_comfort_audio_message_selection: periodicComfortAudioMessageSelection
        periodic_comfort_message_audio_url_list: periodicComfortMessageAudioUrlList
        periodic_comfort_message_audio_file_list: periodicComfortMessageAudioFileList
        periodic_comfort_message_audio_media_type_list:
            periodicComfortMessageAudioMediaTypeList
        periodic_comfort_video_message_selection: periodicComfortVideoMessageSelection
        periodic_comfort_message_video_url_list: periodicComfortMessageVideoUrlList
        periodic_comfort_message_video_file_list: periodicComfortMessageVideoFileList
        periodic_comfort_message_video_media_type_list:
            periodicComfortMessageVideoMediaTypeList
        enable_media_on_hold_for_queued_calls: enableMediaOnHoldForQueuedCalls
        media_on_hold_source: mediaOnHoldSource
        media_on_hold_use_alternate_source_for_internal_calls:
            mediaOnHoldUseAlternateSourceForInternalCalls
        media_on_hold_internal_source: mediaOnHoldInternalSource
        play_whisper_message: playWhisperMessage
        whisper_audio_message_selection: whisperAudioMessageSelection
        whisper_message_audio_url_list: whisperMessageAudioUrlList
        whisper_message_audio_file_list: whisperMessageAudioFileList
        whisper_message_audio_media_type_list: whisperMessageAudioMediaTypeList
        whisper_video_message_selection: whisperVideoMessageSelection
        whisper_message_video_url_list: whisperMessageVideoUrlList
        whisper_message_video_file_list: whisperMessageVideoFileList
        whisper_message_video_media_type_list: whisperMessageVideoMediaTypeList
        estimated_wait_message_options_read: estimatedWaitMessageOptionsRead
    """

    _ELEMENTS = (
        E("play_entrance_message", "playEntranceMessage", bool, is_required=True),
        E("mandatory_entrance_message", "mandatoryEntranceMessage", bool, is_required=True),
        E(
            "entrance_audio_message_selection", "entranceAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "entrance_message_audio_url_list", "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_audio_file_list", "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_audio_media_type_list", "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("entrance_video_message_selection", "entranceVideoMessageSelection", str),
        E(
            "entrance_message_video_url_list", "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_video_file_list", "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_video_media_type_list", "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "play_periodic_comfort_message", "playPeriodicComfortMessage", bool,
            is_required=True,
        ),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection", str, is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection", str,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "enable_media_on_hold_for_queued_calls", "enableMediaOnHoldForQueuedCalls",
            bool, is_required=True,
        ),
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead19, is_complex=True, is_required=True,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls", bool,
        ),
        E(
            "media_on_hold_internal_source", "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead19, is_complex=True,
        ),
        E("play_whisper_message", "playWhisperMessage", bool),
        E("whisper_audio_message_selection", "whisperAudioMessageSelection", str),
        E(
            "whisper_message_audio_url_list", "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_audio_file_list", "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_audio_media_type_list", "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("whisper_video_message_selection", "whisperVideoMessageSelection", str),
        E(
            "whisper_message_video_url_list", "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_video_file_list", "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_video_media_type_list", "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "estimated_wait_message_options_read", "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4, is_complex=True, is_required=True,
        ),
    )

    play_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    mandatory_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    entrance_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    entrance_video_message_selection: str = Field(type=str, required=False, mutable=False)
    entrance_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    play_periodic_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    periodic_comfort_audio_message_selection: str = Field(
        type=str, required=True, mutable=False,
    )
    periodic_comfort_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    periodic_comfort_video_message_selection: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    enable_media_on_hold_for_queued_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead19" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19, required=True, mutable=False,
    )
    media_on_hold_use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    media_on_hold_internal_source: "OCI.CallCenterMediaOnHoldSourceRead19" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19, required=False, mutable=False,
    )
    play_whisper_message: bool = Field(type=bool, required=False, mutable=False)
    whisper_audio_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    whisper_video_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    estimated_wait_message_options_read: "OCI.EstimatedWaitMessageOptionsRead17sp4" = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4, required=True, mutable=False,
    )


class GroupCallCenterGetAnnouncementResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest20()``.


    Attributes:
        play_entrance_message: playEntranceMessage
        mandatory_entrance_message: mandatoryEntranceMessage
        entrance_audio_message_selection: entranceAudioMessageSelection
        entrance_message_audio_url_list: entranceMessageAudioUrlList
        entrance_message_audio_file_list: entranceMessageAudioFileList
        entrance_video_message_selection: entranceVideoMessageSelection
        entrance_message_video_url_list: entranceMessageVideoUrlList
        entrance_message_video_file_list: entranceMessageVideoFileList
        play_periodic_comfort_message: playPeriodicComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        periodic_comfort_audio_message_selection: periodicComfortAudioMessageSelection
        periodic_comfort_message_audio_url_list: periodicComfortMessageAudioUrlList
        periodic_comfort_message_audio_file_list: periodicComfortMessageAudioFileList
        periodic_comfort_video_message_selection: periodicComfortVideoMessageSelection
        periodic_comfort_message_video_url_list: periodicComfortMessageVideoUrlList
        periodic_comfort_message_video_file_list: periodicComfortMessageVideoFileList
        enable_media_on_hold_for_queued_calls: enableMediaOnHoldForQueuedCalls
        media_on_hold_source: mediaOnHoldSource
        media_on_hold_use_alternate_source_for_internal_calls:
            mediaOnHoldUseAlternateSourceForInternalCalls
        media_on_hold_internal_source: mediaOnHoldInternalSource
        play_whisper_message: playWhisperMessage
        whisper_audio_message_selection: whisperAudioMessageSelection
        whisper_message_audio_url_list: whisperMessageAudioUrlList
        whisper_message_audio_file_list: whisperMessageAudioFileList
        whisper_video_message_selection: whisperVideoMessageSelection
        whisper_message_video_url_list: whisperMessageVideoUrlList
        whisper_message_video_file_list: whisperMessageVideoFileList
        estimated_wait_message_options_read: estimatedWaitMessageOptionsRead
    """

    _ELEMENTS = (
        E("play_entrance_message", "playEntranceMessage", bool, is_required=True),
        E("mandatory_entrance_message", "mandatoryEntranceMessage", bool, is_required=True),
        E(
            "entrance_audio_message_selection", "entranceAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "entrance_message_audio_url_list", "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_audio_file_list", "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E("entrance_video_message_selection", "entranceVideoMessageSelection", str),
        E(
            "entrance_message_video_url_list", "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_video_file_list", "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "play_periodic_comfort_message", "playPeriodicComfortMessage", bool,
            is_required=True,
        ),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection", str, is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection", str,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "enable_media_on_hold_for_queued_calls", "enableMediaOnHoldForQueuedCalls",
            bool, is_required=True,
        ),
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead20, is_complex=True, is_required=True,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls", bool,
        ),
        E(
            "media_on_hold_internal_source", "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead20, is_complex=True,
        ),
        E("play_whisper_message", "playWhisperMessage", bool),
        E("whisper_audio_message_selection", "whisperAudioMessageSelection", str),
        E(
            "whisper_message_audio_url_list", "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_audio_file_list", "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E("whisper_video_message_selection", "whisperVideoMessageSelection", str),
        E(
            "whisper_message_video_url_list", "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_video_file_list", "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "estimated_wait_message_options_read", "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4, is_complex=True, is_required=True,
        ),
    )

    play_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    mandatory_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    entrance_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    entrance_video_message_selection: str = Field(type=str, required=False, mutable=False)
    entrance_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    play_periodic_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    periodic_comfort_audio_message_selection: str = Field(
        type=str, required=True, mutable=False,
    )
    periodic_comfort_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    periodic_comfort_video_message_selection: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    enable_media_on_hold_for_queued_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead20" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20, required=True, mutable=False,
    )
    media_on_hold_use_alternate_source_for_internal_calls: bool = Field(
        type=bool, required=False, mutable=False,
    )
    media_on_hold_internal_source: "OCI.CallCenterMediaOnHoldSourceRead20" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20, required=False, mutable=False,
    )
    play_whisper_message: bool = Field(type=bool, required=False, mutable=False)
    whisper_audio_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    whisper_video_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    estimated_wait_message_options_read: "OCI.EstimatedWaitMessageOptionsRead17sp4" = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4, required=True, mutable=False,
    )


class GroupCallCenterGetDNISAnnouncementResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISAnnouncementResponse()``.

    Replaced by ``GroupCallCenterGetDNISAnnouncementResponse17sp4()``

    Attributes:
        play_entrance_message: playEntranceMessage
        mandatory_entrance_message: mandatoryEntranceMessage
        entrance_audio_message_selection: entranceAudioMessageSelection
        entrance_message_audio_url_list: entranceMessageAudioUrlList
        entrance_message_audio_file_list: entranceMessageAudioFileList
        entrance_message_audio_media_type_list: entranceMessageAudioMediaTypeList
        entrance_video_message_selection: entranceVideoMessageSelection
        entrance_message_video_url_list: entranceMessageVideoUrlList
        entrance_message_video_file_list: entranceMessageVideoFileList
        entrance_message_video_media_type_list: entranceMessageVideoMediaTypeList
        play_periodic_comfort_message: playPeriodicComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        periodic_comfort_audio_message_selection: periodicComfortAudioMessageSelection
        periodic_comfort_message_audio_url_list: periodicComfortMessageAudioUrlList
        periodic_comfort_message_audio_file_list: periodicComfortMessageAudioFileList
        periodic_comfort_message_audio_media_type_list:
            periodicComfortMessageAudioMediaTypeList
        periodic_comfort_video_message_selection: periodicComfortVideoMessageSelection
        periodic_comfort_message_video_url_list: periodicComfortMessageVideoUrlList
        periodic_comfort_message_video_file_list: periodicComfortMessageVideoFileList
        periodic_comfort_message_video_media_type_list:
            periodicComfortMessageVideoMediaTypeList
        enable_media_on_hold_for_queued_calls: enableMediaOnHoldForQueuedCalls
        media_on_hold_source: mediaOnHoldSource
        play_whisper_message: playWhisperMessage
        whisper_audio_message_selection: whisperAudioMessageSelection
        whisper_message_audio_url_list: whisperMessageAudioUrlList
        whisper_message_audio_file_list: whisperMessageAudioFileList
        whisper_message_audio_media_type_list: whisperMessageAudioMediaTypeList
        whisper_video_message_selection: whisperVideoMessageSelection
        whisper_message_video_url_list: whisperMessageVideoUrlList
        whisper_message_video_file_list: whisperMessageVideoFileList
        whisper_message_video_media_type_list: whisperMessageVideoMediaTypeList
        estimated_wait_message_options_read: estimatedWaitMessageOptionsRead
    """

    _ELEMENTS = (
        E("play_entrance_message", "playEntranceMessage", bool, is_required=True),
        E("mandatory_entrance_message", "mandatoryEntranceMessage", bool, is_required=True),
        E(
            "entrance_audio_message_selection", "entranceAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "entrance_message_audio_url_list", "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_audio_file_list", "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_audio_media_type_list", "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("entrance_video_message_selection", "entranceVideoMessageSelection", str),
        E(
            "entrance_message_video_url_list", "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_video_file_list", "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_video_media_type_list", "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "play_periodic_comfort_message", "playPeriodicComfortMessage", bool,
            is_required=True,
        ),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection", str, is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection", str,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "enable_media_on_hold_for_queued_calls", "enableMediaOnHoldForQueuedCalls",
            bool, is_required=True,
        ),
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17, is_complex=True, is_required=True,
        ),
        E("play_whisper_message", "playWhisperMessage", bool, is_required=True),
        E(
            "whisper_audio_message_selection", "whisperAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "whisper_message_audio_url_list", "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_audio_file_list", "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_audio_media_type_list", "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("whisper_video_message_selection", "whisperVideoMessageSelection", str),
        E(
            "whisper_message_video_url_list", "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_video_file_list", "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_video_media_type_list", "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "estimated_wait_message_options_read", "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead, is_complex=True, is_required=True,
        ),
    )

    play_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    mandatory_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    entrance_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    entrance_video_message_selection: str = Field(type=str, required=False, mutable=False)
    entrance_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    play_periodic_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    periodic_comfort_audio_message_selection: str = Field(
        type=str, required=True, mutable=False,
    )
    periodic_comfort_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    periodic_comfort_video_message_selection: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    enable_media_on_hold_for_queued_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead17" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17, required=True, mutable=False,
    )
    play_whisper_message: bool = Field(type=bool, required=True, mutable=False)
    whisper_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    whisper_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    whisper_video_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    estimated_wait_message_options_read: "OCI.EstimatedWaitMessageOptionsRead" = Field(
        type=OCI.EstimatedWaitMessageOptionsRead, required=True, mutable=False,
    )


class GroupCallCenterGetDNISAnnouncementResponse17sp4(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISAnnouncementResponse17sp4()``.


    Attributes:
        play_entrance_message: playEntranceMessage
        mandatory_entrance_message: mandatoryEntranceMessage
        entrance_audio_message_selection: entranceAudioMessageSelection
        entrance_message_audio_url_list: entranceMessageAudioUrlList
        entrance_message_audio_file_list: entranceMessageAudioFileList
        entrance_message_audio_media_type_list: entranceMessageAudioMediaTypeList
        entrance_video_message_selection: entranceVideoMessageSelection
        entrance_message_video_url_list: entranceMessageVideoUrlList
        entrance_message_video_file_list: entranceMessageVideoFileList
        entrance_message_video_media_type_list: entranceMessageVideoMediaTypeList
        play_periodic_comfort_message: playPeriodicComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        periodic_comfort_audio_message_selection: periodicComfortAudioMessageSelection
        periodic_comfort_message_audio_url_list: periodicComfortMessageAudioUrlList
        periodic_comfort_message_audio_file_list: periodicComfortMessageAudioFileList
        periodic_comfort_message_audio_media_type_list:
            periodicComfortMessageAudioMediaTypeList
        periodic_comfort_video_message_selection: periodicComfortVideoMessageSelection
        periodic_comfort_message_video_url_list: periodicComfortMessageVideoUrlList
        periodic_comfort_message_video_file_list: periodicComfortMessageVideoFileList
        periodic_comfort_message_video_media_type_list:
            periodicComfortMessageVideoMediaTypeList
        enable_media_on_hold_for_queued_calls: enableMediaOnHoldForQueuedCalls
        media_on_hold_source: mediaOnHoldSource
        play_whisper_message: playWhisperMessage
        whisper_audio_message_selection: whisperAudioMessageSelection
        whisper_message_audio_url_list: whisperMessageAudioUrlList
        whisper_message_audio_file_list: whisperMessageAudioFileList
        whisper_message_audio_media_type_list: whisperMessageAudioMediaTypeList
        whisper_video_message_selection: whisperVideoMessageSelection
        whisper_message_video_url_list: whisperMessageVideoUrlList
        whisper_message_video_file_list: whisperMessageVideoFileList
        whisper_message_video_media_type_list: whisperMessageVideoMediaTypeList
        estimated_wait_message_options_read: estimatedWaitMessageOptionsRead
    """

    _ELEMENTS = (
        E("play_entrance_message", "playEntranceMessage", bool, is_required=True),
        E("mandatory_entrance_message", "mandatoryEntranceMessage", bool, is_required=True),
        E(
            "entrance_audio_message_selection", "entranceAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "entrance_message_audio_url_list", "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_audio_file_list", "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_audio_media_type_list", "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("entrance_video_message_selection", "entranceVideoMessageSelection", str),
        E(
            "entrance_message_video_url_list", "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_video_file_list", "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_video_media_type_list", "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "play_periodic_comfort_message", "playPeriodicComfortMessage", bool,
            is_required=True,
        ),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection", str, is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection", str,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "enable_media_on_hold_for_queued_calls", "enableMediaOnHoldForQueuedCalls",
            bool, is_required=True,
        ),
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17, is_complex=True, is_required=True,
        ),
        E("play_whisper_message", "playWhisperMessage", bool, is_required=True),
        E(
            "whisper_audio_message_selection", "whisperAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "whisper_message_audio_url_list", "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_audio_file_list", "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_audio_media_type_list", "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("whisper_video_message_selection", "whisperVideoMessageSelection", str),
        E(
            "whisper_message_video_url_list", "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_video_file_list", "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_video_media_type_list", "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "estimated_wait_message_options_read", "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4, is_complex=True, is_required=True,
        ),
    )

    play_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    mandatory_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    entrance_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    entrance_video_message_selection: str = Field(type=str, required=False, mutable=False)
    entrance_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    play_periodic_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    periodic_comfort_audio_message_selection: str = Field(
        type=str, required=True, mutable=False,
    )
    periodic_comfort_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    periodic_comfort_video_message_selection: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    enable_media_on_hold_for_queued_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead17" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17, required=True, mutable=False,
    )
    play_whisper_message: bool = Field(type=bool, required=True, mutable=False)
    whisper_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    whisper_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    whisper_video_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    estimated_wait_message_options_read: "OCI.EstimatedWaitMessageOptionsRead17sp4" = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4, required=True, mutable=False,
    )


class GroupCallCenterGetDNISAnnouncementResponse19(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISAnnouncementRequest19()``.


    Attributes:
        play_entrance_message: playEntranceMessage
        mandatory_entrance_message: mandatoryEntranceMessage
        entrance_audio_message_selection: entranceAudioMessageSelection
        entrance_message_audio_url_list: entranceMessageAudioUrlList
        entrance_message_audio_file_list: entranceMessageAudioFileList
        entrance_message_audio_media_type_list: entranceMessageAudioMediaTypeList
        entrance_video_message_selection: entranceVideoMessageSelection
        entrance_message_video_url_list: entranceMessageVideoUrlList
        entrance_message_video_file_list: entranceMessageVideoFileList
        entrance_message_video_media_type_list: entranceMessageVideoMediaTypeList
        play_periodic_comfort_message: playPeriodicComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        periodic_comfort_audio_message_selection: periodicComfortAudioMessageSelection
        periodic_comfort_message_audio_url_list: periodicComfortMessageAudioUrlList
        periodic_comfort_message_audio_file_list: periodicComfortMessageAudioFileList
        periodic_comfort_message_audio_media_type_list:
            periodicComfortMessageAudioMediaTypeList
        periodic_comfort_video_message_selection: periodicComfortVideoMessageSelection
        periodic_comfort_message_video_url_list: periodicComfortMessageVideoUrlList
        periodic_comfort_message_video_file_list: periodicComfortMessageVideoFileList
        periodic_comfort_message_video_media_type_list:
            periodicComfortMessageVideoMediaTypeList
        enable_media_on_hold_for_queued_calls: enableMediaOnHoldForQueuedCalls
        media_on_hold_source: mediaOnHoldSource
        play_whisper_message: playWhisperMessage
        whisper_audio_message_selection: whisperAudioMessageSelection
        whisper_message_audio_url_list: whisperMessageAudioUrlList
        whisper_message_audio_file_list: whisperMessageAudioFileList
        whisper_message_audio_media_type_list: whisperMessageAudioMediaTypeList
        whisper_video_message_selection: whisperVideoMessageSelection
        whisper_message_video_url_list: whisperMessageVideoUrlList
        whisper_message_video_file_list: whisperMessageVideoFileList
        whisper_message_video_media_type_list: whisperMessageVideoMediaTypeList
        estimated_wait_message_options_read: estimatedWaitMessageOptionsRead
    """

    _ELEMENTS = (
        E("play_entrance_message", "playEntranceMessage", bool, is_required=True),
        E("mandatory_entrance_message", "mandatoryEntranceMessage", bool, is_required=True),
        E(
            "entrance_audio_message_selection", "entranceAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "entrance_message_audio_url_list", "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_audio_file_list", "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_audio_media_type_list", "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("entrance_video_message_selection", "entranceVideoMessageSelection", str),
        E(
            "entrance_message_video_url_list", "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_video_file_list", "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "entrance_message_video_media_type_list", "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "play_periodic_comfort_message", "playPeriodicComfortMessage", bool,
            is_required=True,
        ),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection", str, is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection", str,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "enable_media_on_hold_for_queued_calls", "enableMediaOnHoldForQueuedCalls",
            bool, is_required=True,
        ),
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead19, is_complex=True, is_required=True,
        ),
        E("play_whisper_message", "playWhisperMessage", bool, is_required=True),
        E(
            "whisper_audio_message_selection", "whisperAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "whisper_message_audio_url_list", "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_audio_file_list", "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_audio_media_type_list", "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E("whisper_video_message_selection", "whisperVideoMessageSelection", str),
        E(
            "whisper_message_video_url_list", "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_video_file_list", "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList, is_complex=True,
        ),
        E(
            "whisper_message_video_media_type_list", "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList, is_complex=True,
        ),
        E(
            "estimated_wait_message_options_read", "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4, is_complex=True, is_required=True,
        ),
    )

    play_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    mandatory_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    entrance_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    entrance_video_message_selection: str = Field(type=str, required=False, mutable=False)
    entrance_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    entrance_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    play_periodic_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    periodic_comfort_audio_message_selection: str = Field(
        type=str, required=True, mutable=False,
    )
    periodic_comfort_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    periodic_comfort_video_message_selection: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    periodic_comfort_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    enable_media_on_hold_for_queued_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead19" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19, required=True, mutable=False,
    )
    play_whisper_message: bool = Field(type=bool, required=True, mutable=False)
    whisper_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    whisper_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_audio_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_audio_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    whisper_video_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_video_file_list: "OCI.CallCenterAnnouncementDescriptionList" = Field(
        type=OCI.CallCenterAnnouncementDescriptionList, required=False, mutable=False,
    )
    whisper_message_video_media_type_list: "OCI.CallCenterAnnouncementMediaFileTypeList" = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList, required=False, mutable=False,
    )
    estimated_wait_message_options_read: "OCI.EstimatedWaitMessageOptionsRead17sp4" = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4, required=True, mutable=False,
    )


class GroupCallCenterGetDNISAnnouncementResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISAnnouncementRequest20()``.


    Attributes:
        play_entrance_message: playEntranceMessage
        mandatory_entrance_message: mandatoryEntranceMessage
        entrance_audio_message_selection: entranceAudioMessageSelection
        entrance_message_audio_url_list: entranceMessageAudioUrlList
        entrance_message_audio_file_list: entranceMessageAudioFileList
        entrance_video_message_selection: entranceVideoMessageSelection
        entrance_message_video_url_list: entranceMessageVideoUrlList
        entrance_message_video_file_list: entranceMessageVideoFileList
        play_periodic_comfort_message: playPeriodicComfortMessage
        time_between_comfort_messages_seconds: timeBetweenComfortMessagesSeconds
        periodic_comfort_audio_message_selection: periodicComfortAudioMessageSelection
        periodic_comfort_message_audio_url_list: periodicComfortMessageAudioUrlList
        periodic_comfort_message_audio_file_list: periodicComfortMessageAudioFileList
        periodic_comfort_video_message_selection: periodicComfortVideoMessageSelection
        periodic_comfort_message_video_url_list: periodicComfortMessageVideoUrlList
        periodic_comfort_message_video_file_list: periodicComfortMessageVideoFileList
        enable_media_on_hold_for_queued_calls: enableMediaOnHoldForQueuedCalls
        media_on_hold_source: mediaOnHoldSource
        play_whisper_message: playWhisperMessage
        whisper_audio_message_selection: whisperAudioMessageSelection
        whisper_message_audio_url_list: whisperMessageAudioUrlList
        whisper_message_audio_file_list: whisperMessageAudioFileList
        whisper_video_message_selection: whisperVideoMessageSelection
        whisper_message_video_url_list: whisperMessageVideoUrlList
        whisper_message_video_file_list: whisperMessageVideoFileList
        estimated_wait_message_options_read: estimatedWaitMessageOptionsRead
    """

    _ELEMENTS = (
        E("play_entrance_message", "playEntranceMessage", bool, is_required=True),
        E("mandatory_entrance_message", "mandatoryEntranceMessage", bool, is_required=True),
        E(
            "entrance_audio_message_selection", "entranceAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "entrance_message_audio_url_list", "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_audio_file_list", "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E("entrance_video_message_selection", "entranceVideoMessageSelection", str),
        E(
            "entrance_message_video_url_list", "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "entrance_message_video_file_list", "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "play_periodic_comfort_message", "playPeriodicComfortMessage", bool,
            is_required=True,
        ),
        E(
            "time_between_comfort_messages_seconds", "timeBetweenComfortMessagesSeconds",
            int, is_required=True,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection", str, is_required=True,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection", str,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList", OCI.CallCenterAnnouncementURLList,
            is_complex=True,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "enable_media_on_hold_for_queued_calls", "enableMediaOnHoldForQueuedCalls",
            bool, is_required=True,
        ),
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead20, is_complex=True, is_required=True,
        ),
        E("play_whisper_message", "playWhisperMessage", bool, is_required=True),
        E(
            "whisper_audio_message_selection", "whisperAudioMessageSelection", str,
            is_required=True,
        ),
        E(
            "whisper_message_audio_url_list", "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_audio_file_list", "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E("whisper_video_message_selection", "whisperVideoMessageSelection", str),
        E(
            "whisper_message_video_url_list", "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList, is_complex=True,
        ),
        E(
            "whisper_message_video_file_list", "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20, is_complex=True,
        ),
        E(
            "estimated_wait_message_options_read", "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4, is_complex=True, is_required=True,
        ),
    )

    play_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    mandatory_entrance_message: bool = Field(type=bool, required=True, mutable=False)
    entrance_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    entrance_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    entrance_video_message_selection: str = Field(type=str, required=False, mutable=False)
    entrance_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    entrance_message_video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    play_periodic_comfort_message: bool = Field(type=bool, required=True, mutable=False)
    time_between_comfort_messages_seconds: int = Field(type=int, required=True, mutable=False)
    periodic_comfort_audio_message_selection: str = Field(
        type=str, required=True, mutable=False,
    )
    periodic_comfort_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    periodic_comfort_video_message_selection: str = Field(
        type=str, required=False, mutable=False,
    )
    periodic_comfort_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    periodic_comfort_message_video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    enable_media_on_hold_for_queued_calls: bool = Field(
        type=bool, required=True, mutable=False,
    )
    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead20" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20, required=True, mutable=False,
    )
    play_whisper_message: bool = Field(type=bool, required=True, mutable=False)
    whisper_audio_message_selection: str = Field(type=str, required=True, mutable=False)
    whisper_message_audio_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_audio_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    whisper_video_message_selection: str = Field(type=str, required=False, mutable=False)
    whisper_message_video_url_list: "OCI.CallCenterAnnouncementURLList" = Field(
        type=OCI.CallCenterAnnouncementURLList, required=False, mutable=False,
    )
    whisper_message_video_file_list: "OCI.CallCenterAnnouncementFileListRead20" = Field(
        type=OCI.CallCenterAnnouncementFileListRead20, required=False, mutable=False,
    )
    estimated_wait_message_options_read: "OCI.EstimatedWaitMessageOptionsRead17sp4" = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4, required=True, mutable=False,
    )


class GroupOutgoingCallingPlanDigitPlanCallMeNowGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanDigitPlanCallMeNowGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions, is_complex=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingCallingPlanDigitPatternCallMeNowDepartmentPermissions,
            is_complex=True, is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions" = Field(
        type=OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions, required=False,
        mutable=False,
    )
    department_permissions: "List[OCI.OutgoingCallingPlanDigitPatternCallMeNowDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanDigitPlanOriginatingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanDigitPlanOriginatingGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions, is_complex=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingCallingPlanDigitPatternOriginatingDepartmentPermissions,
            is_complex=True, is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions" = Field(
        type=OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions, required=False,
        mutable=False,
    )
    department_permissions: "List[OCI.OutgoingCallingPlanDigitPatternOriginatingDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanDigitPlanRedirectingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanDigitPlanRedirectingGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions, is_complex=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingCallingPlanDigitPatternRedirectingDepartmentPermissions,
            is_complex=True, is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions" = Field(
        type=OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions, required=False,
        mutable=False,
    )
    department_permissions: "List[OCI.OutgoingCallingPlanDigitPatternRedirectingDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanPinholeDigitPlanCallMeNowGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanPinholeDigitPlanCallMeNowGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions, is_complex=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowDepartmentPermissions,
            is_complex=True, is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions" = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions, required=False,
        mutable=False,
    )
    department_permissions: "List[OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanPinholeDigitPlanOriginatingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanPinholeDigitPlanOriginatingGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions,
            is_complex=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingDepartmentPermissions,
            is_complex=True, is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions" = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions,
        required=False, mutable=False,
    )
    department_permissions: "List[OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupOutgoingCallingPlanPinholeDigitPlanRedirectingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanPinholeDigitPlanRedirectingGetListRequest()``.


    Attributes:
        group_permissions: groupPermissions
        department_permissions: departmentPermissions
    """

    _ELEMENTS = (
        E(
            "group_permissions", "groupPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions,
            is_complex=True,
        ),
        E(
            "department_permissions", "departmentPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingDepartmentPermissions,
            is_complex=True, is_array=True,
        ),
    )

    group_permissions: "OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions" = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions,
        required=False, mutable=False,
    )
    department_permissions: "List[OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingDepartmentPermissions]" = Field(
        type=list, required=False, mutable=False,
    )


class GroupRoutePointGetAnnouncementResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetAnnouncementRequest()``.


    Attributes:
        media_on_hold_source: mediaOnHoldSource
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17, is_complex=True, is_required=True,
        ),
    )

    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead17" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17, required=True, mutable=False,
    )


class GroupRoutePointGetAnnouncementResponse19(OCIResponse):
    """
    Response to the ``GroupRoutePointGetAnnouncementRequest19()``.


    Attributes:
        media_on_hold_source: mediaOnHoldSource
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead19, is_complex=True, is_required=True,
        ),
    )

    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead19" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19, required=True, mutable=False,
    )


class GroupRoutePointGetAnnouncementResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointGetAnnouncementRequest20()``.


    Attributes:
        media_on_hold_source: mediaOnHoldSource
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead20, is_complex=True, is_required=True,
        ),
    )

    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead20" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20, required=True, mutable=False,
    )


class GroupRoutePointGetDNISAnnouncementResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISAnnouncementRequest()``.


    Attributes:
        media_on_hold_source: mediaOnHoldSource
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17, is_complex=True, is_required=True,
        ),
    )

    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead17" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17, required=True, mutable=False,
    )


class GroupRoutePointGetDNISAnnouncementResponse19(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISAnnouncementRequest19()``.


    Attributes:
        media_on_hold_source: mediaOnHoldSource
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead19, is_complex=True, is_required=True,
        ),
    )

    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead19" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19, required=True, mutable=False,
    )


class GroupRoutePointGetDNISAnnouncementResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISAnnouncementRequest20()``.


    Attributes:
        media_on_hold_source: mediaOnHoldSource
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source", "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead20, is_complex=True, is_required=True,
        ),
    )

    media_on_hold_source: "OCI.CallCenterMediaOnHoldSourceRead20" = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20, required=True, mutable=False,
    )


class UserCallCenterEnhancedReportingScheduledReportGetResponse(OCIResponse):
    """
    Response to ``UserCallCenterEnhancedReportingScheduledReportGetRequest()``.


    Attributes:
        description: description
        report_template: reportTemplate
        schedule: schedule
        sampling_period: samplingPeriod
        start_day_of_week: startDayOfWeek
        report_time_zone: reportTimeZone
        report_date_format: reportDateFormat
        report_time_format: reportTimeFormat
        report_interval: reportInterval
        report_format: reportFormat
        agent: agent
        call_center: callCenter
        dnis: dnis
        call_completion_threshold_seconds: callCompletionThresholdSeconds
        short_duration_threshold_seconds: shortDurationThresholdSeconds
        service_level_threshold_seconds: serviceLevelThresholdSeconds
        service_level_inclusions: serviceLevelInclusions
        service_level_objective_percentage: serviceLevelObjectivePercentage
        abandoned_call_threshold_seconds: abandonedCallThresholdSeconds
        email_address: emailAddress
    """

    _ELEMENTS = (
        E("description", "description", str),
        E(
            "report_template", "reportTemplate", OCI.CallCenterReportTemplateKey,
            is_complex=True, is_required=True,
        ),
        E(
            "schedule", "schedule", OCI.CallCenterReportSchedule, is_complex=True,
            is_required=True,
        ),
        E("sampling_period", "samplingPeriod", str),
        E("start_day_of_week", "startDayOfWeek", str),
        E("report_time_zone", "reportTimeZone", str, is_required=True),
        E("report_date_format", "reportDateFormat", str, is_required=True),
        E("report_time_format", "reportTimeFormat", str, is_required=True),
        E(
            "report_interval", "reportInterval", OCI.CallCenterReportInterval,
            is_complex=True, is_required=True,
        ),
        E("report_format", "reportFormat", str, is_required=True),
        E("agent", "agent", OCI.CallCenterScheduledReportAgentSelectionRead, is_complex=True),
        E(
            "call_center", "callCenter", OCI.CallCenterScheduledReportCallCenterSelection,
            is_complex=True,
        ),
        E("dnis", "dnis", OCI.CallCenterScheduledReportDNISSelection, is_complex=True),
        E("call_completion_threshold_seconds", "callCompletionThresholdSeconds", int),
        E("short_duration_threshold_seconds", "shortDurationThresholdSeconds", int),
        E("service_level_threshold_seconds", "serviceLevelThresholdSeconds", int),
        E(
            "service_level_inclusions", "serviceLevelInclusions",
            OCI.CallCenterScheduledReportServiceLevelInclusions, is_complex=True,
        ),
        E("service_level_objective_percentage", "serviceLevelObjectivePercentage", int),
        E("abandoned_call_threshold_seconds", "abandonedCallThresholdSeconds", int),
        E("email_address", "emailAddress", str, is_required=True),
    )

    description: str = Field(type=str, required=False, mutable=False)
    report_template: "OCI.CallCenterReportTemplateKey" = Field(
        type=OCI.CallCenterReportTemplateKey, required=True, mutable=False,
    )
    schedule: "OCI.CallCenterReportSchedule" = Field(
        type=OCI.CallCenterReportSchedule, required=True, mutable=False,
    )
    sampling_period: str = Field(type=str, required=False, mutable=False)
    start_day_of_week: str = Field(type=str, required=False, mutable=False)
    report_time_zone: str = Field(type=str, required=True, mutable=False)
    report_date_format: str = Field(type=str, required=True, mutable=False)
    report_time_format: str = Field(type=str, required=True, mutable=False)
    report_interval: "OCI.CallCenterReportInterval" = Field(
        type=OCI.CallCenterReportInterval, required=True, mutable=False,
    )
    report_format: str = Field(type=str, required=True, mutable=False)
    agent: "OCI.CallCenterScheduledReportAgentSelectionRead" = Field(
        type=OCI.CallCenterScheduledReportAgentSelectionRead, required=False,
        mutable=False,
    )
    call_center: "OCI.CallCenterScheduledReportCallCenterSelection" = Field(
        type=OCI.CallCenterScheduledReportCallCenterSelection, required=False,
        mutable=False,
    )
    dnis: "OCI.CallCenterScheduledReportDNISSelection" = Field(
        type=OCI.CallCenterScheduledReportDNISSelection, required=False, mutable=False,
    )
    call_completion_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    short_duration_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    service_level_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    service_level_inclusions: "OCI.CallCenterScheduledReportServiceLevelInclusions" = Field(
        type=OCI.CallCenterScheduledReportServiceLevelInclusions, required=False,
        mutable=False,
    )
    service_level_objective_percentage: int = Field(type=int, required=False, mutable=False)
    abandoned_call_threshold_seconds: int = Field(type=int, required=False, mutable=False)
    email_address: str = Field(type=str, required=True, mutable=False)


class GroupAutoAttendantGetInstanceResponse14(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest14()``.

    Contains the service profile information.

    Replaced By: ``GroupAutoAttendantGetInstanceResponse16()``

    Attributes:
        service_instance_profile: serviceInstanceProfile
        enable_video: enableVideo
        business_hours: businessHours
        holiday_schedule_name: holidayScheduleName
        extension_dialing_scope: extensionDialingScope
        name_dialing_scope: nameDialingScope
        name_dialing_entries: nameDialingEntries
        business_hours_menu: businessHoursMenu
        after_hours_menu: afterHoursMenu
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("business_hours", "businessHours", str),
        E("holiday_schedule_name", "holidayScheduleName", str),
        E("extension_dialing_scope", "extensionDialingScope", str, is_required=True),
        E("name_dialing_scope", "nameDialingScope", str, is_required=True),
        E("name_dialing_entries", "nameDialingEntries", str, is_required=True),
        E(
            "business_hours_menu", "businessHoursMenu", OCI.AutoAttendantReadMenu,
            is_complex=True, is_required=True,
        ),
        E(
            "after_hours_menu", "afterHoursMenu", OCI.AutoAttendantReadMenu,
            is_complex=True, is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    business_hours: str = Field(type=str, required=False, mutable=False)
    holiday_schedule_name: str = Field(type=str, required=False, mutable=False)
    extension_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_entries: str = Field(type=str, required=True, mutable=False)
    business_hours_menu: "OCI.AutoAttendantReadMenu" = Field(
        type=OCI.AutoAttendantReadMenu, required=True, mutable=False,
    )
    after_hours_menu: "OCI.AutoAttendantReadMenu" = Field(
        type=OCI.AutoAttendantReadMenu, required=True, mutable=False,
    )


class GroupAutoAttendantGetInstanceResponse16(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest16()``.

    Contains the service profile information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        enable_video: enableVideo
        business_hours: businessHours
        holiday_schedule_name: holidayScheduleName
        extension_dialing_scope: extensionDialingScope
        name_dialing_scope: nameDialingScope
        name_dialing_entries: nameDialingEntries
        business_hours_menu: businessHoursMenu
        after_hours_menu: afterHoursMenu
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile, is_complex=True, is_required=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("business_hours", "businessHours", str),
        E("holiday_schedule_name", "holidayScheduleName", str),
        E("extension_dialing_scope", "extensionDialingScope", str, is_required=True),
        E("name_dialing_scope", "nameDialingScope", str, is_required=True),
        E("name_dialing_entries", "nameDialingEntries", str, is_required=True),
        E(
            "business_hours_menu", "businessHoursMenu", OCI.AutoAttendantReadMenu16,
            is_complex=True, is_required=True,
        ),
        E(
            "after_hours_menu", "afterHoursMenu", OCI.AutoAttendantReadMenu16,
            is_complex=True, is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile" = Field(
        type=OCI.ServiceInstanceReadProfile, required=True, mutable=False,
    )
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    business_hours: str = Field(type=str, required=False, mutable=False)
    holiday_schedule_name: str = Field(type=str, required=False, mutable=False)
    extension_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_entries: str = Field(type=str, required=True, mutable=False)
    business_hours_menu: "OCI.AutoAttendantReadMenu16" = Field(
        type=OCI.AutoAttendantReadMenu16, required=True, mutable=False,
    )
    after_hours_menu: "OCI.AutoAttendantReadMenu16" = Field(
        type=OCI.AutoAttendantReadMenu16, required=True, mutable=False,
    )


class GroupAutoAttendantGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest17()``.

    Contains the service profile information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        enable_video: enableVideo
        business_hours: businessHours
        holiday_schedule_name: holidayScheduleName
        extension_dialing_scope: extensionDialingScope
        name_dialing_scope: nameDialingScope
        name_dialing_entries: nameDialingEntries
        business_hours_menu: businessHoursMenu
        after_hours_menu: afterHoursMenu
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("business_hours", "businessHours", str),
        E("holiday_schedule_name", "holidayScheduleName", str),
        E("extension_dialing_scope", "extensionDialingScope", str, is_required=True),
        E("name_dialing_scope", "nameDialingScope", str, is_required=True),
        E("name_dialing_entries", "nameDialingEntries", str, is_required=True),
        E(
            "business_hours_menu", "businessHoursMenu", OCI.AutoAttendantReadMenu16,
            is_complex=True, is_required=True,
        ),
        E(
            "after_hours_menu", "afterHoursMenu", OCI.AutoAttendantReadMenu16,
            is_complex=True, is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    business_hours: str = Field(type=str, required=False, mutable=False)
    holiday_schedule_name: str = Field(type=str, required=False, mutable=False)
    extension_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_entries: str = Field(type=str, required=True, mutable=False)
    business_hours_menu: "OCI.AutoAttendantReadMenu16" = Field(
        type=OCI.AutoAttendantReadMenu16, required=True, mutable=False,
    )
    after_hours_menu: "OCI.AutoAttendantReadMenu16" = Field(
        type=OCI.AutoAttendantReadMenu16, required=True, mutable=False,
    )


class GroupAutoAttendantGetInstanceResponse17sp1(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest17sp1()``.

    Contains the service profile information.

    Attributes:
        service_instance_profile: serviceInstanceProfile
        enable_video: enableVideo
        business_hours: businessHours
        holiday_schedule: holidaySchedule
        extension_dialing_scope: extensionDialingScope
        name_dialing_scope: nameDialingScope
        name_dialing_entries: nameDialingEntries
        business_hours_menu: businessHoursMenu
        after_hours_menu: afterHoursMenu
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17, is_complex=True, is_required=True,
        ),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("extension_dialing_scope", "extensionDialingScope", str, is_required=True),
        E("name_dialing_scope", "nameDialingScope", str, is_required=True),
        E("name_dialing_entries", "nameDialingEntries", str, is_required=True),
        E(
            "business_hours_menu", "businessHoursMenu", OCI.AutoAttendantReadMenu16,
            is_complex=True, is_required=True,
        ),
        E(
            "after_hours_menu", "afterHoursMenu", OCI.AutoAttendantReadMenu16,
            is_complex=True, is_required=True,
        ),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile17" = Field(
        type=OCI.ServiceInstanceReadProfile17, required=True, mutable=False,
    )
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    extension_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_entries: str = Field(type=str, required=True, mutable=False)
    business_hours_menu: "OCI.AutoAttendantReadMenu16" = Field(
        type=OCI.AutoAttendantReadMenu16, required=True, mutable=False,
    )
    after_hours_menu: "OCI.AutoAttendantReadMenu16" = Field(
        type=OCI.AutoAttendantReadMenu16, required=True, mutable=False,
    )


class GroupAutoAttendantGetInstanceResponse20(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest20()``.

    Contains the service profile information.  The following elements are only used in AS
    data mode: type, use AutoAttendantType.BASIC in HSS mode.  holidayMenu.  The following
    elements are only valid for Standard Auto Attendants: holidayMenu

    Attributes:
        service_instance_profile: serviceInstanceProfile
        type: type
        first_digit_timeout_seconds: firstDigitTimeoutSeconds
        enable_video: enableVideo
        business_hours: businessHours
        holiday_schedule: holidaySchedule
        extension_dialing_scope: extensionDialingScope
        name_dialing_scope: nameDialingScope
        name_dialing_entries: nameDialingEntries
        business_hours_menu: businessHoursMenu
        after_hours_menu: afterHoursMenu
        holiday_menu: holidayMenu
        network_class_of_service: networkClassOfService
    """

    _ELEMENTS = (
        E(
            "service_instance_profile", "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1, is_complex=True, is_required=True,
        ),
        E("type", "type", str, is_required=True),
        E("first_digit_timeout_seconds", "firstDigitTimeoutSeconds", int, is_required=True),
        E("enable_video", "enableVideo", bool, is_required=True),
        E("business_hours", "businessHours", OCI.TimeSchedule, is_complex=True),
        E("holiday_schedule", "holidaySchedule", OCI.HolidaySchedule, is_complex=True),
        E("extension_dialing_scope", "extensionDialingScope", str, is_required=True),
        E("name_dialing_scope", "nameDialingScope", str, is_required=True),
        E("name_dialing_entries", "nameDialingEntries", str, is_required=True),
        E(
            "business_hours_menu", "businessHoursMenu", OCI.AutoAttendantReadMenu20,
            is_complex=True, is_required=True,
        ),
        E(
            "after_hours_menu", "afterHoursMenu", OCI.AutoAttendantReadMenu20,
            is_complex=True, is_required=True,
        ),
        E("holiday_menu", "holidayMenu", OCI.AutoAttendantReadMenu20, is_complex=True),
        E("network_class_of_service", "networkClassOfService", str),
    )

    service_instance_profile: "OCI.ServiceInstanceReadProfile19sp1" = Field(
        type=OCI.ServiceInstanceReadProfile19sp1, required=True, mutable=False,
    )
    type: str = Field(type=str, required=True, mutable=False)
    first_digit_timeout_seconds: int = Field(type=int, required=True, mutable=False)
    enable_video: bool = Field(type=bool, required=True, mutable=False)
    business_hours: "OCI.TimeSchedule" = Field(
        type=OCI.TimeSchedule, required=False, mutable=False,
    )
    holiday_schedule: "OCI.HolidaySchedule" = Field(
        type=OCI.HolidaySchedule, required=False, mutable=False,
    )
    extension_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_scope: str = Field(type=str, required=True, mutable=False)
    name_dialing_entries: str = Field(type=str, required=True, mutable=False)
    business_hours_menu: "OCI.AutoAttendantReadMenu20" = Field(
        type=OCI.AutoAttendantReadMenu20, required=True, mutable=False,
    )
    after_hours_menu: "OCI.AutoAttendantReadMenu20" = Field(
        type=OCI.AutoAttendantReadMenu20, required=True, mutable=False,
    )
    holiday_menu: "OCI.AutoAttendantReadMenu20" = Field(
        type=OCI.AutoAttendantReadMenu20, required=False, mutable=False,
    )
    network_class_of_service: str = Field(type=str, required=False, mutable=False)


class UserCommPilotExpressSRGetResponse13mp16(OCIResponse):
    """
    Response to the ``UserCommPilotExpressSRGetRequest13mp16()``.


    Attributes:
        profile: profile
        available_in_office: availableInOffice
        available_out_of_office: availableOutOfOffice
        busy: busy
        unavailable: unavailable
    """

    _ELEMENTS = (
        E("profile", "profile", str),
        E(
            "available_in_office", "availableInOffice",
            OCI.CommPilotExpressSRAvailableInOffice, is_complex=True, is_required=True,
        ),
        E(
            "available_out_of_office", "availableOutOfOffice",
            OCI.CommPilotExpressSRAvailableOutOfOffice, is_complex=True, is_required=True,
        ),
        E("busy", "busy", OCI.CommPilotExpressSRBusy, is_complex=True, is_required=True),
        E(
            "unavailable", "unavailable", OCI.CommPilotExpressSRUnavailable,
            is_complex=True, is_required=True,
        ),
    )

    profile: str = Field(type=str, required=False, mutable=False)
    available_in_office: "OCI.CommPilotExpressSRAvailableInOffice" = Field(
        type=OCI.CommPilotExpressSRAvailableInOffice, required=True, mutable=False,
    )
    available_out_of_office: "OCI.CommPilotExpressSRAvailableOutOfOffice" = Field(
        type=OCI.CommPilotExpressSRAvailableOutOfOffice, required=True, mutable=False,
    )
    busy: "OCI.CommPilotExpressSRBusy" = Field(
        type=OCI.CommPilotExpressSRBusy, required=True, mutable=False,
    )
    unavailable: "OCI.CommPilotExpressSRUnavailable" = Field(
        type=OCI.CommPilotExpressSRUnavailable, required=True, mutable=False,
    )


# fmt: on
# end
